我正在尝试将hbase表中的两个列族移到组表中。我可以移动一个列的家庭,但我如何能移动另一个在同一个蜂巢表。
编辑:
我在下面移动了一个列家庭。
CREATE TABLE hbase_hive(key string, firstname string, age string)
STORED BY ‘org.apache.hadoop.hive.hbase.HBaseStorageHandler’
WITH SERDEPROPERTIES (“hbase.columns.mapping” = “id:firstname,id:age")
TBLPROPERTIES(“hbase.table.name” = “hl”);但我还有一个名为hb的列族,还有三个列。如何实现这一目标。
更新:
我还尝试在下面添加不同列族的列名,这是我的代码。
CREATE TABLE hbase_hive(key string, firstname string, age string, testname string)
STORED BY ‘org.apache.hadoop.hive.hbase.HBaseStorageHandler’
WITH SERDEPROPERTIES (“hbase.columns.mapping” = “id:firstname,id:age,pd:name")
TBLPROPERTIES(“hbase.table.name” = “hl”);但是我得到的结果是:
819215975 19391121 625678921720 NULL
819617215 19570622 625116365890 NULL
820333876 19640303 623221670810 NULL
824794938 19531211 625278010070 NULL
828093442 19420803 625284904860 NULL
828905771 19320209 625078004220 NULL
829832017 19630722 625178010070 NULL而不是值,我将获得null。
更新:
我尝试在hbase shell中使用下面的命令创建hbase表
create ‘hl’,’id’然后,我使用以下命令创建了另一个列系列
alter ‘hl’,’pd’ 发布于 2016-11-16 07:14:30
在您的HiveQL中,从hbase表"hl“中选择列族中的两个列"id”到hive表中。如果希望添加更多列(甚至来自其他列家族),只需将它们添加到表模式和hbase.columns.mapping中即可。例如:
CREATE TABLE hbase_hive(key string, firstname string, age string, a string)
STORED BY ‘org.apache.hadoop.hive.hbase.HBaseStorageHandler’
WITH SERDEPROPERTIES (“hbase.columns.mapping” = “id:firstname,id:age,hb:a")
TBLPROPERTIES(“hbase.table.name” = “hl”);发布于 2016-11-16 16:01:56
我在你的文章中看到了一些问题(或多或少是严肃的):
EXTERNAL TABLE:key我无法测试它,但以下应该是一个更好的起点:
CREATE EXTERNAL TABLE hbase_hive_hl(key string, firstname string, age string, name string)
STORED BY ‘org.apache.hadoop.hive.hbase.HBaseStorageHandler’
WITH SERDEPROPERTIES (“hbase.columns.mapping” = “:key,id:firstname,id:age,pd:name")
TBLPROPERTIES(“hbase.table.name” = “hl”);https://stackoverflow.com/questions/40604951
复制相似问题