Lanzamiento de una aplicación de Spark mediante la integración de Amazon Redshift para Apache Spark - Amazon EMR

Lanzamiento de una aplicación de Spark mediante la integración de Amazon Redshift para Apache Spark

En el caso de las versiones 6.4 a 6.9 de Amazon EMR, debe usar la opción --jars o --packages para especificar cuáles de los siguientes archivos JAR desea usar. La opción --jars especifica las dependencias almacenadas localmente, en HDFS o mediante HTTP/S. Para ver otras ubicaciones de archivos compatibles con la opción --jars, consulte la sección Advanced Dependency Management en la documentación de Spark. La opción --packages especifica las dependencias almacenadas en el repositorio público de Maven.

  • spark-redshift.jar

  • spark-avro.jar

  • RedshiftJDBC.jar

  • minimal-json.jar

Las versiones 6.10.0 y posteriores de Amazon EMR no requieren la dependencia minimal-json.jar e instalan automáticamente las demás dependencias en cada clúster de forma predeterminada. En los siguientes ejemplos se muestra cómo lanzar una aplicación de Spark con la integración de Amazon Redshift para Apache Spark.

Amazon EMR 6.10.0 +

En el siguiente ejemplo se muestra cómo lanzar una aplicación de Spark con el conector spark-redshift con las versiones 6.10 y posteriores de Amazon EMR.

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

Para lanzar una aplicación de Spark con el conector spark-redshift en las versiones 6.4 a 6.9 de Amazon EMR, debe usar la opción --jars o --packages, como se muestra en el siguiente ejemplo. Tenga en cuenta que las rutas enumeradas con la opción --jars son las rutas predeterminadas para los archivos 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