TensorFlow Extended (TFX): уточнение использования луча, воздушного потока и кубического потока - PullRequest
1 голос
/ 17 мая 2019

Я надеюсь, что кто-то сможет прояснить связь между TensorFlow и его зависимостями (Beam, AirFlow, Flink и т. Д.)

Я ссылаюсь на главную страницу TFX: https://www.tensorflow.org/tfx/guide#creating_a_tfx_pipeline_with_airflow и т. Д.

В примерах я вижу три варианта: https://github.com/tensorflow/tfx/tree/master/tfx/examples/chicago_taxi_pipeline taxi_pipeline_flink.py, taxi_pipeline_kubeflow.py, taxi_pipeline_simple.py

Пример BEAM?

НетПример "ЛУЧ" и немного описания его использования.

Правильно ли считать, что taxi_pipeline_simple.py будет работать, даже если не установлен воздушный поток?Я думаю, что нет, поскольку он использует «AirflowDAGRunner».Если нет, то можете ли вы запустить TFX только с BEAM и его бегуном?Если да, то почему нет такого примера?

Пример Flink

В taxi_pipeline_flink.py, используется AirflowDAGRunner.Я предполагаю, что использует AirFlow в качестве оркестратора, который в свою очередь использует Flink в качестве исполнителя.Правильно?

Пример воздушного потока

На странице указано, что BEAM является обязательной зависимостью, но в воздушном потоке нет луча в качестве одного из исполнителей.Он имеет только SequentialExecutor, LocalExecutor, CeleryExecutor, DaskExecutor и KubernetesExecutor.Следовательно, BEAM нужен только тогда, когда не используется Airflow ?При использовании воздушного потока, какова цель луча, если он необходим?

Спасибо за любые идеи.

1 Ответ

2 голосов
/ 23 июля 2019

A) Для запуска конвейеров TFX вам нужны оркестраторы.Примерами являются Apache Airflow, Kubeflow Pipelines и Apache Beam.

B) Apache Beam ТАКЖЕ (и, возможно, в основном) используется для распределенной обработки данных в некоторых компонентах TFX.Следовательно, Apache Beam необходим для любых выбранных вами оркестраторов (даже если вы не используете Apache Beam в качестве оркестратора!)

Ответьте на ваши вопросы:

1) Пример BEAM - Прямо сейчас естьПример луча на https://github.com/tensorflow/tfx/blob/master/tfx/examples/chicago_taxi_pipeline/taxi_pipeline_beam.py. Как вы и ожидали, там нет AirflowDAGRunner, поскольку в этом примере не используется Airflow в качестве оркестратора.

2) Пример воздушного потока - BEAM является обязательной зависимостью из-заПричина, указанная выше: BEAM всегда используется TFX для распределенной обработки данных в некоторых компонентах.Таким образом, даже с Airflow (или любым другим) в качестве оркестровщика вам нужен BEAM.

3) Пример Flink - в данный момент я нигде не могу найти этот пример (возможно, из-за изменений в ссылке с момента публикации), но возможно, что Flink будет использоваться в качестве бегуна, в то время как Airflow является оркестратором.Тем не менее, я не смог найти упоминаний о Flink в документации Airflow.

Надеюсь, это поможет в некоторой степени.

...