Сбой интеграции улья - PullRequest
       53

Сбой интеграции улья

0 голосов
/ 20 февраля 2019

У меня есть строка, семейство столбцов h1 с двумя значениями id и name в таблице "hbase" "hbase_sample".Я хочу создать внешнюю таблицу в улье со столбцами идентификатора и имени, я не хочу писать строку или ключевое поле.

hive> create external table sample (id string,name string)
    > STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
    > with serdeproperties ("hbase.columns.mapping"=":key,h1:id,h1:name")
    > tblproperties("hbase.table.name"="sample_hbase");

FAILED: Execution Error, return code 1 from 
org.apache.hadoop.hive.ql.exec.DDLTask. java.lang.RuntimeException: 
MetaException(message:org.apache.hadoop.hive.serde2.SerDeException 
org.apache.hadoop.hive.hbase.HBaseSerDe: columns has 2 elements while 
hbase.columns.mapping has 3 elements (counting the key if implicit))

1 Ответ

0 голосов
/ 20 февраля 2019

Видя сообщение об ошибке, кажется, что HBase имеет три столбца, таких как rowid, id и name.Пока вы создаете таблицу улья с двумя столбцами, т. Е. Идентификатор и имя.Создайте таблицу Hive со всеми тремя столбцами и назовите ее таблицей table_name_temp.Как только там появится временная таблица, создайте таблицу из двух столбцов из временной таблицы в кусте, а затем удалите временную таблицу.Посмотрите, подходит ли вам это решение.

...