2015-05-17 2 views
-1

У меня есть таблица с именем "HISTORY" в HBase, имеющей семейство столбцов "VDS" и имена столбцов ROWKEY, ID, START_TIME, END_TIME, VALUE. Я использую распределение Cloudera Hadoop. Я хочу предоставить интерфейс SQL для таблицы HBase с помощью Impala. Чтобы сделать это, мы должны создать соответствующую внешнюю таблицу в улье? Итак, как создать таблицу внешнего улья, указывающую на эту таблицу HBase?Создать таблицу внешнего улья, указывающую на таблицу HBase

ответ

1

Выполните следующий код в улей редакторе запросов:

CREATE EXTERNAL TABLE IF NOT EXISTS HISTORY 
(
    ROWKEY STRING, 
    ID STRING, 
    START_TIME STRING, 
    END_TIME STRING, 
    VALUE DOUBLE 
) 
ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' 
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' 
WITH SERDEPROPERTIES 
(
    "hbase.columns.mapping" = ":key,VDS:ID,VDS:START_TIME,VDS:END_TIME,VDS:VALUE" 
) 
TBLPROPERTIES("hbase.table.name" = "HISTORY"); 

Не забудьте обновить Impala метаданных после внешней таблицы Создание с помощью следующей команды: Баш

echo "INVALIDATE METADATA" | impala-shell; 
Смежные вопросы