答案 0 :(得分:0)
如果您的HBase表是在特定名称空间(network_tower)中创建的,那么您没有提到正确的语法如何从HBase特定名称空间访问表。
在tblproperties中,包括 :(冒号)可以从HBase命名空间访问表,而不是。(句点)
TBLPROPERTIES(“ hbase.table.name” =“ network_tower:orders ”)
HBase-Hive ddl示例:
CREATE EXTERNAL TABLE test(rowkey string, ...)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf:...")
TBLPROPERTIES("hbase.table.name" = "network_tower:orders");
创建外部表时,HBase表必须已经存在,
确保该表存在于HBase中。
bash$ hbase shell
hbase(main):> scan 'network_tower:orders',{LIMIT=>1}