У меня есть таблица Hbase в вышеуказанном формате:Как наложить hbase на улей?
key : userId#country
column family: k
columns: date#visits, visits
Как я сделать улей таблицу, которая выглядит следующим образом:
userId, date, country, visits
я попытался поиграться свой путь вокруг с отображением столбцов и так далеко мне удалось это сделать только:
CREATE EXTERNAL TABLE hbase_table(key string, visits int)
ROW FORMAT DELIMITED
COLLECTION ITEMS TERMINATED BY '#'
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,k:visits")
TBLPROPERTIES ("hbase.table.name" = "kpi");
Я работал над этим часами и не имел большого прогресса. Может ли кто-нибудь указать мне в правильном направлении?
Я узнал, как отобразить ключ Hbase в улей подряд, это не совсем то, что я хочу, но это помогает ...:
CREATE EXTERNAL TABLE hbase_table(key struct<id:string, country:string>, visits int)
ROW FORMAT DELIMITED
COLLECTION ITEMS TERMINATED BY '#'
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,k:visits")
TBLPROPERTIES ("hbase.table.name" = "kpi");
Можете ли вы рассказать немного больше о том, какая ошибка вы нажимаете? –
Я не получаю никаких ошибок, я не могу этого сделать. Код, который я поставил, состоит в том, чтобы отобразить весь ключ и один из столбцов. Я продолжаю разыскивать Интернет, чтобы найти рабочий пример, как сопоставить имя столбца в столбце куста и часть ключа строки в другой столбец. –
Но когда вы говорите, что не можете этого сделать, то где это происходит. Сбой при вводе инструкции CREATE? Или оператор создания работает нормально, но тогда вы не получаете никаких результатов? –