Hive Python UDF с аргументом - PullRequest
0 голосов
/ 28 мая 2020

Я хочу, чтобы куст Python UDF принимал постоянные аргументы в дополнение к данным из столбцов.

Как это может быть достигнуто?

В приведенном ниже примере я sh запрос куста ниже смогу принять аргумент '10000', а my_udf должен иметь возможность анализировать этот аргумент '10000'

# hive>
ADD FILE my_udf.py;
SELECT TRANSFORM(col1, col2, '10000') USING 'python my_udf.py' AS (udf_output) FROM my_table;

и

# my_udf.py
import sys
for line_str in sys.stdin:
    line = line_str.strip().split('\t')
    print(line[2])  # udf outputs the constant argument we inputted: 10000

1 Ответ

0 голосов
/ 29 мая 2020
# hive>
ADD FILE my_udf.py;
SELECT TRANSFORM(col1, col2, '10000') USING 'python my_udf.py' AS (udf_output) FROM my_table;

TRANSFORM(col1, col2, '10000') все-таки верно. У меня были другие проблемы с синтаксисом в другом месте, из-за чего я подумал, что этот синтаксис не работает.

...