我看过文档here ,但我承认我觉得它相当缺乏。我想知道是否有人可以给我收集有关将 Python UDF 合并到 Pig 中的示例。特别是
- 在 Pig 0.10 之前,不存在 bool 类型,但是
FILTER
操作需要将结果解析为 bool 值。如果我没有最新版本? - 是否无法从 Python 访问
Algebraic
、Accumulator
和Filter
接口(interface)? - 我也不能访问分布式缓存吗?
- Store/Load 函数呢?
最佳答案
Python UDF 非常有限。您不能使用 Algebraic 或 Accumulator 接口(interface),也不能用 Python 编写 LoadFunc。对于比 map 操作更复杂的任何事情,您可能需要求助于 Java UDF。
也就是说,可以在 http://ragrawal.wordpress.com/2013/02/24/on-writing-python-udf-for-pig-a-perspective/ 找到一个更复杂的带有动态 outputSchema 的 Python UDF。 .这可能对您没有帮助,但它会让您更好地了解 Python UDF 可以做什么。
关于Pig 中的 Python UDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10808838/