Ожидаемое ETA для использования параметров ввода-вывода и времени выполнения конвейера в конвейере потока данных GCP apache beam с использованием python?

Просто хотел узнать, есть ли у нас больше параметров ввода-вывода конвейера и времени выполнения, доступных в новой версии (3.X) python. Если я прав, то в настоящее время луч apache обеспечивает только файловые операции ввода-вывода: textio, avroio, tfrecordio при использовании python. Но с Java у нас есть больше доступных опций, таких как File-based IOs, BigQueryIO, BigtableIO, PubSubIO и SpannerIO.

В моем требовании я хочу использовать BigQueryIO в конвейере потока данных GCP с использованием python 3.X, но в настоящее время он недоступен. Есть ли у кого-нибудь обновления по ETA, когда они будут доступны через Apache Beam?


person Kaustubh Ghole    schedule 10.02.2020    source источник


Ответы (2)


Коннектор BigTable для Python 3 уже некоторое время находится в стадии разработки. В настоящее время нет ETA, но вы можете следить за соответствующим запросом на слияние из официального Репозиторий Apache Beam для дальнейших обновлений.

person itroulli    schedule 10.02.2020
comment
В моем вопросе была опечатка, я просто исправил. По моему требованию я ищу коннектор BigQueryIO для python 3. - person Kaustubh Ghole; 10.02.2020

BigQueryIO уже довольно давно доступен в Apache. Пакет SDK для Beam Python.

Также существует Pub / Sub IO. доступно, а также BigTable (написать). Пока мы говорим, над над SpannerIO работают.

Эта страница содержит более подробную информацию https://beam.apache.org/documentation/io/built-in/

ОБНОВЛЕНИЕ:

В соответствии с OP, предоставляющим более подробную информацию, оказывается, что действительно использование поставщиков значений в строке запроса BigQuery не поддерживалось.

Это было исправлено в следующем PR: https://github.com/apache/beam/pull/11040 и, скорее всего, будет частью выпуска 2.21.0.

ОБНОВЛЕНИЕ 2: эта новая функция была добавлена ​​в выпуск 2.20.0 Apache Beam https://beam.apache.org/blog/2020/04/15/beam-2.20.0.html

Надеюсь, это решит вашу проблему!

person AMargheriti    schedule 11.02.2020
comment
Я говорю о конвейерном вводе-выводе для BigQuery, который может использовать параметры времени выполнения при выполнении этапов конвейера. Другими словами, если я хочу использовать динамический запрос в beam.io.BigQuerySource, то в настоящее время он недоступен с python 3.x Вот стандартный документ Google Cloud: cloud.google.com/dataflow/docs/guides/templates/ в на этой странице вы можете проверить параметры ввода-вывода конвейера и времени выполнения - person Kaustubh Ghole; 12.02.2020
comment
Понятно. Да, тогда вы правы, что использование ValueProvider для запроса BigQuery, похоже, не поддерживается. Но если посмотреть на исходный код, это относительно легко исправить. Я изучу еще немного и посмотрю, смогу ли я составить PR. - person AMargheriti; 13.02.2020
comment
Отлично, пожалуйста, держите меня в курсе, как только вы получите какие-либо прогрессивные новости по связям с общественностью. - person Kaustubh Ghole; 13.02.2020
comment
Как к сведению, я открыл issues.apache.org/jira/browse/BEAM -9305. - person AMargheriti; 20.02.2020
comment
Мы слышали что-нибудь о повышенном пиаре? - person Kaustubh Ghole; 26.02.2020
comment
Незавершенный PR находится по адресу: github.com/apache/beam/pull/11040 Ожидая эта функция, скорее всего, будет частью выпуска 2.21.0. - person AMargheriti; 09.03.2020
comment
@KaustubhGhole PR был объединен и, скорее всего, станет частью выпуска 2.21.0. Тем временем вы можете добавить изменения в PR в вашу локальную установку Beam и запустить Dataflow с настраиваемым флагом SDK, используя этот измененный пакет, если хотите. - person AMargheriti; 24.03.2020
comment
Да, я постараюсь добавить изменения, указанные в PR. Также, когда они выпустят версию 2.21.0. ? - person Kaustubh Ghole; 25.03.2020
comment
До версии 2.21.0 должно быть еще не менее 2 месяцев. Возможно, они добавят это исправление в 2.20.0, хотя оно должно выйти очень скоро. - person AMargheriti; 26.03.2020
comment
Исправление было добавлено в 2.20.0, выпущенное в пятницу на прошлой неделе: beam.apache.org/blog/2020/04/15/beam-2.20.0.html Надеюсь, это решит вашу проблему! - person AMargheriti; 20.04.2020
comment
Я начну использовать новую выпущенную версию и посмотрю, добьюсь ли я успеха. Спасибо ! - person Kaustubh Ghole; 21.04.2020