使用适用于 Apache Spark 的 Amazon Redshift 集成启动 Spark 应用程序 - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用适用于 Apache Spark 的 Amazon Redshift 集成启动 Spark 应用程序

对于 Amazon EMR 版本 6.4 至 6.9,您必须使用 --jars--packages 选项来指定要使用以下哪个 JAR 文件。--jars 选项指定存储在本地、HDFS 中或使用 HTTP/S 的依赖项。要查看 --jars 选项支持的其他文件位置,请参阅 Spark 文档中的高级依赖管理--packages 选项指定存储在公共 Maven 存储库中的依赖项。

  • spark-redshift.jar

  • spark-avro.jar

  • RedshiftJDBC.jar

  • minimal-json.jar

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

Amazon EMR 6.10.0 +

以下示例显示了如何在 Amazon EMR 版本 6.10 和更高版本上使用 spark-redshift 连接器启动 Spark 应用程序。

spark-submit my_script.py
Amazon EMR 6.4.0 - 6.9.x

要在 Amazon EMR 版本 6.4 至 6.9 上通过 spark-redshift 连接器启动 Spark 应用程序,必须使用 --jars--packages 选项,如以下例所示。请注意,--jars 选项列出的路径是 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