要將HBase表映射到Hive外部表,可以按照以下步驟操作:
CREATE EXTERNAL TABLE hbase_table(
column1 string,
column2 int,
column3 double
)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf:column1,cf:column2,cf:column3")
TBLPROPERTIES ("hbase.table.name" = "hbase_table");
這里假設(shè)HBase表的表名為"hbase_table",并且包含了列"cf:column1"、“cf:column2”、“cf:column3”。需要根據(jù)實(shí)際情況修改列名和列族名。
$HIVE_HOME/conf/hive-site.xml
,可以在其中添加如下配置:<property>
<name>hbase.zookeeper.quorum</name>
<value>zk_host1,zk_host2,zk_host3</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
需要將zk_host1
、zk_host2
、zk_host3
替換為HBase集群中ZooKeeper的主機(jī)名或IP地址。
SELECT * FROM hbase_table;
通過以上步驟,就可以成功將HBase表映射到Hive外部表,并在Hive中對(duì)HBase表進(jìn)行查詢和操作。