Como passar um argumento para uma vela de apresentar trabalho no fluxo de ar

0

Pergunta

Eu tenho que acionar um pyspark módulo de fluxo de ar usando um sparksubmit operador. Mas, o pyspark módulo precisa ter a faísca variável de sessão como um argumento. Eu tenho usado application_args para passar o parâmetro para o pyspark módulo. Mas, quando eu corri o dag a faísca enviar operador está a ficar falha e o parâmetro I passados considerado como Nenhum tipo de variável. Preciso saber como passar um argumento para um pyspark módulo acionado através de spark_submit_operator.

O DAG código abaixo:

from pyspark.sql import SparkSession
spark = SparkSession.builder.appName("PRJT").enableHiveSupport().getOrCreate()

spark_config = {
    'conn_id': 'spark_default',
    'driver_memory': '1g',
    'executor_cores': 1,
    'num_executors': 1,
    'executor_memory': '1g'
}

dag = DAG(
    dag_id="spark_session_prgm",
    default_args=default_args,
    schedule_interval='@daily',
    catchup=False)

spark_submit_task1 = SparkSubmitOperator(
    task_id='spark_submit_task1',
    application='/home/airflow_home/dags/tmp_spark_1.py',
    application_args=['spark'],
    **spark_config, dag=dag)

O código de exemplo tmp_spark_1.py programa:

airflow pyspark
2021-11-24 06:48:20
1
0

Depois de um pouco de depuração, eu encontrei a solução para o meu problema.

argparse é a razão pela qual ele não estava trabalhando. Em vez disso, eu usei sys com sys.argv[1] e ele faz o trabalho.

2021-12-02 13:07:10

Por favor, use as respostas apenas para postar soluções. Não faça perguntas.
Dharman

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................