环境:
CentOS7.6
CDH6.3.1
Flink1.4.0
PYTHON3.7.12
其中,Flink已经集成到CDH6.3.1中。
简介:
这里主要描述的是通过sql client来调用 python udf,以达到在sql client中使用自定义函数的目的。
python udf 脚本如下:
# more test.py
from pyflink.table import DataTypes
from pyflink.table.udf import *
@udf(input_types=[DataTypes.BIGINT(), DataTypes.BIGINT()], result_type=DataTypes.BIGINT())
def add(i, j: int):
return i + j
创建初始化sql文件:
# more /data/liaoyk/onekick/flink_test/init.sql
CREATE FUNCTION add AS 'test.add' LANGUAGE PYTHON;
来到sql-client.sh所在目录:
# ./sql-client.sh embedded -i /data//flink_test/init.sql -pyfs /data/flink_test/test.py -pyexec {python3_path}