赞
踩
1)创建表
create 'hive_table','json'
2) 插入了数据如下
hbase(main):012:0> scan 'hive_htable'
ROW COLUMN+CELL1 column=json:name, timestamp=1512540375713, value=yinchunguang
3)创建hive表
create external table hbase_test (key string ,age string ,name string ,frend string) STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,json:age,json:name,json:frend")TBLPROPERTIES ("hbase.table.name" = "hive_htable");
4) hive 查询
hive> select * from hbase_test;
OK
1 18 yinchunguang [{"relationship":1,"phone":"15835809207","realName":"addr1"},{"relationship":11,"phone":"13353588520","realName":"addr2"}]
到此可以进行hive sql on hbase了。
但是presto => hive 不能够从 这个表中查询数据。
重新create table table_rep as select * from hbase_test
tmp> select json_extract(json_array_get(frend,0), '$.phone') from table_rep;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。