Python + 光束 + 快速

Python + Beam + Flink

我一直在尝试让 Apache Beam 可移植性框架与 Python 和 Apache Flink 一起工作,但我似乎找不到一套完整的说明来让环境正常工作。是否有任何包含完整的先决条件和步骤列表的参考资料,以使简单的 python 管道正常工作?

总的来说,对于本地便携式跑步者 (ULR),see the wiki,引用自那里:

运行一个Python-SDK管道:

  1. 将容器编译为本地构建:./gradlew :beam-sdks-python-container:docker
  2. 启动 ULR 作业服务器,例如:./gradlew :beam-runners-reference-job-server:run -PlogLevel=debug -PvendorLogLevel=warning。有关详细信息,请参阅上面 link 中的 Java 部分。 3 正确设置python 环境。更多详细信息 can be found here
  3. 运行 使用以下管道(在文件夹 sdk/python 下),

示例:

python -m apache_beam.examples.wordcount\
  --input=gs://dataflow-samples/shakespeare/kinglear.txt \
  --output=/tmp/output \
  --runner=PortableRunner \
  --job_endpoint=localhost:8099 \
  --experiments beam_fn_api

对于 Flink,您需要使用不同的作业服务器:./gradlew beam-runners-flink_2.11-job-server:runShadow。 host:port 是 localhost:8099

相关邮件讨论:one, two.

可能值得看一些代码:one, two