Запустите Java-задание потока данных Google из Cloud Composer - PullRequest
0 голосов
/ 08 июня 2018

В настоящее время мы используем версию Airflow, установленную нами в Kubernetes, но идея состоит в том, чтобы перейти на Cloud Composer.Мы используем Airflow для запуска заданий потока данных с использованием настроенной версии DataFlowJavaOperator (с использованием плагина), потому что нам нужно запустить приложение java, которое не содержится в jar-файле.Таким образом, мы в основном запускаем скрипт bash, который запускает команду:

java -cp jar_folder/* MainClass

Все зависимости jar хранятся на общем диске между всеми работниками, но эта функция отсутствует в Composer, в котором мы вынужденыиспользовать облачное хранилище для обмена двоичными файлами заданий.Проблема в том, что запуск программы java из каталога, указывающего на GCS, с использованием gcsfuse очень медленный.

Есть ли у вас какие-либо предложения по реализации такого сценария в Cloud Composer?

Спасибо

1 Ответ

0 голосов
/ 11 июня 2018

Composer автоматически синхронизирует содержимое, помещенное в gs://{your-bucket}/dags и gs://{your-bucket}/plugins, в локальную файловую систему Pod.Мы ожидаем, что туда скопирован только исходный код dag и плагина, но не мешаем никому хранить другие двоичные файлы (хотя это и не рекомендуется, поскольку вы можете превысить емкость диска, и в этот момент выполнение рабочего процесса будет затронуто из-за недостатка локального пространства).

fyi - пути локальной файловой системы: /home/airflow/gcs/dags и /home/airflow/gcs/plugins соответственно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...