Я спросилэтотвопрос на dba.stackexchange
Поскольку у нас есть 800 ГБ памяти, а базы данных занимают всего ~250 ГБ, мы планируем поместить файлы tempdb сервера SQL на RAMDisk, выделив 100 ГБ для его файлов данных и журналов, вместо текущих SSD-накопителей (SAN Tier 1), поскольку наше приложение поставщика очень интенсивно использует tempdb.
Лучше ли это, чем карты PCI-E? Нас интересует только скорость, а не сохранение, поскольку tempdb удаляется и создается заново каждый раз при перезагрузке SQL.
И мы предпочитаем сертифицированных поставщиков WQHL. Есть ли какие-то, которых следует выбирать или избегать?
решение1
TempDB не удаляется/не создается SQL Server.данныевнутри он не сохранился, нофайлыSQL Server ожидает, что они будут чистыми при запуске, как и стандартный набор данных и файлов журналов базы данных.
Если вы создадите файлы TempDB на RAM-диске, они будут уничтожены при перезапуске, что приведет к сбою SQL Server, поскольку для этого требуется, чтобы база данных находилась в чистом состоянии.
Я думаю, теоретически, можно выстроить какую-то логику.
- который берет «чистый» набор базовых файлов TempDB .mdb, скопированных во время выключения SQL Server
- и восстанавливает их на RAM-дискедоSQL Server запускается
Но это было бы неудобно и подвержено ошибкам, поскольку вам пришлось бы убедиться, что копирование файла завершено до запуска службы ядра SQL Server.
Я использую и рекомендую «Контрольный список настройки SQL Server» изБрент Озар, первый спасателькомплект при сборке SQL Server. Он рассматривает лучшие практики для сборок SQL Server.