2013-09-11 35 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