Итак, я установил 4x 450 ГБ Hitachi 15K в Raid 10 (Dell T610 + H700 + mem + аккумулятор).
У меня очень простой вопрос. Скорость чтения ужасная, я также установил Raid 0 (2x 3 ТБ WD Red), и скорости примерно 330 МБ / с для чтения и 310 МБ / с для записи.
С 4-мя дисками SAS 15K 450 ГБ в RAID10 я получаю только 300-360 МБ / с для чтения и 330 МБ / r для записи: /, насколько мне известно, это должно быть ~ 500-600 МБ / с для чтения и 300 МБ / с для записи. ..
Я использую новую прошивку для H700, новый BIOS для Dell T610, Windows Server 2008 R2.
Всего система имеет 1x 120 ГБ Vertex 3 для ОС 2x 3 ТБ 7K Raid 0 (330 МБ / с и 310 МБ / с) 4x 450 ГБ 15K Raid 10 (300–360 МБ / с и 330 МБ / с)
Все тесты выполнены на CrystalDiskMark
Что происходит ???
Когда я пытался копировать данные между дисками, я иногда вижу очень высокие передачи, но только в течение нескольких секунд, обычно это ~ 190-250 МБ / с :(
Это недопустимая низкая производительность, и я хотел бы спросить вас, что мне следует проверить ...
У этого сервера только одна роль, SQL Server (голый металл) с 1x базой данных ~ 2,5 ТБ (~ 150 млн строк) (база данных находится в рейде 2x 3 ТБ), а вторая база данных должна быть развернута на 4x 450 ГБ Raid 10 (~ 500-600 ГБ (750 м ряды)) ...
Хорошо, я обнаружил здесь проблему !!!
Почему-то при чтении используется всего 2 диска !!! (мигают только 2 диска)
Это 4x Raid 10, поэтому он должен использовать 4x диска, что я здесь делаю не так ???
Это Dell Perc H700
Что касается последовательной производительности, как для чтения, так и для записи, RAID10 из четырех дисков ведет себя точно так же, как RAID0 из двух дисков. Вы сами видите это, когда мигают всего два диска. Это ожидаемое поведение.
Это так, потому что RAID1 в стандартной комплектации не увеличивает скорость последовательного чтения. (думал о том же 11 лет назад и получил этот ответ разработчика FreeBSD Павла Якуба Давидека).
Дело в том, что в стандартном RAID1 на обоих дисках одни и те же данные. Поэтому, если вы читаете часть с одного диска и часть с другого, вам придется фактически пропускать (искать) непрочитанные части. Но на самом деле пропуск его так же дорого обходится с точки зрения производительности, как и чтение данных. Таким образом, вы получаете только выигрыш в производительности от RAID0 в своей настройке. (Я предполагаю, что ваши диски читают около 150-180 МБ / с каждый.)
Есть методы, которые помогают увеличить скорость чтения в массиве RAID1. Например, вы можете взглянуть на расположение (дальнее и смещение) в драйвере Linux md. Это хорошо объяснено в этот ответ.