Раздел даты или дата sharded - PullRequest
0 голосов
/ 18 апреля 2019

У меня в BigQuery есть много таблиц с датой, включая данные Google Analytics за несколько лет. Мне недавно сказали, что это старый метод оптимизации и что разбиение даты происходит намного быстрее.

Это правильно? Я всегда ищу способы улучшить скорость запросов к этим данным, если разбиение по дате позволяет гораздо быстрее выполнять запросы, следует ли мне перестраивать все таблицы GA с датой с разделенными датами вместо даты? Должен ли я сделать оба? Какое влияние на производительность я могу ожидать, и стоит ли оно того?

1 Ответ

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

Эта страница в документации Google отвечает на этот вопрос довольно подробно: https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding

Наиболее релевантный раздел:

Секционированные таблицы работают лучше, чем таблицы, сегментированные по дате. Когда вы создаете таблицы с именами дат, BigQuery должен поддерживать копию схемы и метаданных для каждой таблицы с датами. Кроме того, при использовании таблиц с именами дат BigQuery может потребоваться для проверки разрешений для каждой запрашиваемой таблицы. Эта практика также увеличивает накладные расходы и влияет на производительность запросов. Рекомендуется использовать многораздельные таблицы вместо таблиц с разделением по дате

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

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