BigQuery: как структурировать несколько SQL кодов в один и записывать данные в таблицы - PullRequest
0 голосов
/ 11 апреля 2020

Если у меня есть 2 SQL запросов в Bigquery, и я хочу, чтобы они выполнялись один за другим. Как мне построить этот конвейер данных и автоматизировать его?

Select 
a,
b
INTO Table2
From Table1;
Select
a,
b
INTO Table3
FROM Table2

Ответы [ 3 ]

2 голосов
/ 12 апреля 2020

Вы можете просто использовать команду BigQuery DDL для создания table2, а затем использовать ее в следующем запросе для создания table3:

CREATE OR REPLACE TABLE `YOUR_PROJECT.YOUR_DATASET.table2` AS
SELECT a, b FROM `YOUR_PROJECT.YOUR_DATASET.table1`;

CREATE OR REPLACE TABLE `YOUR_PROJECT.YOUR_DATASET.table3` AS
SELECT a, b FROM `YOUR_PROJECT.YOUR_DATASET.table2`;

ПРИМЕЧАНИЕ : изменить YOUR_PROJECT и YOUR_DATASET к тому, что вы используете.

0 голосов
/ 12 апреля 2020

Во-первых, возможно, лучше сначала указать ваши варианты использования. Есть много инструментов автоматизации, которые можно использовать. Предположим, что вы хотите автоматизировать его, вы можете:

  1. Сначала проверить, существует ли таблица, а затем создать, если необходимо
  2. Сделать создать или замените .

Первый вариант обычно работает, если вы хотите выполнить обновление, например, ежедневно обновляете свою таблицу, продолжая добавлять данные. Второй вариант работает, если вы хотите сохранить только последнее состояние вашей таблицы.

0 голосов
/ 11 апреля 2020

Зависит от вида необходимой автоматизации. Например, вы можете создавать таблицы, используя несколько операторов create table, а затем планировать их выполнение с определенной частотой.

Быстрый способ планирования запросов - использовать облачную консоль Google, выбрать свой проект и открыть редактор BigQuery. Введите несколько операторов SQL, каждый из которых заканчивается точкой с запятой, и воспользуйтесь параметром запроса расписания, чтобы запланировать их.

Еще:

https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language#creating_a_new_table

https://cloud.google.com/bigquery/docs/scheduling-queries

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