hive与hbase整合
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,-- hbase shell filter --create 'test1', 'lf', 'sf' -- lf: column family of LONG values
千家信息网最后更新 2026年11月02日hive与hbase整合
-- hbase shell filter --create 'test1', 'lf', 'sf' -- lf: column family of LONG values (binary value) -- sf: column family of STRING values-- 一个用户(userX),在什么时间(tsX),作为rowkey-- 对什么产品(value:skuXXX),做了什么操作作为列名,比如,c1: click from homepage; c2: click from ad; s1: search from homepage; b1: buyput 'test1', 'user1|ts1', 'sf:c1', 'sku1'put 'test1', 'user1|ts2', 'sf:c1', 'sku188'put 'test1', 'user1|ts3', 'sf:s1', 'sku123'put 'test1', 'user2|ts4', 'sf:c1', 'sku2'put 'test1', 'user2|ts5', 'sf:c2', 'sku288'put 'test1', 'user2|ts6', 'sf:s1', 'sku222'scan 'test1', FILTER=>"ValueFilter(=,'binary:sku188')"scan 'test1', FILTER=>"ValueFilter(=,'substring:188')"scan 'test1', FILTER=>"ValueFilter(=,'substring:88')"scan 'test1', FILTER=>"ColumnPrefixFilter('c2') AND ValueFilter(=,'substring:88')"scan 'test1', FILTER=>"ColumnPrefixFilter('s') AND ( ValueFilter(=,'substring:123') OR ValueFilter(=,'substring:222') )"scan 'test1', FILTER=>"FirstKeyOnlyFilter() AND ValueFilter(=,'binary:sku188') AND KeyOnlyFilter()"scan 'test1', FILTER => "PrefixFilter ('user1')"scan 'test1', {STARTROW=>'user1|ts2', FILTER => "PrefixFilter ('user1')"}scan 'test1', {STARTROW=>'user1|ts2', STOPROW=>'user2'}import org.apache.hadoop.hbase.filter.CompareFilterimport org.apache.hadoop.hbase.filter.SubstringComparatorimport org.apache.hadoop.hbase.filter.RowFilterscan 'test1', {FILTER => RowFilter.new(CompareFilter::CompareOp.valueOf('EQUAL'), SubstringComparator.new('ts3'))}import org.apache.hadoop.hbase.filter.RegexStringComparatorput 'test1', 'user2|err', 'sf:s1', 'sku999'scan 'test1', {FILTER => RowFilter.new(CompareFilter::CompareOp.valueOf('EQUAL'),RegexStringComparator.new('^user\d+\|ts\d+$'))}import org.apache.hadoop.hbase.filter.CompareFilterimport org.apache.hadoop.hbase.filter.SingleColumnValueFilterimport org.apache.hadoop.hbase.filter.SubstringComparatorimport org.apache.hadoop.hbase.util.Bytesscan 't1', { COLUMNS => 'family:qualifier', FILTER => SingleColumnValueFilter.new (Bytes.toBytes('family'), Bytes.toBytes('qualifier'), CompareFilter::CompareOp.valueOf('EQUAL'), SubstringComparator.new('somevalue'))}put 'test1', 'user1|ts9', 'sf:b1', 'sku1'scan 'test1', FILTER=>"ColumnPrefixFilter('b1') AND ValueFilter(=,'binary:sku1')"scan 'test1', {COLUMNS => 'sf:b1', FILTER => SingleColumnValueFilter.new(Bytes.toBytes('sf'), Bytes.toBytes('b1'), CompareFilter::CompareOp.valueOf('EQUAL'), Bytes.toBytes('sku1'))}-- binary value --org.apache.hadoop.hbase.util.Bytes.toString("Hello HBase".to_java_bytes)org.apache.hadoop.hbase.util.Bytes.toString("\x48\x65\x6c\x6c\x6f\x20\x48\x42\x61\x73\x65".to_java_bytes)-- 用户userX,作为rowkey,他的各种设备(brwoser, app, pc)作为列名,所对应的cookie_id作为value (长整型变量)put 'test1', 'user1', 'lf:browser1', "\x00\x00\x00\x00\x00\x00\x00\x02"put 'test1', 'user1', 'lf:app1', "\x00\x00\x00\x00\x00\x00\x00\x0F"put 'test1', 'user1', 'lf:app2', "\x00\x00\x00\x00\x00\x00\x00\x10"put 'test1', 'user2', 'lf:app1', "\x00\x00\x00\x00\x00\x00\x00\x11"put 'test1', 'user2', 'lf:pc1', "\x00\x00\x00\x00\x00\x00\x00\x12"scan 'test1', STOPROW=>'user2', FILTER=>"( ColumnPrefixFilter('app') AND ValueFilter(>,'binary:\x00\x00\x00\x00\x00\x00\x00\x0F') )"scan 'test1', LIMIT => 10, FILTER=>"( ColumnPrefixFilter('app') AND ValueFilter(>,'binary:\x00\x00\x00\x00\x00\x00\x00\x0F') )"alter 'test1', NAME => 'cf', METHOD => 'delete'alter 'test1', 'delete' => 'cf'alter 'test1', NAME => 'cf'-- 用户userX,作为rowkey,在什么时间(timestamp)作为列名,访问了什么页面的id作为value:page_id (整型变量)put 'test1', 'user1', 'cf:1399999999', "\x00\x00\x00\x09"put 'test1', 'user1', 'cf:1400000000', "\x00\x00\x00\x08"put 'test1', 'user1', 'cf:1400000001', "\x00\x00\x00\x07"put 'test1', 'user1', 'cf:1400000002', "\x00\x00\x20\xFB"put 'test1', 'user2', 'cf:1500000000', "\x00\x00\x00\x11"put 'test1', 'user2', 'cf:1500000001', "\x00\x00\x20\xFC"-- hive hbase mapping --CREATE EXTERNAL TABLE user_app_cookie_list ( username STRING, app1_cookie_id BIGINT, app2_cookie_id BIGINT )STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key, lf:app1#b, lf:app2#b")TBLPROPERTIES("hbase.table.name" = "test1");select * from user_app_cookie_list;-- hive hbase mapping cf with binary --http://www.abcn.net/2013/11/hive-hbase-mapping-column-family-with-binary-value.htmlCREATE EXTERNAL TABLE ts_string ( username STRING, visits map )STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key, cf:#s:b")TBLPROPERTIES("hbase.table.name" = "test1");CREATE EXTERNAL TABLE ts_int ( username STRING, visits map )STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key, cf:#s:b")TBLPROPERTIES("hbase.table.name" = "test1");CREATE EXTERNAL TABLE ts_int_long ( username STRING, visits map )STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key, cf:#s:b")TBLPROPERTIES("hbase.table.name" = "test1");select * from ts_intlateral view explode(visits) t as ts, page;select username, ts, page_id from ts_intlateral view explode(visits) t as ts, page_id;select username, pos, ts, page_id from ts_intlateral view posexplode(visits) t as pos, ts, page_id;username pos ts page_iduser1 1 1399999999 9user1 2 1400000000 8user1 3 1400000001 7user1 4 1400000002 8443user2 1 1500000000 17user2 2 1500000001 8444select username, from_unixtime(ts), page_id from ts_int lateral view explode(visits) t as ts, page_id;
用户
变量
时间
产品
设备
页面
整合
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
云南咖啡
互联网科技产业
北京路客互联网科技有限公司
科技创新与互联网经济
互联网为科技
礼当家互联网科技
鑫亿盛互联网科技
赫美联合互联网科技
上海万想互联网科技
美国互联网前沿科技
深圳市运趣互联网科技有限公司
科技大学互联网
九思连强互联网电子科技有限公司
济南小医互联网科技有限公司招聘
容联科技互联网电商
保山互联网科技靠谱吗
悟空问答互联网科技
深圳互联网科技园地址
第三届互联网大会安防黑科技
长沙易易互联网科技有限公司
新华互联网科技学院
互联网与科技发展
万易互联网科技
互联网科技上市公司
湖南诚度互联网科技有限公司
昭通互联网科技选哪家
迪庆互联网科技招生
佛山市翊博互联网络科技有限公司
启辰互联网科技
昆明中奇联合互联网科技