Execução de scripts do Spark SQL por meio da API StartJobRun - Amazon EMR

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Execução de scripts do Spark SQL por meio da API StartJobRun

As versões 6.7.0 e posteriores do Amazon EMR no EKS incluem um driver de trabalho do Spark SQL para que você possa executar scripts do Spark SQL por meio da API StartJobRun. Você pode fornecer arquivos de ponto de entrada SQL para executar consultas do Spark SQL diretamente no Amazon EMR no EKS com a API StartJobRun, sem a necessidade de realizar modificações nos scripts do Spark SQL existentes. A tabela a seguir lista os parâmetros do Spark que têm suporte com os trabalhos do Spark SQL por meio da API StartJobRun.

Você pode escolher entre os parâmetros do Spark apresentados a seguir para enviar para um trabalho do Spark SQL. Use esses parâmetros para substituir as propriedades padrão do Spark.

Opção Descrição

--name NAME

Nome do aplicativo
--jars JARS Lista separada por vírgulas de arquivos em JARs a serem inclusos no driver e no caminho de classe de execução.
--packages Lista separada por vírgulas de coordenadas do Maven de arquivos em JARs a serem inclusas nos caminhos de classe do driver e do executor.
--exclude-packages Lista separada por vírgulas de groupId:artifactId, para excluir ao resolver as dependências fornecidas em --packages para evitar conflitos de dependência.
--repositories Lista separada por vírgulas de repositórios remotos adicionais para pesquisar as coordenadas do Maven fornecidas com --packages.
--files FILES Lista separada por vírgulas de arquivos a serem colocados no diretório de trabalho de cada executor.
--conf PROP=VALUE Propriedade de configuração do Spark.
--properties-file FILE Caminho para um arquivo do qual as propriedades extras serão carregadas.
--driver-memory MEM Memória para o driver. O padrão é de 1.024 MB.
--driver-java-options Opções extras do Java a serem transferidas para o driver.
--driver-library-path Entradas extras de caminhos da biblioteca a serem transferidas para o driver.
--driver-class-path Entradas extras de caminhos de classe a serem transferidas para o driver.
--executor-memory MEM Memória por executor. O padrão é de 1 GB.
--driver-cores NUM Número de núcleos usados ​​pelo driver.
--total-executor-cores NUM Total de núcleos para todos os executores.
--executor-cores NUM Número de núcleos usados ​​por cada executor.
--num-executors NUM Número de executores para iniciar.
-hivevar <key=value> Substituição de variável para a aplicação dos comandos do Hive, por exemplo, -hivevar A=B.
-hiveconf <property=value> Valor a ser usado para a propriedade em questão.

Para um trabalho do Spark SQL, crie um arquivo start-job-run-request.json e especifique os parâmetros obrigatórios para sua execução de trabalho, como no seguinte exemplo:

{ "name": "myjob", "virtualClusterId": "123456", "executionRoleArn": "iam_role_name_for_job_execution", "releaseLabel": "emr-6.7.0-latest", "jobDriver": { "sparkSqlJobDriver": { "entryPoint": "entryPoint_location", "sparkSqlParameters": "--conf spark.executor.instances=2 --conf spark.executor.memory=2G --conf spark.executor.cores=2 --conf spark.driver.cores=1" } }, "configurationOverrides": { "applicationConfiguration": [ { "classification": "spark-defaults", "properties": { "spark.driver.memory":"2G" } } ], "monitoringConfiguration": { "persistentAppUI": "ENABLED", "cloudWatchMonitoringConfiguration": { "logGroupName": "my_log_group", "logStreamNamePrefix": "log_stream_prefix" }, "s3MonitoringConfiguration": { "logUri": "s3://my_s3_log_location" } } } }