Phoneix(四)hbase導入數據同時與phoenix實現映射同步

1、說明chrome

先建立一個hbase表格,可以導入本地數據到hbase中,最後可以經過phoneix進行訪問。apache

一、數據準備(10W條,樣例以下),文件test.txtoop

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

二、上傳到hdfs /tmp/下spa

hadoop fs -put test.txt /tmp/test.txt

一、在hbase中建立好表firefox

create 'TEST','INFO'

二、在phoenix中創建相同的表名以實現與hbase表的映射code

create table if not exists TEST(ID varchar primary key, INFO.DATA varchar, INFO.IP varchar, INFO.BROWER varchar );

注意:orm

  a、phoneix中建立的表與hbase中映射的表名要相同blog

  b、phoneix的主鍵名稱不須要和hbase中相同,兩邊經過表格內置結構能夠自動關聯起來,由於表格自動識別到主鍵hadoop

  c、phoneix中的column必須以hbase的columnFamily開頭rem

三、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

四、查看結果

a、hbase

 

b、phoneix

相關文章
相關標籤/搜索