2013-09-11 40 views
1

在PIG腳本中,我使用HBaseStorage來加載HBase表中的所有行。但是,我想通過rowkey過濾行。PIG - HBASE - HBaseStorage密鑰篩選器(gt,lt)

我查看了源代碼,我可以通過構造函數發送-gt & -lt。但是,我無法弄清楚如何將我的值傳遞給構造函數。這是一個byte [] ...

這是我在哪裏:

LOAD 'hbase://TABLE' USING org.apache.pig.backend.hadoop.hbase.HBaseStorage('CF:I','-caster HBaseBinaryConverter') AS (product_id:bytearray); 

如果可能的話你能請提供的示例代碼...

回答

1

您可以使用 「\ X」用十六進制數字表示二進制值。檢查源代碼here。例如,

LOAD 'hbase://TABLE' USING org.apache.pig.backend.hadoop.hbase.HBaseStorage('CF:I','-caster HBaseBinaryConverter -lt=\\x01\\x02\\xD4') AS (product_id:bytearray); 
+0

所以格式如下:300 - > \\ x00 \\ x00 \ x01 \ x2C。由於某種原因,'C'必須是大寫字母,否則怪異.... – hba