当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pyflink StreamExecutionEnvironment.add_python_archive用法及代码示例


本文简要介绍 python 语言中pyflink.datastream.StreamExecutionEnvironment.add_python_archive的用法。

用法:

add_python_archive(archive_path: str, target_dir: str = None)

添加一个 python 归档文件。该文件将被提取到 python UDF worker 的工作目录中。

如果指定了参数“target_dir”,则归档文件将被解压到名为${target_dir} 的目录中。否则,归档文件将被解压到与归档文件同名的目录中。

如果python UDF依赖于集群中不存在的特定python版本,可以使用该方法上传虚拟环境。请注意,上传环境中包含的 python 解释器的路径应通过方法 pyflink.table.TableConfig.set_python_executable() 指定。

通过此方法上传的文件也可以通过相对路径在 UDF 中访问。

例子:

# command executed in shell
# assert the relative path of python interpreter is py_env/bin/python
$ zip -r py_env.zip py_env

# python code
>>> stream_env.add_python_archive("py_env.zip")
>>> stream_env.set_python_executable("py_env.zip/py_env/bin/python")

# or
>>> stream_env.add_python_archive("py_env.zip", "myenv")
>>> stream_env.set_python_executable("myenv/py_env/bin/python")

# the files contained in the archive file can be accessed in UDF
>>> def my_udf():
...     with open("myenv/py_env/data/data.txt") as f:
...         ...

注意:

请确保上传的python环境与集群运行的平台相匹配,并且python版本必须为3.6或更高。

注意:

目前仅支持zip-format。即 zip、jar、whl、egg 等。不支持其他存档格式,例如 tar、tar.gz、7z、rar 等。

参数:

  • archive_path- 存档文件路径。

  • target_dir- 可选,存档文件提取到的目标目录名称。

相关用法


注:本文由纯净天空筛选整理自apache.org大神的英文原创作品 pyflink.datastream.StreamExecutionEnvironment.add_python_archive。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。