Пример подсчета слов в Apache Beam Python не выполняется для Flink Runner с BeamIOError - PullRequest
0 голосов
/ 09 мая 2019

Я пытаюсь запустить пример подсчета слов Apache Beam Python на Apache's Flink, используя PortableRunner, используя SDK-жгут / сервер заданий через Docker.

  1. Построен контейнер жгута SDK с использованием ./gradlew -p sdks/python/container docker. Но когда Docker тянет за созданный образ, он выдает ошибку ниже:

    Использование тега по умолчанию: последний Ответ об ошибке от демона: Get https://$userId -docker- apache.bintray.io/v2/: x509: сертификат действителен для * .bintray.io, bintray.io, но не для $ userId-docker- apache.bintray.io

  2. Успешно запустил переносимую конечную точку сервиса Flink с помощью ./gradlew beam-runners-flink_2.11-job-server:runShadow.

Но при попытке запустить пример wordcount, используя приведенную ниже команду с PortableRunner,

python -m apache_beam.examples.wordcount --input=local_input_file --output=local_output_file --job_endpoint=localhost:8099 --experiments beam_fn_api --runner=PortableRunner

выдает следующую ошибку:

IOError as «RuntimeError: IOError: [Errno 2] Нет такого файла или каталог: '/Beam-temp-output-b6d55cb671ef11e9be2f025000000001/3ce015aa-78ee-4bfa-be17-120de259e690.output' [при выполнении «запись / запись / записьImpl / FinalizeWrite» »

Запуск с DirectRunner вместо PortableRunner заставляет его работать нормально! Будем благодарны за любые подсказки о том, как я могу заставить WordCount работать с PortableRunner через Docker.

1 Ответ

0 голосов
/ 15 мая 2019

Вы пытались указать имя репозитория и вытащить оттуда?(с помощью -Pdocker-repository-root)

примерно так:

"./ gradlew -Pdocker-repository-root = gcr.io / SOME_NAME_HERE -p sdks / go / контейнерный докер«

...