问题标签 [apache-datafu]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
tuples - 使用 LinkedIn 的 datafu 包时出错
我正在开发一个使用 LinkedIn 的 datafu UDF 编译的 TransposeTupleToBag UDF 的项目。在这里找到:https ://github.com/linkedin/datafu/tree/master/src/java/datafu/pig/util 。我在 grunt shell 中执行以下命令:
当我执行最后一行时,我收到此错误:
我究竟做错了什么?如何避免?我也没有更改他们的任何代码。而且我只使用 TransposeTupleToBag、FieldNotFound 和 AliasableEvalFunc,因为它们是成功运行 Transpose 所需的类。我什至对所有加载的类都进行了同样的尝试,但它仍然给了我同样的错误。这是怎么回事?请帮忙。谢谢!
filter - Pig:在 Set 上过滤多列表
我有以下输入:
我的目标可以概括为以下伪代码:
, 理想情况下给出input
表中input.token
字段不在的行stpwrd
。
我在(链接)中检查了SetDifference()
UDF ,但我不确定这是否能完成这项工作,因为它似乎要求两个表都是单例的,而我的表有多个列。datafu
input
apache-pig - DataFu BagGroup 将对所有包进行分组,而不是在 FOREACH 范围内进行分组。怎么修?
我正在使用 DataFu 对我的包进行分组。如下:
当我转储前 10 个时,我会看到每个 uid 包含 (date, vid) 的所有 vid。但是,分组显示其他 uid 记录。例如:
转储的结果显示其中包含其他 uid 数据的袋组。它将所有 uid 中的整个 vid 包分组,但我只希望每个 uid。
想法结果应该是这样的:
任何帮助为什么?我正在使用猪 1.2.0。
更新:
看起来像 BagGroup 类型的从内存中调用操作。所以第一个uid BagGroup 总是正确的,然后它把之前处理过的包添加到一起操作。IE。如果第一条记录是 uid 21,则 BagGroup 将所有 21 个结果分组。接下来,如果第二条记录 uid 为 60,那么 BagGroup 会同时输出 21 和 60 的结果。
java - 带有datafu的apache PIG:无法解析UDF
我正在从这里尝试快速入门:http: //datafu.incubator.apache.org/docs/datafu/getting-started.html 我几乎尝试了所有方法,但我确信这一定是我的错。我已经试过了:
- 导出 PIG_HOME、CLASSPATH、PIG_CLASSPATH
- 使用 -cpdatafu-pig-incubating-1.3.0.jar 启动猪
- 在本地和 hdfs 中注册 datafu-pig-incubating-1.3.0.jar => 都成功(至少没有显示错误)没有任何帮助
在猪身上试试这个:
或直接
我收到此名称解析错误:
2016-06-04 17:22:22,734 [main] 错误 org.apache.pig.tools.grunt.Grunt - 错误 1070:无法使用导入解析 datafu.pig.stats.StreamingMedian:[,java.lang.,org .apache.pig.builtin., org.apache.pig.impl.builtin.] 日志文件中的详细信息:/home/hadoop/pig_1465053680252.log
当我查看 datafu-pig-incubating-1.3.0.jar 时,一切正常。我还尝试了一些 Bag 功能,然后出现同样的错误。我认为这是一种我看不到的菜鸟错误(因为我没有在 SO 或谷歌中找到 datafu 的特定答案),所以提前感谢您对此有所了解。