启动集成了 Apache Spark 的 Amazon Redshift 的 Spark 应用程序 - Amazon EMR

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

启动集成了 Apache Spark 的 Amazon Redshift 的 Spark 应用程序

要使用与 EMR Serverless 6.9.0 的集成,你必须在 Spark 作业中传递所需的 Spark-Redshift 依赖关系。用于包含--jars与 Redshift 连接器相关的库。要查看 --jars 选项支持的其他文件位置,请参阅 Apache Spark 文档的 Advanced Dependency Management(高级依赖项管理)部分。

  • spark-redshift.jar

  • spark-avro.jar

  • RedshiftJDBC.jar

  • minimal-json.jar

Amazon 6.10.0 及更高EMR版本不需要minimal-json.jar依赖关系,并且默认情况下会自动将其他依赖项安装到每个集群。以下示例显示了如何使用适用于 Apache Spark 的 Amazon Redshift 集成启动 Spark 应用程序。

Amazon EMR 6.10.0 +

在EMR无服务器版本 6.10.0 及更高版本上使用 Apache Spark 的 Amazon Redshift 集成,在亚马逊无服务器EMR上启动 Spark 作业。

spark-submit my_script.py
Amazon EMR 6.9.0

要在 EMR Serverless 版本 6.9.0 上通过与 Apache Spark 集成 Apache Spark 的 Amazon Redshift 在亚马逊无服务器EMR上启动 Spark 作业,请使用以下示例--jars所示的选项。请注意,--jars选项中列出的路径是JAR文件的默认路径。

--jars /usr/share/aws/redshift/jdbc/RedshiftJDBC.jar, /usr/share/aws/redshift/spark-redshift/lib/spark-redshift.jar, /usr/share/aws/redshift/spark-redshift/lib/spark-avro.jar, /usr/share/aws/redshift/spark-redshift/lib/minimal-json.jar
spark-submit \ --jars /usr/share/aws/redshift/jdbc/RedshiftJDBC.jar,/usr/share/aws/redshift/spark-redshift/lib/spark-redshift.jar,/usr/share/aws/redshift/spark-redshift/lib/spark-avro.jar,/usr/share/aws/redshift/spark-redshift/lib/minimal-json.jar \ my_script.py