Hive 在配置单元中使用Python UDF

Hive 在配置单元中使用Python UDF,hive,hiveql,apache-hive,Hive,Hiveql,Apache Hive,我正在尝试学习将Python UDF与Hive结合使用 我这里有一个非常基本的python UDF: import sys for line in sys.stdin: line = line.strip() print line 然后,我将文件添加到配置单元中: ADD FILE /home/hadoop/test2.py; 现在我调用配置单元查询: SELECT TRANSFORM (admission_type_id, description) USING 'pytho

我正在尝试学习将Python UDF与Hive结合使用

我这里有一个非常基本的python UDF:

import sys
for line in sys.stdin:
    line = line.strip()
    print line
然后,我将文件添加到配置单元中:

ADD FILE /home/hadoop/test2.py;
现在我调用配置单元查询:

SELECT TRANSFORM (admission_type_id, description)
USING 'python test2.py'
FROM admission_type;
这与预期的一样,不会对字段进行任何更改,输出按原样打印

现在,当我通过引入split函数修改UDF时,我得到了一个执行错误。如何在这里调试?我做错了什么

新的UDF:

import sys
for line in sys.stdin:
    line = line.strip()
    fields = line.split('\t') # when this line is introduced, I get an execution error
    print line

伏都教。有时失败,有时奏效。
import sys

for line in sys.stdin:
    line = line.strip()
    field1, field2 = line.split('\t') 
    print '\t'.join([str(field1), str(field2)])


SELECT TRANSFORM (admission_type_id, description)    
USING 'python test2.py' As ( admission_type_id_new, description_new)    
FROM admission_type;