當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。