У нас есть секционированная таблица дат с данными за 5 лет (с ежедневной инкрементальной нагрузкой), которая объединяет миллионы и миллионы записей.Чтобы повысить производительность, подумайте о разделении таблицы на основе поля без даты (id), поскольку все запросы будут включать в себя предложение where для этого столбца (id).А также разбейте каждую из разделенных таблиц на разделы даты, чтобы мы могли выполнять запросы к меньшему набору данных с диапазоном дат.мы не будем использовать таблицу с подстановочными знаками, так как мы будем знать идентификатор и планируем добавить его в таблицу и выполнить запрос к этой конкретной таблице.Необходимо знать, будет ли это хорошим вариантом для повышения производительности и снижения стоимости запросов.
[Update] : мы разделили таблицы на основе столбца id (tablename_id) и сделали дату таблицы разделенной и кластеризованной с 4 другими столбцами (макс. Поддерживается), которые обычно используютсяв запросах.Благодаря этому мы смогли повысить производительность, а также сократили количество данных, доступных для каждого запроса.Основываясь на тестировании, похоже, что это хороший вариант для чистки, если избегать запроса таблиц с подстановочными символами и пока Bigquery не поддерживает разбиение на основе столбцов без даты / без даты.