Назад | Перейти на главную страницу

Помогает ли несколько файлов в SQL Server при использовании RAID уменьшить конфликты при росте и блокировке файлов?

Я читал вокруг и создается впечатление, что если вы используете RAID, то использование нескольких файлов SQL Server в файловой группе не приведет к дальнейшим улучшениям, а преимущества будут чисто административными (если вы начали исчерпывать пространство или хотели разделить данные на управляемые куски для резервного копирования / балансировки данных вокруг вашей большой серверной комнаты).

Однако, будучи достаточно подкованным программистом, вполне возможно предположить, что даже для небольших баз данных SQL Server будет выполнять операции роста и блокировки (для записи) на основе ЛОГИЧЕСКОГО файла, поэтому даже если вы используете RAID, кажется, что имеет смысл иметь несколько файлов в группе файлов для балансировки операций ввода-вывода, или время, необходимое для восстановления данных из распределенных файловых групп, перевешивает преимущества уменьшения блокировок?

Я также знаю, что поведение и преимущества могут отличаться для таблиц / индексов / журнала.

Есть ли хороший сайт, который описывает преимущества нескольких файлов, когда RAID уже установлен?

Я недавно ответил на нечто подобное «Несколько файлов данных и несколько групп файлов»

Это также довольно сложно и сложно дать краткий ответ. Это помогает, зная, как SQL Server получает доступ к данным: см. «Основы ввода-вывода SQL Server 2000» который все еще в силе

Производительность чтения зависит от ОЗУ. Вам не нужно обращаться к диску для чтения данных: если вы это сделаете, у вас недостаточно оперативной памяти. В старые времена до 64-битной версии, если у вас была база данных на 500 ГБ, вы могли бы уместить только 64 ГБ ОЗУ, поэтому вы бы разбивали индексы или что-то в этом роде.

Изменить: вам не часто нужна вся БД в ОЗУ, и когда вам нужно ее прочитать, она должна оставаться в кеше до тех пор, пока не будет выселена.

Производительность записи зависит от объема LDF. Посмотрите на запись с упреждающей записью в статье выше

Вы делать разделить файл базы данных для возможности восстановления в случае сбоя тома. Имея хороший план резервного копирования / восстановления, вы можете работать с MDF и LDF отдельно.

Изменить: что, если ваш контроллер диска выйдет из строя? Все ли ваши диски от одного производителя / партии / прошивки? Что, если 2 диска выйдут из строя в RAID 5?

Если у вас есть несколько файлов на одном томе, любой запрос на чтение займет больше времени, чем чтение одного большого файла, часто непрерывно. Вот почему файловый сервер и серверы баз данных обычно строятся по-разному.

Вы не можете найти хороший сайт, потому что это еще не сделано: как вы заметили, каждый имеет тенденцию говорить «нет» нескольким файлам в одной файловой группе.

Вы получаете больше выравнивание разделов и правильное форматирование NTFS с кластерами 64kа