Когда вы пытаетесь вернуть список python в UDF, я предлагаю вам разбить список и обработать каждый из этих данных шаг за шагом. Вот пример. Используйте «ТРАНСФОРМ» в улье мудро.
#!/usr/bin/env python
#-*- coding:utf-8 -*-
# demo.py
import sys
import datetime
import time
#Turn the timestamp into string
def timestamp_toString(stamp):
return time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(stamp))
for line in sys.stdin:
print timestamp_toString(float(line))
в улей консоли
hive> add file /ebs/hive/test/demo.py;
select TRANSFORM(time) using 'python demo.py' as (time) from (select * from access_fccs where week=41 limit 10) a ;
Существует функция разделения в улье. http://stackoverflow.com/questions/4065999/does-hive-have-a-string-split-function – Ambrish
Функция 'split' может соответствовать моим требованиям. Большое спасибо! –