Используя две группы файлов на одном RAID 10

Попробуйте очистку, может получить его от Knoppix или Ubuntu или большинства главных дистрибутивов Linux. Я рекомендовал бы выполнить его на диске, а не разделе, если Вы можете для добавленной паранойи.

1
задан 1 September 2009 в 16:45
6 ответов

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

Рассмотрите мой вклад в этот вопрос: Почему использование ЦП таким образом асимметрично на нашем поле SQL Server с 8 CPU?

Мы осторожны для установки нашего самого большого чаще всего используемые таблицы, чтобы быть на группах файлов с несколькими файлами в них. Одно из улучшений производительности этого - то, что SQL распараллелит запросы в каждый файл в группе файлов - поэтому, если BigOverUsedTable будет на FileGroup1, и FileGroup1 имеет четыре файла в нем, и Ваш DB имеет 8 ядер, то он будет на самом деле использовать четыре ядра, чтобы сделать "избранное большое перемалывание чисел противный запрос от BigOverUsedTable" - тогда как иначе, он будет только использовать один ЦП. Мы получили эту идею из этой статьи MSDN:

http://msdn.microsoft.com/en-us/library/ms944351.aspx

От TFA:

"Группы файлов используют параллельные потоки для улучшения доступа к данным. Когда к таблице получают доступ последовательно, система создает отдельный поток для каждого файла параллельно. Когда система выполняет сканирование таблицы на предмет таблицы в группе файлов с четырьмя файлами, она использует четыре отдельных потока для чтения данных параллельно. В целом использование нескольких файлов на отдельных дисках улучшает производительность. Слишком много файлов в группе файлов могут вызвать слишком много параллельных потоков и создать узкие места".

У нас есть четыре файла в нашей группе файлов на 8 базовых машинах из-за этого совета. Это удается хорошо.

2
ответ дан 3 December 2019 в 19:58

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

1
ответ дан 3 December 2019 в 19:58
  • 1
    Mmm Windows' очередь физического диска.. соображение I hadn' t мысль, однако I' m не убежденный it' s достаточно хорошая причина отдельно. –  PCurd 26 August 2009 в 17:32
  • 2
    Наверное, нет. Вы могли всегда использовать один массив RAID 10 и две группы файлов. Тот путь как система выращивает it' s намного легче переместить ту вторую группу файлов прочь в другой массив. –  mrdenny 26 August 2009 в 18:39

Если у Вас есть время, то можно всегда пробовать его и видеть вместо предположения!

Я не вижу воспринятого увеличения производительности с 2 виртуальными дисками, более чем 1 виртуальный диск, но наличие дополнительных файлов и групп файлов всегда хорош для того, чтобы соответствовать требованиям завтрашнего дня.

Наличие Ваших индексов в отдельной группе файлов является хорошей практикой, затем можно всегда перемещать группу файлов в новый набор шпинделей для дополнительного повышения производительности!

0
ответ дан 3 December 2019 в 19:58
  • 1
    I' d нравится делать это, но машину doesn' t имеют достаточно дисков для этого - идущий в SAN, и т.д. включил бы разделение файлов данных так или иначе. –  PCurd 26 August 2009 в 17:31
  • 2
    ' разделение данных files' не легкий подвиг в SQL-сервере. –  Nick Kavadias 26 August 2009 в 18:14

Не будет никакого измеримого преимущества скорости, но, как указано другими, наличие двух групп файлов является более соответствующим требованиям завтрашнего дня понятием.

0
ответ дан 3 December 2019 в 19:58

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

Если у Вас есть 4 физических диска, и Вы на самом деле хотите получить максимум possibile производительность от них (*), вот то, как сделать это:

  • Создайте 2 массива RAID 1, каждый использующий 2 диска.
  • Создайте единственный объем на каждом массиве.
  • Создайте группу файлов на каждом объеме.
  • Оптимизируйте свою базу данных для максимального параллелизма.

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

(*) Это действительно - усовершенствованная оптимизация, в большинстве случаев это - просто излишество, поскольку единственная группа файлов / единственный объем/единый массив будут намного более просты справиться и достигнут очень похожего perfomarnce, если Вы на самом деле не сможете параллелизировать свой ввод-вывод.

0
ответ дан 3 December 2019 в 19:58

Опция 2 очень вероятно приведет к большему количеству физического движения головок диска, поскольку они должны пойти назад и вперед между этими двумя логическими дисками. Это может или не может сместить преимущества, полученные очередями отдельного диска. Только тесты с помощью среды могли дать окончательные результаты.

0
ответ дан 3 December 2019 в 19:58

Теги

Похожие вопросы