1. 程式人生 > >HBase資料與Hive對映

HBase資料與Hive對映

背景:需要將HBase中表某列的值抽取到hive中,在hive中進行ETL的處理

在hive shell中執行如下命令

CREATE EXTERNAL TABLE hbase_table_1(key int, value string) 
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf1:val")
TBLPROPERTIES ("hbase.table.name" = "xyz", "hbase.mapred.output.outputtable" = "xyz");

至此其實並沒有將HBase的資料遷移到Hive中,或者說是物理遷移(將HBase中的資料拷貝至Hive檔案系統,並生成相應檔案),只是在Hive中建了一個與HBase表有一一對映的關係表(如果熟悉關係型資料庫的,可以把這種對映關係理解為關係型資料庫間的DBLink。),通過Hive這個表你可以進行查詢、新增,但是不能做修改、刪除操作