我在AWS胶内有一个pythonshell作业,需要从s3路径下载文件。该s3路径位置是一个变量,因此将作为start_run_job
调用中的有效负载进入胶粘作业,如下所示:
import boto3
payload = {'s3_target_file':s3_TARGET_FILE_PATH,
's3_test_file': s3_TEST_FILE_PATH}
job_def = dict(
JobName=MY_GLUE_PYTHONSHELL_JOB,
Arguments=payload,
WorkerType='Standard',
NumberOfWorkers=2,
)
response = glue.start_job_run(**job_def)
我的问题是,如何从通过boto3来的AWS Glue pythonshell作业中的有效负载中检索那些s3路径?我们需要编写类似于AWS Lambda的任何处理程序吗?
请提出建议。
答案 0 :(得分:1)
检查docimentation。您需要的就是这里。
您可以按以下方式使用getResolvedOptions
:
import sys
from awsglue.utils import getResolvedOptions
args = getResolvedOptions(sys.argv,
['JOB_NAME',
'day_partition_key',
'hour_partition_key',
'day_partition_value',
'hour_partition_value'])
print "The day partition key is: ", args['day_partition_key']
print "and the day partition value is: ", args['day_partition_value']