Как вставить вывод сценария свиньи во внешние таблицы улья, используя динамически сгенерированное значение раздела?

Я написал сценарий свиньи, который будет генерировать кортежи таблицы улья. Я пытаюсь сбросить результаты в определенный раздел в HDFS, где куст хранит дату таблицы. На данный момент значение раздела, которое я использую, представляет собой строковое значение временной метки, которое генерируется внутри pigscript. Я должен использовать это строковое значение временной метки для хранения результатов сценария свиньи, но я понятия не имею, как это сделать. Любая помощь будет принята с благодарностью.


person Aditya Tangirala    schedule 06.07.2016    source источник


Ответы (1)


Если я правильно понимаю, вы читаете некоторые данные из раздела таблицы HIVE и хотите сохранить их в другие разделы таблицы HIVE, верно? Раздел HIVI (с точки зрения HDFS) — это просто подпапка, имя которой строится следующим образом: fieldname_the_partitioning_is_based_on=value Например, у вас есть раздел даты, который выглядит так: hdfs_to_your_hive_table/date=20160607/

Итак, все, что вам нужно, это указать это место вывода в инструкции store.

СОХРАНЯЙТЕ мои данные В '$HIVE_DB.$TABLE', ИСПОЛЬЗУЯ org.apache.hive.hcatalog.pig.HCatStorer('date=$today');

person kecso    schedule 07.07.2016