Читать Apache Beam + большой запрос таблицы

У меня есть набор данных в большом запросе в проекте: Project: project-x Table: table01 Dataset: dataset01

Я хотел бы подключиться к нему из Apache Beam и прочитать значение одного column-column01 например...

Вот что у меня есть:

import apache_beam as beam
from apache_beam.options.pipeline_options import PipelineOptions
import os

os.environ["GOOGLE_APPLICATION_CREDENTIALS"]="Z:\DEV\CREDENTIALS\cred.json"

QUERY="""
    SELECT column01 from project-x:table01.dataset01
    """
options = {'project': 'project-x',
'runner': 'DirectRunner',
'region': 'EU'
}
pipeline_options = beam.pipeline.PipelineOptions(flags=[], **options)
pipeline=beam.Pipeline(options=pipeline_options)   
BQ_source = beam.io.BigQuerySource(query = QUERY)
BQ_data = pipeline | beam.io.Read(BQ_source)

Поэтому после выполнения я ничего не получаю.... Я думаю, что это какая-то основная проблема, но я только начал и очень хотел бы увидеть некоторые результаты. Спасибо за любую помощь.

1 ответ

Есть 1 ошибка, и у меня есть 1 совет. Ошибка: Формат from - это проект:dataset.Table - это устаревший SQL.

Совет: предпочитайте стандартный SQL для возможности использовать все новые функции BigQuery! Из формата is `project.dataset.table` Обратная цитата обязательна. И установите опцию legacy=off в луче.

Другие вопросы по тегам