Когда мне следует запускать ежедневные задания ETL для данных Firebase Analytics, экспортируемых в BigQuery? - PullRequest
0 голосов
/ 01 апреля 2019

Мы используем Firebase Analytics для сбора событий из наших приложений.Мы включили экспорт событий в BigQuery.Каждый день мы запускаем несколько заданий ETL для создания более удобных аналитических таблиц в BigQuery (например, сеансы, покупки).

Вопрос в том, когда мы должны запускать эти задания ETL?

Мы знаем, что Firebase Analyticsсоздает в BigQuery таблицу «events_intraday_», которая меняется на «events_» через несколько часов после полуночи.Мы также понимаем, что о некоторых событиях можно сообщить позже, если клиент не подключен к Интернету, но это не проблема.

Наша теория состоит в том, что таблица 'events_intraday_' является какой-то временной таблицей, и мы должны запуститьЗадания ETL, когда он меняется на 'events_'.К сожалению, мы не смогли найти никакой документации по этому поводу.Это хорошее решение?

Ответы [ 2 ]

0 голосов
/ 02 апреля 2019

Благодаря Фрэнку ван Пуффелену Я нашел статью в блоге Firebase Сколько времени нужно, чтобы мои данные Firebase Analytics появились? , в которой говорится, что данные аналитики экспортированы вBigQuery может быть отложено до чуть более 1 часа.Таким образом, основываясь на этой информации, нужно выполнить задания ETL, скажем, в 2:00 UTC + 0, и запрос должен просто ОБЪЕДИНИТЬ ВСЕ события с таблицей events_intraday.

Так что, если сегодня 2019-04-02, и я хочу запроситьПо данным за прошлый месяц, запрос должен выглядеть так:

SELECT * FROM
(
  SELECT * 
  FROM `<PROJECT_ID>.analytics_<ANALYTICS_ID>.events_*`
  WHERE _TABLE_SUFFIX BETWEEN '20190301' AND '20190401'
)
UNION ALL 
(
  SELECT * 
  FROM `<PROJECT_ID>.analytics_<ANALYTICS_ID>.events_intraday_*` 
  WHERE _TABLE_SUFFIX = '20190401'
)
0 голосов
/ 01 апреля 2019

С Объявление об экспорте данных Google Analytics в реальном времени в BigQuery :

В конце дня [1] эти данные будут перемещены в постоянное хранилище appendts_ home,и старая внутридневная таблица будет автоматически очищена для вас.

С:

[1] Это определяется просмотром часового пояса разработчика.

Похоже, что дневной стол создается в полночь для вашего часового пояса.

...