При выполнении некоторых тестов производительности записи на 3-стороннее зеркало RAID 1 на базе SSD, работающее на mdadm, оказывается, что мы испытываем значительные потери при записи, примерно в 2,2 раза медленнее, чем при выполнении того же теста только на одном отдельном диске. В этом тесте мы читаем и записываем на одни и те же базовые физические диски, потому что это имитирует наш реальный тестовый пример, который нас интересует.
Это замедление связано с ограничением скорости SATA III или чем-то еще? Я удивлен, что RAID 1 будет иметь штраф за запись, потому что я думал, что он может записывать на все три диска одновременно с той же скоростью, что и на один из них.
All three drives present:
dd if=/dev/md3 of=test.file bs=1048576 count=37193
...207.748 s, 188 MB/s
Just two drives present (i.e. normal two-drive RAID 1)
dd if=/dev/zero of=test.file bs=1048576 count=37193
...119.016 s, 328 MB/s
Just one drive present (no redundancy)
dd if=/dev/zero of=test.file bs=1048576 count=37193
...93.794 s, 416 MB/s
Похоже, что все три SSD находятся на одном контроллере, и вы достигли максимальной скорости SATA III:
Интерфейсы SATA третьего поколения работают с собственной скоростью передачи 6,0 Гбит / с; с учетом кодирования 8b / 10b максимальная скорость передачи без кодирования составляет 4,8 Гбит / с (600 МБ / с). (источник)
Ваш тест на запись на все три диска одновременно, так что 188 МБ / с на самом деле составляет 564 МБ / с, что немного меньше максимальной скорости.
Если вы можете переместить один или несколько SSD на отдельные контроллеры, это может помочь.
Это ограничение, с которым вы сталкиваетесь, является одной из причин, почему хранилища на основе флэш-памяти PCIe появляются во все большем количестве высокопроизводительных систем.