Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Производительность Stripe Size, Cluster size  [new]
Mitro
Guest
Крик души:
Расскажите кто-знает,
как влияет размер кластера и размер страйпа на рейде
на производительность сервера.
21 дек 03, 12:41    [468537]     Ответить | Цитировать Сообщить модератору
 Re: Производительность Stripe Size, Cluster size  [new]
ziktuw
Member

Откуда:
Сообщений: 3552
Очень влияет. Разница производительности может достигать 10 крат.

Оптимальные размеры (и страйпа и юнита, они должны иметь одинаковый размер):
для баз с преобладанием операций записи (OLTP) - 64-128 кБ
для баз с преобладанием операций чтения (OLAP) - 128-256 кБ

если размер страйпа окажется меньше 8кБ, то для базы MSSQL это полная жопа, жди беды с развалом базы и потери данных.
21 дек 03, 22:36    [468672]     Ответить | Цитировать Сообщить модератору
 Re: Производительность Stripe Size, Cluster size  [new]
ququ
Member

Откуда: ухожу, ухожу, ухожу...
Сообщений: 113
Очень нужная информация, спасибо. Не укажите ссылку на первоисточник?
22 дек 03, 10:15    [468887]     Ответить | Цитировать Сообщить модератору
 Re: Производительность Stripe Size, Cluster size  [new]
ziktuw
Member

Откуда:
Сообщений: 3552
Источника 3:

1. Исследования фирмой HP влияния на производительность размеров страйпа и юнита для их raid-контролеров. Соответственно, я держал в руках этот документ с графиками.
2. Собственные эксперименты, проведенные моей конторой, которые дали такой практический результат: при увеличении размера страйпа с 8 до 64 кБ производительность дисковых операций MSSQL увеличилась примерно в 10 раз. Больше увеличить размер страйпа не смогли - контролер не позволил.
3. Видел в ньюсах и веб рекомендации специалистов MS. Урлы, естественно, в голове не остались.
22 дек 03, 13:04    [469230]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Производительность Stripe Size, Cluster size  [new]
Mike Lozovsky
Member

Откуда:
Сообщений: 1
Гражданам озабоченным сабжевым вопросом, до сих пор постят ссылку на данную ветку...

Прочел, много думал.. И возжелав убить всех зайцев сразу, решил установить размер страйпа и кластера в 128К. Однако, как выполнить задуманое на NTFS?

Другой вопрос - как будет вести себя конструкция вида: страйп 128К, кластер 64К?
6 сен 05, 14:33    [1850608]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Производительность Stripe Size, Cluster size  [new]
Odavid
Member

Откуда: Нижний Новгород
Сообщений: 1
Так же, как и другие.
Поставьте 512 Б размер кластера NTFS и 64 КБ страйп контроллера.
Ну будут 128 пакетов данных медленного диска HDD писаться/читаться один раз на более быстром контроллере.
Считаю, что скорость зависит от скорости дисков, скорости и оптимизации самого контроллера, объема кэша контроллера. А также от вида RAID.
И как это "увеличилась производительность MSSQL"? Да еще и в 10 раз? MSSQL сам ничего не пишет на диск, за него это делает ОС. Или у вас MSSQL оперирует минибазами по 64 КБ?
И Вы в курсе, что MS рекомендует для своих NTFS ОС размер 512 БАЙТ?
А размер страйпа RAID-контроллера измеряется в КБАЙТ.
и ничег оудивительного, что увеличивая размер СТРАЙПА (и только его!) на контроллере позволили данным быстрее перемещаться по шинам, т.е. постепенно выбирали полностью полосу пропускания.
Так что если Вы работаете с видео и постоянно туда-сюда пишете видеоданные (которые много-много-гигабайтные) - то Ваш размер страйпа максимальный (скажем, 256 КБ).
А если с базой - то оставьте по умолчанию страйп (например, 64 КБ) и думайте лучше, как оптимизировать систему в целом.
А если хочется узнать оптимальное значение СТРАЙПА для контроллера, то поиграйтесь значениями и посмотрите PerfMon'ом количество запись-чтение на HDD: чем больше в сек операций - тем лучше. Максимальное значение - Ваш размерчик :) Только вот если жесткий диск загрузите под завязку - пеняйте на себя :) Скорость изменится в разы. Только в другую сторону - уменьшится. И тогда придется менять диски на более быстрые.....
4 дек 07, 13:17    [5000579]     Ответить | Цитировать Сообщить модератору
 Re: Производительность Stripe Size, Cluster size  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5503
Блог
Odavid
И Вы в курсе, что MS рекомендует для своих NTFS ОС размер 512 БАЙТ?
А Вы в курсе, что для работы с БД они рекомендуют 64К? :)

И при чем тут видео?

А MSSQL - да, у него большая часть чтений идет блоками по 64К.
4 дек 07, 13:46    [5000793]     Ответить | Цитировать Сообщить модератору
 Re: Производительность Stripe Size, Cluster size  [new]
AAron
Member

Откуда: Москва
Сообщений: 4324
Odavid
Так же, как и другие.
Поставьте 512 Б размер кластера NTFS и 64 КБ страйп контроллера.
Ну будут 128 пакетов данных медленного диска HDD писаться/читаться один раз на более быстром контроллере.
Считаю, что скорость зависит от скорости дисков, скорости и оптимизации самого контроллера, объема кэша контроллера. А также от вида RAID.
И как это "увеличилась производительность MSSQL"? Да еще и в 10 раз? MSSQL сам ничего не пишет на диск, за него это делает ОС. Или у вас MSSQL оперирует минибазами по 64 КБ?
И Вы в курсе, что MS рекомендует для своих NTFS ОС размер 512 БАЙТ?
А размер страйпа RAID-контроллера измеряется в КБАЙТ.
и ничег оудивительного, что увеличивая размер СТРАЙПА (и только его!) на контроллере позволили данным быстрее перемещаться по шинам, т.е. постепенно выбирали полностью полосу пропускания.
Так что если Вы работаете с видео и постоянно туда-сюда пишете видеоданные (которые много-много-гигабайтные) - то Ваш размер страйпа максимальный (скажем, 256 КБ).
А если с базой - то оставьте по умолчанию страйп (например, 64 КБ) и думайте лучше, как оптимизировать систему в целом.
А если хочется узнать оптимальное значение СТРАЙПА для контроллера, то поиграйтесь значениями и посмотрите PerfMon'ом количество запись-чтение на HDD: чем больше в сек операций - тем лучше. Максимальное значение - Ваш размерчик :) Только вот если жесткий диск загрузите под завязку - пеняйте на себя :) Скорость изменится в разы. Только в другую сторону - уменьшится. И тогда придется менять диски на более быстрые.....

а вы уверены, что большое количество операций в секунду это благо? Я вот считал, что чем больше переданных данных, тем лучше. так можно поставить 512Б/512Б и кричать от счастья, а производительность будет никакая.
12 мар 08, 01:00    [5396963]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить