Поток данных Google - Apache Beam StreamingOptions.streaming не работает - PullRequest
0 голосов
/ 30 мая 2018

Мы создали конвейер Apache Beam, который успешно работает при работе по прямому конвейеру.См. Проблему ниже: -

BigQuery writeTableRows Постоянная запись в буфер

Когда один и тот же код передается в Google DataFlow, он меняется на Потоковую передачу и не будет пакетироваться.

                 rows.apply("Load", BigQueryIO.writeTableRows()
                            .to(table)
                            .withSchema(schema)
                            //.withTimePartitioning(timePartitioning)
                            .withMethod(BigQueryIO.Write.Method.FILE_LOADS)
                            .withTriggeringFrequency(triggeringFrequency)
                            .withNumFileShards(numFileShards)
                            .withCreateDisposition(BigQueryIO.Write.CreateDisposition.CREATE_IF_NEEDED)
                            .withWriteDisposition(BigQueryIO.Write.WriteDisposition.WRITE_APPEND));

Мы изменили параметры для конвейера следующим образом: -

   DataflowPipelineOptions options = PipelineOptionsFactory.as(DataflowPipelineOptions.class);          
            options.setProject(projectId);
            options.setTempLocation(tempLocation);
            options.setStreaming(false);
            options.setRunner(DataflowRunner.class);

Но setStreaming здесь, похоже, в значительной степени игнорируется.

Какой параметр требуется использоватьпакетирование в потоке данных Google?

...