#hive #hiveql
#улей #hiveql
Вопрос:
Я создаю процесс A, который ежедневно вставляет записи в разделенную таблицу улья. Как только вставка таблицы будет завершена, я хочу запустить другой процесс B.Процесс B присутствует на другом сервере. Я планирую проверить запись в разделе за текущий день, чтобы увидеть, завершен ли процесс вставки улья с сервера B. В hive запись в раздел выполняется непосредственно перед выполнением запроса или после завершения процесса запроса.
Рассмотрим таблицу t, в которой есть раздел ‘date’.
показывать разделы t
дата =2018-01-01
дата=2018-01-02
Когда куст.hql запускается для date = 2018-01-03 , и при выполнении, когда задается «показать раздел», будет ли выдана новая запись в разделе или только после завершения процесса появится новая запись в разделе?
Комментарии:
1. Новый ключ / значения раздела создаются только при наличии данных для соответствующих разделов.
2. Согласен. Но в какой момент запись раздела будет отражена в metastore. После завершения процесса вставки или до этого?
3. Я думаю, что существует зависимость или раздел, чтобы убедиться, что загрузка данных завершена, это не очень хорошее решение, лучше было бы обернуть sql для загрузки данных в скрипт и создать файл триггера в конечном процессе.
4. После того, как процесс записи зафиксирован (сброшен) в HDFS