python - Hadoop pig 的简单 Python UDF 问题

标签 python hadoop apache-pig udf

我写了一个非常简单的 Python,这是我的 UDF 代码、pig 代码和错误消息,有什么问题吗?谢谢。

UDF(测试.py),

@outputSchema("cookie:chararray")
def getSimple():
    return 'Hello'

pig 代码,

register test.py using jython as TestSimple;
a = TestSimple.getSimple() as word;

错误信息,

[main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1200: <line 1, column 0>  Syntax error, unexpected symbol at or near 'a'

提前致谢, 林

最佳答案

你需要加载一些数据而不是用你的 UDF 处理它。 像: 加载数据:

A = LOAD 'input' USING PigStorage('\t','-schema');

使用 UDF 处理您的数据,假设您的输入中有一个 id 字段:

B = FOREACH A GENERATE TestSimple.getSimple(id) as word;

当然,您需要正确注册您的 UDF。

关于python - Hadoop pig 的简单 Python UDF 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32261630/

相关文章:

python - 按值对字典进行排序并仅打印键

hadoop - 如何在Test Kitchen Chef中使用群集节点我需要与 Chef 一起在测试厨房中安装hadoop群集进行测试

hadoop - hive 中的平均计数

hadoop - 在另一个框架上执行 Pig

hadoop - 解决 Pig Udf 问题

java - 在 pig 袋字符串中获取元组的最有效方法是什么?

python - 在 pandas MultiIndex 数据框中旋转数据

python - pymysql:一次尝试,但无法捕获多sql错误

python - 用装饰函数填充字典

rest - 如何通过REST API获取所有mapreduce作业的状态?