2013-11-22 38 views
1

如何为猪脚本定制HbaseStorage?实际上,我想在将数据加载到猪脚本之前对数据执行一些业务逻辑。这将是像HbaseStorage之上的自定义存储。猪HbaseStorage定制

例如,我的行密钥具有像这样的结构A_B_C。目前,我在猪脚本中将HbaseStorage中的A_B_C关键字传递给我,但是我想在将输入数据提供给实际猪脚本之前执行一些逻辑,例如针对诸如A_B_C_D之类的关键字进行过滤等操作。这怎么可能

回答

0

你可能不得不看看HBaseStorage java类和实现你自己的类。根据HBaseStorage和相关类的编写方式,这可能与简单(只是将HBaseStorage本身扩展并在必要时覆盖)不同而导致头痛。

然后您必须确保包含您代码的.jar位于猪类路径中。

+0

感谢您的回复。我已经开始,但更加好奇的是要知道那部分,我将不得不覆盖。如何获取我的密钥块中的数据? – Ashish

0

我发现HbaseStorage是一个真正的痛苦,所以我编写普通Java MR作业来查询HBase并创建自定义序列文件,然后使用Pig和一个简单的自定义加载器一起使用。我发现这节省了大量时间,因为序列文件可以在一天中多次重复使用以获得快速结果,而不是在每个Pig脚本的Hbase中扫描所有内容。