Как экспортировать таблицу Hive в файл CSV, включая заголовок? - PullRequest
0 голосов
/ 03 мая 2018

Я использовал этот запрос Hive для экспорта таблицы в файл CSV.

hive -f mysql.sql

row format delimited fields terminated by ','
select * from Mydatabase,Mytable limit 100"

cat /LocalPath/* > /LocalPath/table.csv

Однако он не включает имена столбцов таблицы. Как экспортировать в csv имена столбцов?

show tablename ?

Ответы [ 2 ]

0 голосов
/ 04 мая 2018

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

hive -S --hiveconf hive.cli.print.header=true --hiveconf hive.resultset.use.unique.column.names=false --database Mydatabase -e 'select * from Mytable limit 0;' > /LocalPath/table.csv

Пост, в котором вы можете запустить фактическую часть извлечения данных, кроме этого времени, не забудьте добавить к csv:

cat /LocalPath/* <b><i>>></i></b> /LocalPath/table.csv ## From your question with >> for append

0 голосов
/ 03 мая 2018

Вы должны добавить set hive.cli.print.header=true; перед вашим запросом выбора, чтобы получить имена столбцов в качестве первой строки вашего вывода. Вывод будет выглядеть как Mytable.col1, Mytable.col2 ....

Если вам не нужно имя таблицы с именами столбцов, используйте set hive.resultset.use.unique.column.names=false;. Первая строка вашего вывода будет выглядеть как col1, col2 ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...