Postgres: Вы по-прежнему разделяете данные и индексы с помощью SSD - PullRequest
1 голос
/ 03 февраля 2020

Люди до сих пор хранят данные и индексы отдельно для производительности или современные SSD делают это странной практикой из прошлого?

Мне представили новую автономную систему с (12 4 ТБ ssd) в 6 зеркал RAID0 с полосой RAID1, уложенной поверх них и представленной в виде единой точки монтирования (/ pgdata / vd0).

На вопрос, не попросят ли другие администраторы БД перестроить это и наладить взаимодействие с ребятами из аппаратного обеспечения или просто поработать с ним и поставить на это хранилище данных?

Просто спросить на высоком уровне

1 Ответ

0 голосов
/ 03 февраля 2020

Ответ всегда "это зависит". Если индексы обычно помещаются в ОЗУ, это не имеет значения. Если данные, которые вы извлекаете, включают в себя большие наборы результатов с дисков, это, вероятно, не будет иметь большого значения, так как произвольный доступ к жестким дискам будет доминировать в общем взаимодействии.

SSD имеют огромное значение с OLTP рабочими нагрузками, которые выполняют много вызовов произвольного доступа, но не ограничиваются только индексами. Твердотельные накопители просто делают все намного быстрее.

Эта практика также часто заменяется такими опциями, как Адаптивный кэш-память ZFS , которые интеллектуально отправляют операции чтения / записи наиболее часто используемых секторов на твердотельный накопитель для увеличения скорости аналогично SSHD , но на основе файловой системы.

При этом все базы данных различны: по структуре, по объему и по шаблонам использования. Лучший способ настроить как аппаратное, так и программное обеспечение - это протестировать ваши конкретные c варианты использования и профилировать результаты. Там нет серебряных пуль, и это включает в себя параметр «индекс на SSD».

...