JOB в Dataflow с использованием функции - PullRequest
0 голосов
/ 17 марта 2020

Параметр google function

Параметр eu quero passar para query

файл шаблона:

"steps":[
      {
         "kind":"ParallelRead",
         "name":"s1",
         "properties":{
            "bigquery_export_format":"FORMAT_AVRO",
            "bigquery_flatten_results":true,
            "bigquery_query":"select * from `myproject2497.teste.teste`",
            "bigquery_use_legacy_sql":false,
            "display_data":[
               {
                  "key":"source",
                  "label":"Read Source",
                  "namespace":"apache_beam.io.iobase.Read",
                  "shortValue":"BigQuerySource",
                  "type":"STRING",
                  "value":"apache_beam.io.gcp.bigquery.BigQuerySource"
               },
               {
                  "key":"query",
                  "label":"Query",
                  "namespace":"apache_beam.io.gcp.bigquery.BigQuerySource",
                  "type":"STRING",
                  "value":"select * from `myproject2497.teste.teste limit 1`"
               },

функция google cloud: blob.upload_from_string (timestamp)

parameters = {"bql": bql}
jobname = "poc"    
gcsPath="gs://exemplebucket1321/teste/templates/Bee"
body = {
    "jobName": "{jobname}".format(jobname=jobname),
    "parameters": parameters
}

1 Ответ

0 голосов
/ 19 марта 2020

См. Документацию по созданию:

https://cloud.google.com/dataflow/docs/guides/templates/creating-templates

И RunningTemplates:

https://cloud.google.com/dataflow/docs/guides/templates/running-templates

Обратите внимание, что вы будете передавать только параметры в коде шаблона, который уже использует ValueProvider (без изменения источника). См. Ссылку ниже для списка IOs с параметрами ValueProvider. Для BigQuery вам понадобится Java SDK 2.0 +

https://cloud.google.com/dataflow/docs/guides/templates/creating-templates#pipeline -io-and-runtime-параметры

Поскольку вы используете BigQuery в качестве источника, я Полагайте, что следование инструкциям в двух вышеуказанных ссылках решит вашу проблему

...