Mysql
 sql >> Datenbank >  >> RDS >> Mysql

AWS EMR PySpark verbindet sich mit mysql

Wenn Sie einen Spark-Job auf Amazon EMR 3.x oder EMR 4.x ausführen möchten, müssen Sie Folgendes tun:

1) Sie können die spark-defaults.conf erwähnen Eigenschaften beim Bootstrapping, d. h. Sie können die Konfiguration des Treiberklassenpfads ändern und Executor-Klassenpfad -Eigenschaft und auch maximizeResourceAllocation (Fragen Sie bei Bedarf in den Kommentaren nach weiteren Informationen.) docs

2) Sie müssen alle erforderlichen JAR-Dateien herunterladen, d. H. (mysql-connector.jar und mariadb-connector.jar) in Ihrem Fall MariaDB- und MySQL-Connector-JDBC-JARs zu allen Classpath-Speicherorten wie Spark, Yarn und Hadoop auf allen Knoten ist MASTER, CORE oder TASK (Das Spark-on-Yarn-Szenario deckt die meisten ab) Bootstrap-Skriptdokumentation

3) Und wenn Ihr Spark-Job nur vom Treiberknoten zu Ihrer Datenbank kommuniziert, müssen Sie ihn möglicherweise nur mit --jars verwenden und gibt Ihnen keine Ausnahme und funktioniert gut.

4) Empfehlen Sie auch, Master als Garn-Cluster auszuprobieren statt lokal oder Yarn-Client

Wenn Sie in Ihrem Fall MariaDB oder MySQL verwenden, kopieren Sie entweder Ihre JAR-Dateien nach $SPARK_HOME/lib , $HADOOP_HOME/lib usw. auf jedem einzelnen Knoten Ihres Clusters und probieren Sie es dann aus.

Später können Sie Bootstrap-Aktionen verwenden um Ihre JAR-Dateien während der Cluster-Erstellung auf alle Knoten zu kopieren.

Bitte kommentieren Sie unten für weitere Informationen.