Проблема с индексом и размером таблицы

#postgresql #postgresql-9.5

#postgresql #postgresql-9.5

Вопрос:

Размер моей таблицы составляет 2,5 ТБ, она включает 10 индексов. Размер данных составляет 850 ГБ, а размер индекса — 1650 ГБ. Чтобы уменьшить размер индексов, я должен перестроить индексы.Продолжительность моего окна обслуживания составляет 5 часов. Я думаю, что сложно (или невозможно) выполнить операцию перестройки индекса для этой таблицы в MW. Пожалуйста, предложите, какой подход является самым быстрым способом уменьшить размер индексов за 5 часов MW?

создайте новую таблицу с исходной структурой таблицы без индексов и запустите копирование данных из исходной таблицы в новую таблицу. Затем переименуйте таблицу и создайте индексы. будет ли этот подход работать для меня? Пожалуйста, предложите.

Моя версия PGSQL: 9.5

Комментарии:

1. С современной версией Postgres вы могли бы использовать reindex concurrently

2. 10 индексов являются подозрительными. Нормализована ли ваша схема до 3NF?

3. Никто не может сказать вам, сколько времени потребуется вашему оборудованию для создания индекса на ваших данных. Для этого и нужны тестовые серверы.