Я хочу использовать поток данных для параллельной обработки нескольких видеоклипов, хранящихся в хранилище Google.Мой алгоритм обработки имеет не-Python зависимости и, как ожидается, будет меняться в течение итераций разработки.
Я бы предпочел использовать докеризованный контейнер с логикой для обработки клипов, но, похоже, что пользовательские контейнерыне поддерживается (в 2017 году):
использовать docker для зависимостей потока данных облака Google
Хотя они могут поддерживаться сейчас - так как над ним работали:
Posthoc подключает FFMPEG к двоичному файлу opencv-python для задания потока данных Google Cloud
В соответствии с этой проблемой может быть извлечено настраиваемое изображение докера, но я не смог найти документацию о том, какчтобы сделать это с потоком данных.
https://issues.apache.org/jira/browse/BEAM-6706?focusedCommentId=16773376&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-16773376
Другим вариантом может быть использование setup.py для установки любых зависимостей, как описано в этом устаревшем примере:
https://cloud.google.com/blog/products/gcp/how-to-do-distributed-processing-of-landsat-data-in-python
Однако при выполнении примера я получаю сообщение об ошибке, что отсутствует модуль с именем osgeo.gdal.
Для чисто зависимостей Python я также пытался pчерез аргумент --requirements_file
, однако я все еще получаю сообщение об ошибке: Pip install failed for package: -r
Я мог бы найти документацию для добавления зависимостей в apache_beam, но не в поток данных, и кажется, что инструкции apache_beam не работают, основываясь намои тесты --requirements_file
и --setup_file