Re[2]: Еще раз о дисковой подсистеме
Илья Винокуров
ilvin на mail.ru
Чт Авг 18 15:32:43 UTC 2011
Здравствуйте, Игорь!
> Для одного потока RAID10 будет работать со скоростью всех дисков:
> 1) процесс читает 1М,
> 2) с каждого диска ядро читает по 128К,
> 3) диски подвели головки к нужному трэку,
> 4) и прочитали в свой кэш целый трэк - 1-2М,
> 5) в ядро уходит блоки по 128К,
> 6) ядро читает следующие 128К,
> 7) они уже не читаются с диска, а берутся из кэша диска,
> 8) goto 4, до тех пор пока кэш не будет исчерпан.
>
> В случае нескольких потоков пункты 1-5 те же самые, а на пункте 6 данные,
> как правило, вытеснены другими потоками. То есть, мы заставляем диски
> двигать головы на каждое чтение, что практически аналогично времени
> случайного доступа к одному диску.
chunk-size в 1 мегабайт и эффект должен нивелироваться. Желательно перед этим
посмотреть размер трека у винта...
> Замечательно, какие софтовые рэйды позволяют увеличить страйп до 1М ?
Ну каким-то способом они сделали это. И даже провели нагрузочное тестирование:
http://louwrentius.blogspot.com/2010/05/raid-level-and-chunk-size-benchmarks.html
Я так подозреваю, что это mdadm...
С почтением,
Илья Винокуров.
Подробная информация о списке рассылки nginx-ru