Посмотрите, какие запросы кешируются в BigQuery? - PullRequest
0 голосов
/ 13 марта 2020

Есть ли способ просмотреть запросы, находящиеся в данный момент в кеше в BigQuery? Или можно предположить, что все запросы, сделанные в течение определенного периода времени, будут кэшированы?

1 Ответ

1 голос
/ 13 марта 2020

Вы можете использовать метаданные Job , чтобы запросить INFORMATION_SCHEMA.JOBS_BY_* и получить подробный список с информацией обо всех запущенных и прошлых работах (до 180 дней). Поле, которое вы ищете, является логическим cache_hit. С помощью следующего запроса вы получите список всех кэшированных заданий вместе с дополнительными полями.

SELECT
  creation_time,
  user_email,
  job_id,
  cache_hit,
  total_bytes_processed
FROM
  `region-us`.INFORMATION_SCHEMA.JOBS_BY_PROJECT
WHERE
  job_type = "QUERY"
  AND cache_hit = TRUE
ORDER BY
  creation_time DESC

Обратите внимание, что в приведенном выше запросе отображаются результаты для региона США и других доступных полей , которая может предоставить вам интересную информацию. Кроме того, вы можете использовать команду bq query для запуска этого запроса в командной строке.

bq query --nouse_legacy_sql \
'SELECT
 creation_time, user_email, job_id, cache_hit, total_bytes_processed
FROM `region-us`.INFORMATION_SCHEMA.JOBS_BY_PROJECT
WHERE job_type = "QUERY" AND cache_hit = TRUE'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...