Si desea ejecutar cualquier Spark Job en Amazon EMR 3.x o EMR 4.x, debe hacer lo siguiente:
1) Puedes mencionar el spark-defaults.conf propiedades durante el arranque, es decir, puede cambiar la configuración de Driver Classpath y Ruta de clase del ejecutor propiedad y también maximizeResourceAllocation (Si lo necesita, solicite más información en los comentarios). docs
2) Debe descargar todos los archivos jar requeridos, es decir, (mysql-connector.jar y mariadb-connector.jar), en su caso, los archivos JDBC del conector MariaDB y MySQL en todas las ubicaciones de classpath como Spark, Yarn y Hadoop en todos los nodos. es MAESTRO, BÁSICO o TAREA (Spark On Yarn Scenario cubre la mayor parte) documentos de scripts de arranque
3) Y si su Spark Job se comunica solo desde el nodo del controlador a su base de datos, es posible que solo necesite usar --jars y no le dará una excepción y funciona bien.
4) También te recomiendo que pruebes Master como yarn-cluster en lugar de local o hilo-cliente
En su caso, si usa MariaDB o MySQL, copie sus archivos jar en $SPARK_HOME/lib , $HADOOP_HOME/lib etc. en todos y cada uno de los nodos de su clúster y luego pruébelo.
Más adelante puedes usar acciones de Bootstrap para copiar sus jars en todos los nodos durante el tiempo de creación del clúster.
Comente a continuación para obtener más información.