Потоковая передача данных из Google Cloud Storage в Big Query - PullRequest
0 голосов
/ 02 июня 2018

Я пытаюсь вставить данные из облачного хранилища в Big Query с использованием DataFlow (Java).Я могу пакетно загрузить данные;однако вместо этого я хочу настроить потоковую загрузку.Поэтому, когда новые объекты добавляются в мое ведро, они переносятся в BigQuery.

Я настроил параметры PipelineOptions для потоковой передачи, и в пользовательском интерфейсе консоли GCP показано, что конвейер потока данных имеет потоковый тип.Мой начальный набор файлов / объектов в корзине отправляется в BigQuery.

Но когда я добавляю новые объекты в мое ведро, они не переносятся в BigQuery.Это почему?Как я могу перенести объекты, добавленные в мое облачное хранилище, в BigQuery с помощью потокового конвейера данных?

//Specify PipelineOptions
DataflowPipelineOptions options = PipelineOptionsFactory.as(DataflowPipelineOptions.class);


  options.setProject(<project-name>);
  options.setStagingLocation(<bucket/staging folder>);    
  options.setStreaming(true);
  options.setRunner(DataflowRunner.class);

Моя интерпретация заключается в том, что, поскольку это потоковый конвейер, когда я добавляю объекты в облачное хранилище, они будутполучить толчок к BigQuery.

Пожалуйста, предложите.

1 Ответ

0 голосов
/ 03 июня 2018

Как вы создаете свою коллекцию ввода?Вам нужно иметь неограниченный ввод для потокового конвейера, чтобы он оставался включенным, иначе он будет только временным (но будет использовать потоковые вставки).Этого можно добиться, прочитав подписку, в которой есть все изменения в вашем корзине, подробности см. https://cloud.google.com/storage/docs/pubsub-notifications.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...