我正在尝试在现有的Hbase表上创建一个Hive表,如下所示:
create external table h2h (
key int -- int or string?
col1 string
)
stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
with serdeproperties ('hbase.columns.mapping' = ':key,info:col1');
official doc演示了key
的几种数据类型。
如何确定映射到Hbase表中key
的列rowkey
的数据类型?
答案 0 :(得分:1)
要完全回答这个问题,应该指出HBase密钥存储为字节数组。这样做是为了灵活性,因为客户端可以存储任何类型的数据。所以,HBase并没有真正的类型概念。 这种方法非常灵活,但让用户知道如何序列化/反序列化数据的负担,也就是说,您应该查看一些数据样本或查看创建/更新表的代码并查看用作的内容键。
尝试hbase,如下所示
scan 'h2h', {COLUMNS => ['info'], LIMIT => 3 }
查看你得到的密钥是int还是字符串。