предварительная сортировка таблиц разделов по определенным столбцам уменьшает объем памяти, используемой для групповых операций - PullRequest
0 голосов
/ 12 декабря 2018

при условии, что у нас есть таблица CREATE TABLE dataset.user_activity_log ( partition_time DATE , user_id STRING , description STRING , activity_id int64 ) PARTITION BY partition_time OPTIONS( description="partitioned by partition_time" ) ; И я настроил ее так, чтобы я вставлял в нее данные ежедневно и при этом получал порядок по идентификатору активности.

Позже, Я хотел бы создать отчет за определенный промежуток времени на основе поля partition_time и выполнить группировку по идентификатору активности, будет ли иметь поле сортированного поля action_id справкой (возможно, не хватает памяти)?

1 Ответ

0 голосов
/ 12 декабря 2018

Это называется "Кластеризованные таблицы" и , создающие с использованием DDL

фрагмент

PARTITION BY partition_time
 CLUSTER BY
   activity_id
 OPTIONS (

Прочтите также: Оптимизация BigQuery: кластеризация ваших таблиц

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

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