如何使用DataProcPySparkOperator运算符访问任务中传递的参数值?

如何使用DataProcPySparkOperator运算符访问任务中传递的参数值?,pyspark,airflow,Pyspark,Airflow,我想将参数传递给气流Dag中的特定任务,并在pyspark代码中访问它。以下是任务定义: run_cmd_arg_test_job= DataProcPySparkOperator( task_id='test', main='gs://dataprocessing_scripts/testArg.py', arguments=['2018-05-07'], job_name='test', dataproc_cluster='smoke-cluster-

我想将参数传递给气流Dag中的特定任务,并在pyspark代码中访问它。以下是任务定义:

run_cmd_arg_test_job= DataProcPySparkOperator(
    task_id='test',
    main='gs://dataprocessing_scripts/testArg.py',
    arguments=['2018-05-07'],
    job_name='test',
    dataproc_cluster='smoke-cluster-{{ ds_nodash }}',
    gcp_conn_id='google_cloud_default',
    region='global'
)

如何访问主文件“gs://dataprocessing\u scripts/testArg.py”中“arguments”属性的值?

您必须使用
sys.argv[1],sys.argv[2]
sys.argv[0]
将是文件名本身 而
sys.argv[1]
将是“2018-05-07”
另外,不要忘记导入sys

以便能够在pyspark代码中使用sys.argv访问参数。请建议是否有更好的方法?嗨,你能找到另一种方法吗?