Автоматизация Hive Activity с использованием aws
Я хотел бы автоматизировать мой скрипт улья каждый день, для этого у меня есть опция, которая представляет собой конвейер данных. Но проблема в том, что я экспортирую данные из динамо-db в s3 и с помощью скрипта улья я манипулирую этими данными. Я даю этот ввод и вывод в hive-script, где и начинается проблема, потому что hive-активность должна иметь ввод и вывод, но я должен дать их в файле сценария.
Я пытаюсь найти способ автоматизировать этот сценарий улья и жду каких-то идей?
Ура,
1 ответ
Решение
Вы можете отключить постановку в Hive Activity для запуска любого произвольного Hive Script.
stage = false
Сделать что-то вроде:
{
"name": "DefaultActivity1",
"id": "ActivityId_1",
"type": "HiveActivity",
"stage": "false",
"scriptUri": "s3://baucket/query.hql",
"scriptVariable": [
"param1=value1",
"param2=value2"
],
"schedule": {
"ref": "ScheduleId_l"
},
"runsOn": {
"ref": "EmrClusterId_1"
}
},
Другой альтернативой активности Hive является использование действия EMR, как в следующем примере:
{
"schedule": {
"ref": "DefaultSchedule"
},
"name": "EMR Activity name",
"step": "command-runner.jar,hive-script,--run-hive-script,--args,-f,s3://bucket/path/query.hql",
"runsOn": {
"ref": "EmrClusterId"
},
"id": "EmrActivityId",
"type": "EmrActivity"
}