Смоделируйте таблицу BigQuery с транзакциями магазина (время транзакции, товары, ID магазина, город, штат), по которой часто выполняются запросы для подсчета количества товаров за последние 30 дней и отслеживания тенденций по штату/городу/магазину. Как следует выполнить партиционирование и кластеризацию для наилучшей производительности?
Выберите ответ
Нажмите на вариант, чтобы проверить свой ответ.
Правильный ответ: Партиционировать по времени транзакции; кластеризовать по штату, затем по городу, затем по ID магазина..
Почему это правильный ответ
Правильный ответ — партиционировать по времени транзакции и кластеризовать по штату, городу, затем ID магазина. Партиционирование по времени транзакции (transactiontime) является оптимальным, поскольку запросы часто фильтруются по временным диапазонам (например, "последние 30 дней"). Это значительно сокращает объем сканируемых данных. Кластеризация по штату, городу, затем ID магазина (state, city, storeid) наиболее эффективна, так как запросы отслеживают тенденции именно по этим географическим и организационным единицам. BigQuery хранит данные, отсортированные по кластеризованным столбцам, что ускоряет выполнение запросов с фильтрацией или агрегацией по этим полям, минимизируя сканирование и повышая производительность. Другие варианты кластеризации менее эффективны, так как они не соответствуют порядку, по которому чаще всего выполняются запросы для анализа тенденций. Кластеризация без партиционирования не даст такого же выигрыша в производительности для временных запросов.
Сдайте экзамен — без бесконечного поиска ответов
Получите все проверенные вопросы и объяснения для этого экзамена в одном месте и сэкономьте часы подготовки. 1000+ сертификаций · 20+ языков · начните бесплатно.
Сдайте экзамен быстрее → Карта не требуется