Генерация паркетных файлов с помощью улья

Я пытаюсь сгенерировать некоторые паркетные файлы с помощью улья, для этого я загрузил обычную таблицу улья из некоторых файлов .tbl с помощью этой команды в улье:

СОЗДАТЬ ТАБЛИЦУ REGION (R_REGIONKEY BIGINT, R_NAME STRING, R_COMMENT STRING)

РАЗДЕЛЕННЫЕ ПОЛЯ ФОРМАТА СТРОКИ, ОСТАНОВЛЕННЫЕ НА '|' СОХРАНЯЕТСЯ КАК ТЕКСТФАЙЛ расположение '/ tmp / tpch-generate';

После этого я просто выполняю эти 2 строки:

создать таблицу parquet_reion КАК регион ХРАНИТЬ КАК ПАРКЕТ;

вставить в parquet_region select * from region;

Но когда я проверяю вывод, сгенерированный в HDFS, я не нахожу ни одного файла .parquet, я могу найти файлы с именами, такими как от 0000_0 до 0000_21, и сумма их размеров намного больше, чем исходный файл tbl.

Что я делаю неправильно?


person Mário Rodrigues    schedule 09.05.2017    source источник


Ответы (1)


Оператор Insert не создает файл с расширением, но это паркетные файлы.

Вы можете использовать DESCRIBE FORMATTED <table> для отображения информации о таблице.

hive> DESCRIBE FORMATTED <table_name>

Дополнительное примечание. Вы также можете создать новую таблицу из исходной таблицы, используя следующий запрос:

CREATE TABLE new_test row STORED AS PARQUET AS select * from source_table

Он создаст новую таблицу в формате паркета и скопирует структуру, а также данные.

person Sandeep Singh    schedule 09.05.2017
comment
Спасибо за ваш ответ. Но почему сумма сгенерированных файлов больше, чем в исходном файле? не должно быть меньше выхода паркета? В моем случае исходный файл tbl имеет размер ~ 230 МБ, сгенерированные файлы с 0000_0 до 0000_21 имеют 98 МБ каждый, намного больше. - person Mário Rodrigues; 09.05.2017
comment
Он не должен быть больше оригинального файла. вы можете вставлять несколько раз в одну и ту же таблицу. Не могли бы вы повторить воссоздание таблицы. пожалуйста, оставьте его, удалите все старые файлы, а затем создайте заново. - person Sandeep Singh; 09.05.2017
comment
Я удалил файлы и отбросил каждую таблицу и даже базу данных, и сделал все это снова, но результат был тот же - person Mário Rodrigues; 09.05.2017
comment
не могли бы вы опубликовать вывод ANALYZE TABLE tablename? - person Sandeep Singh; 09.05.2017