sql >> Database >  >> RDS >> Mysql

AWS EMR PySpark verbinden met mysql

Als u een Spark Job op Amazon EMR 3.x of EMR 4.x wilt uitvoeren, moet u de volgende dingen doen:

1) U kunt de spark-defaults.conf . vermelden eigenschappen tijdens het bootstrappen, d.w.z. u kunt de configuratie van Driver Classpath . wijzigen en Uitvoerder Classpath property en ook maximizeResourceAllocation (Vraag indien nodig om meer informatie in opmerkingen.) docs

2) U moet alle vereiste potten downloaden, d.w.z. (mysql-connector.jar en mariadb-connector.jar) in uw geval MariaDB- en MySQL-connector JDBC-jars naar alle klassenpadlocaties zoals Spark, Yarn en Hadoop op alle Nodes of het is MASTER, CORE of TASK (Spark On Yarn-scenario dekt het meest) bootstrap-scripts docs

3) En als uw Spark Job alleen communiceert van Driver node naar uw database, dan heeft u deze misschien alleen nodig door --jars te gebruiken en geeft je geen uitzondering en werkt prima.

4) Beveel je ook aan om Master te proberen als yarn-cluster in plaats van lokaal of garen-client

In jouw geval, als je MariaDB of MySQL gebruikt, kopieer dan je jars op $SPARK_HOME/lib , $HADOOP_HOME/lib enz. op elk knooppunt van uw cluster en probeer het vervolgens.

Later kunt u Bootstrap-acties . gebruiken om uw potten op alle knooppunten te kopiëren tijdens de tijd van het maken van clusters.

Reageer hieronder voor meer informatie.




  1. Voeg de tweede kolomwaarde samen als de eerste kolomwaarde hetzelfde is

  2. Hoe stel ik de MySQL enum datatype standaardwaarde in op 'Nee'?

  3. MySQL:Selecteer Concat van strings en Lengte van resulterende Concat

  4. Wat is het verschil tussen pakket com.mysql.jdbc.PreparedStatement; en java.sql.PreparedStatement?