извлечение пути s3 из полезной нагрузки в задании AWS glue pythonshell - PullRequest
1 голос
/ 21 сентября 2019

У меня есть работа с pythonshell внутри клея AWS, которая должна загрузить файл по пути 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)

Мой вопрос: как мне извлечь эти пути s3 из полезной нагрузки внутри AWS?Приклеить работу pythonshell, которая приходит через boto3?Есть ли какой-нибудь обработчик, который нам нужно написать аналогично AWS Lambda?

Пожалуйста, предложите.

1 Ответ

1 голос
/ 22 сентября 2019

Проверьте документацию .Все, что вам нужно, здесь.

Вы можете использовать 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']
...