这似乎很愚蠢,但这是我在这里的第一篇文章。很抱歉做错了什么。
我目前正在使用Python2.7构建使用TFX 0.11(即TFDV-TFT-TFServing)和Tensorflow 1.11的简单ML管道。我目前有一个Apache-Flink群集,我想将其用于TFX。我知道TFX背后的框架是Apache-Beams 2.8,并且(Apache-Beams)当前通过便携式跑步者层以Python SDK为FLINK。
但是问题是我可以通过此便携式跑步者概念在TFX(TFDV-TFT)中使用flink Runner的Apache Beams在TFX(TFDV-TFT)中进行编码,因为TFX当前似乎仅支持DirectRunner和DataFlowRunner(Google Cloud)。
我已经在网络上搜索了一段时间,并在TFX网站中查看最后一行,
"请指导有关使用TF.Transform合作的任何问题,以使用TensorFlow-Transform标签堆叠溢出。"
这就是为什么我在这里。任何想法或解决方法都非常感谢。谢谢!
感谢您的问题。
免责声明:便携式弗林克跑步者仍处于实验阶段,只能与大量的输入数据一起使用。
这是您可以通过横梁在Flink上运行TFX的方式。
先决条件
- Linux
- docker
- Beam Repo:https://github.com/apache/beam
- 用于输入和输出的分布式文件系统。
运行Python管道的说明:https://beam.apache.org/roadmap/portability/#python-on-flink
注意:我们目前仅支持Flink 1.5.5
说明
1)构建工人容器:
- 转到Beam Checkout Dir
- 运行gradle命令:./gradlew:beam-sdks-python-container:docker
2)flink运行横梁求职者:
- 转到Beam Checkout Dir
- 运行gradle命令:./gradlew beam-runners-flink_2.11-job-server:runshadow注意:此命令将在启动工作服务器并保持运行时无法完成。
3)提交管道
- 请参阅https://github.com/angoenka/model-analysis/blob/hack_1/examples/chicago_taxi/preprocess_flink.sh
- 注意:确保将以下标志传递到管道
--experiments=beam_fn_api
--runner PortableRunner
--job_endpoint=localhost:8099
--experiments=worker_threads=100
--execution_mode_for_batch=BATCH_FORCED