Я хотел бы выполнить несколько запросов Hive, предпочтительно параллельно, а не последовательно, и сохранить результаты каждого запроса в файл CSV.Например, query1
вывод в csv1
, query2
вывод в csv2
и т. Д. Я бы запустил эти запросы после окончания работы с целью анализа результатов в течение следующего рабочего дня.Я заинтересован в использовании сценария оболочки bash, потому что тогда я смогу настроить задачу cron
для ее запуска в определенное время суток.
Я знаю, как сохранить результатыHiveQL-запрос в CSV-файле, один запрос за раз.Я делаю это примерно так:
hive -e
"SELECT * FROM db.table;"
" | tr "\t" "," > example.csv;
Проблема с вышесказанным заключается в том, что мне нужно следить за окончанием процесса и вручную запускать следующий запрос.Я также знаю, как последовательно выполнять несколько запросов, например так:
hive -f hivequeries.hql
Есть ли способ объединить эти два метода?Есть ли более разумный способ достижения моих целей?
Предпочтение отдается кодам, поскольку я недостаточно хорошо знаю bash, чтобы написать его с нуля.
Этот вопрос является вариантом другого вопроса: Как вывести результаты запроса HiveQL в CSV?