BigQuery - ежедневно обновляет данные, как уменьшить количество прерываний на панели инструментов Data Studio в процессе - PullRequest
1 голос
/ 17 мая 2019

У меня есть таблица BigQuery.Вся таблица будет обновляться каждый день.Итак, что я сейчас делаю, это

  • Загрузка самых последних данных в облачное хранилище.
  • Удаление текущей таблицы
  • Создание новой таблицы с тем же именем
  • Загрузка данных из облачного хранилища в новую таблицу (с тем же именем)

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

Какую простую полезную практику я должен сделать, чтобы избежатьперебои с приборной панелью студии данных?

Спасибо!

Ответы [ 3 ]

1 голос
/ 17 мая 2019

Это может быть тривиальный ответ, но почему вы не можете добавить что-то вроде столбца DateTimeAdded в вашу таблицу. Затем вместо удаления текущей таблицы и ее воссоздания просто добавьте новые данные из облачного хранилища с более новым значением DateTimeAdded и, как только это будет сделано, удалите все, что не является текущим DateTimeAdded?

Таким образом, на панели мониторинга нет прерываний, поскольку данные всегда будут существовать, хотя может быть период нестабильности, поскольку старые и новые данные используются для ваших метрик.

Есть ли период времени, когда приборная панель не используется? Обновите ваши данные в это время.

1 голос
/ 17 мая 2019

Почему вы удаляете таблицу?

Вы можете полностью запустить загрузку с усечением.

$ bq help load

--[no]replace: If true erase existing contents before loading new data.
    (default: 'false')

Если вы используете API:

writeDisposition

[Необязательно] Указывает действие, которое выполняется, если таблица назначения уже существует.Поддерживаются следующие значения: WRITE_TRUNCATE: если таблица уже существует, BigQuery перезаписывает данные таблицы.[...]

1 голос
/ 17 мая 2019

Попробуйте ниже

  1. Не удалять исходную таблицу
  2. Загрузить данные из облачного хранилища в новую таблицу (с другим именем)
  3. Копировать новую таблицу в исходную таблицу с перезаписью / усечением
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...