在 Hadoop/Pig 中使用匹配过滤

Posted

技术标签:

【中文标题】在 Hadoop/Pig 中使用匹配过滤【英文标题】:Filtering with Matching in Hadoop/Pig 【发布时间】:2016-10-03 19:44:16 【问题描述】:

我正在努力学习 Hadoop/Pig 并一直在 AWS 上工作,

日期看起来像这样(每列包含不同的网站):

 <http://openean.kaufkauf.net/id/businessentities/GLN_7654990000088> 
 <http://www.w3.org/2000/01/rdf-schema#isDefinedBy> 
 <http://openean.kaufkauf.net/id/businessentities/> 
 <http://openean.kaufkauf.net/id/businessentities/GLN_6406510000068> .

我正在尝试过滤其中包含“业务”的行,但过滤器一直返回 0 条记录。 my_data 的格式如上,包含 3 列,第一列是上面显示的主题以及我要过滤的内容。我有:

filter1 = FILTER my_data BY subject=='.*business.*';

不知道为什么这没有返回任何内容,因为 'business' 肯定在 3 条记录中。

【问题讨论】:

【参考方案1】:

试试这个

filter1 = FILTER my_data BY (subject matches '.* business.*');

【讨论】:

以上是关于在 Hadoop/Pig 中使用匹配过滤的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Hadoop pig 中使用“case when”?

如何在 Hadoop/PIG 中处理非 ASCII/亚洲/中文字符

Hadoop Pig 从加载 glob 获取子目录名称并在存储中使用它

未设置 Hadoop Pig 输出目录

Hadoop Pig fs 测试命令

在 Hadoop Pig 中加入和分组