Нечитаемые результаты запросов beeline

#hive #impala #beeline

Вопрос:

Окружающая среда

Beeline версии 1.1.0-cdh5.13.0 от Apache Hive

Контекст

Мне нужно выполнить несколько инструкций select с beeline и обработать результаты позже.

Однако вывод beeline не читается, даже не «обрабатывается».

Код

Я выполняю следующую команду:

 beeline -u $IMPALA_URL -n writer -p writer --outputformat=tsv2 -e "select * from bas_fca.table_info"  > results 2> errors
 

Выход

Содержимое results файла:

 -----------------------------
table   type    creation_date
 

Содержимое errors файла:

 2021-06-14 14:39:03,580 WARN  [main] mapreduce.TableMapReduceUtil: The hbase-prefix-tree module jar containing PrefixTreeCodec is not present.  Continuing without it.
scan complete in 2ms
Connecting to jdbc:hive2://mynodes:21050/
Connected to: Impala (version 2.10.0-cdh5.13.0)
Driver: Hive JDBC (version 1.1.0-cdh5.13.0)
Transaction isolation: TRANSACTION_REPEATABLE_READ
cu_ddi.activ_from_api
cu_ddi.cumul_from_api
cu_ddi.data_from_api
cu_ddi.envoi_from_api
cu_ddi.inscript
cu_ddi.tmp
No rows selected (0.098 seconds)
Beeline version 1.1.0-cdh5.13.0 by Apache Hive
Closing: 0: jdbc:hive2://mynodes:21050/
 

Ожидаемый результат

При выполнении вышеуказанного запроса в Hue у меня есть следующие результаты:

 cu_ddi.activ_from_api   EXTERNAL_TABLE  2020-01-29 16:13:18 
cu_ddi.cumul_from_api   EXTERNAL_TABLE  2020-01-22 09:04:47 
cu_ddi.data_from_api    EXTERNAL_TABLE  2020-01-21 15:05:58 
cu_ddi.envoi_from_api   EXTERNAL_TABLE  2020-01-29 16:12:25 
cu_ddi.inscript EXTERNAL_TABLE  2019-10-25 11:35:03 
cu_ddi.tmp  MANAGED_TABLE   2020-01-21 15:06:40 
 

Вопросы

  • Почему у меня есть только имена таблиц ?
  • Почему неполные результаты записываются в STDERR ?
  • Как получить результаты в обрабатываемом формате (CSV и т.д.) ?

Правка 1

  • По просьбе Кошика Роя.

Выход из:

 beeline -u $IMPALA_URL -n writer -p writer -e "select * from bas_fca.table_info" > results

cat results

 -------- ------- ---------------- -- 
| table  | type  | creation_date  |
 -------- ------- ---------------- -- 
 -------- ------- ---------------- -- 
 

Комментарии:

1. Для дампа данных impala вы можете использовать inpala-shell -o output_file -q "query" . beeline должен работать с hive. Вывод — я не уверен в формате, который вы используете. можете ли вы использовать простой формат и посмотреть, как он себя ведет beeline -u jdbc:hive2://host_ip/ -f hive.hql >output.txt

2. @KoushikRoy Я добавил запрошенный вывод. Я загляну в раковину импалы. Я не знал, что он доступен в моем кластере.