我一直在尝试让Apache Beam Portability Framework与Python和Apache Flink一起工作,但我似乎找不到一套完整的指令来让环境工作。是否有任何参考资料,其中列出了让一个简单的python管道工作的完整先决条件和步骤?
总体而言,对于本地可移植运行程序(ULR(,请参阅wiki,引用自:
运行Python SDK管道:
- 将容器编译为本地生成:
./gradlew :beam-sdks-python-container:docker
- 启动ULR作业服务器,例如:
./gradlew :beam-runners-reference-job-server:run -PlogLevel=debug -PvendorLogLevel=warning
。有关详细信息,请参阅上面链接中的Java部分。3正确设置python环境。更多详细信息可以在这里找到 - 使用以下命令运行管道(在文件夹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
。主机:端口为localhost:8099
,
相关电子邮件讨论:一、二。
可能值得一看一些代码:一、二。