2015-10-05 4 views
1

Мне нужно нанести таблицу Hive на HBase. Мой Улей таблица состоит из трех столбцов имя-строки, степень строки, главным струннойКак сопоставить таблицу Hive в HBase?

Я не знаю, как заполнить в пустой (??)

CREATE TABLE hbase_table(??, ??, ??, ...) 
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' 
WITH SERDEPROPERTIES ("hbase.columns.mapping" = "??") 
TBLPROPERTIED ("hbase.table.name" = "hbase_table"); 

ответ

1

Мы можем использовать следующий запрос: -

CREATE TABLE hbase_table(key int,name string,degree string,major string) 
    STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' 
    WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf1:val1,cf1:val2,cf1:val3") 
    TBLPROPERTIED ("hbase.table.name" = "hbase_table"); 
+0

После создания таблицы HBase, как показано в вашем ответе, я выполнил «INSERT OVERWRITE TABLE hbase_table SELECT * FROM hive_table (которая состоит из трех столбцов - строка имени, строка степени, основная строка»). Это приводит к ошибке, например, в таблице insclause-0 4 столбца, но запрос имеет 3 столбца. Как решить эту проблему? –

+0

Дайте некоторое постоянное число в вашем запросе на куст. Например, выберите 100, имя, степень, майор из hive_table. – madhu

+0

вы получили это. – madhu

0

Вам нужно создать таблицу с одним и может иметь 3 столбца внутри семейства столбцов. Обратитесь к руководству Hbase для команды создания таблицы.

+3

Можете ли вы дать мне пример? –

Смежные вопросы