一、说明
先创建一个hbase表格,能够导入本地数据到hbase中,最后能够通过phoneix进行访问。
1、数据准备(10W条,样例如下),文件test.txt
0,20190520164020,171.15.136.201,ie 1,20190520164020,139.203.75.112,chorm 2,20190520164020,121.77.62.91,chorm 3,20190520164020,139.213.175.14,ie 4,20190520164020,210.45.253.237,chorm 5,20190520164020,171.12.45.87,chrome 6,20190520164020,139.200.93.224,firefox 7,20190520164020,222.61.160.72,chorm
2、上传到hdfs /tmp/下
hadoop fs -put test.txt /tmp/test.txt
1、在hbase中创建好表
create 'TEST','INFO'
2、在phoenix中建立相同的表名以实现与hbase表的映射
create table if not exists TEST(ID varchar primary key, INFO.DATA varchar, INFO.IP varchar, INFO.BROWER varchar );
注意:
a、phoneix中创建的表与hbase中映射的表名要相同
b、phoneix的主键名称不需要和hbase中相同,两边通过表格内置结构可以自动关联起来,因为表格自动识别到主键
c、phoneix中的column必须以hbase的columnFamily开头
3、hdfs数据导入到hbase中,执行下面两条命令
a、通过importtsv.separator指定分隔符,否则默认的分隔符是tab键。
hbase org.apache.hadoop.hbase.mapreduce.ImportTsv -Dimporttsv.columns=HBASE_ROW_KEY,INFO:DATA,INFO:IP,INFO:BROWER -Dimporttsv.separator=, -Dimporttsv.bulk.output=/tmp/who_goods_label_output TEST /tmp/test.txt
b、将生成的hfile文件导入到hbase
hbase org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles /tmp/who_goods_label_output TEST
4、查看结果
a、hbase
b、phoneix
今天的文章Phoneix(四)hbase导入数据同时与phoenix实现映射同步分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/56249.html