Тести масштабованості raid

Тести масштабованості raid

Все більше ентузіастів і звичайних користувачів переходять на масиви RAID, головним чином, через збільшення продуктивності, так як про підвищення надійності зберігання даних думають не всі. Саме тому більшість встановлених масивів складається всього з двох жорстких дисків, які об'єднані в масив RAID 0. Але хіба ви не цікавилися, як масштабується продуктивність масивів RAID у міру збільшення числа жорстких дисків? Чи варто збільшувати їх число? Коли зростання числа вінчестерів впирається в "вузьке місце"? Щоб відповісти на ці питання, ми вирішили провести тести масштабування RAID.

Наша мета була простою, хоча і амбітної: протестувати всі популярні режими RAID з мінімальним числом приводів, після чого поступово збільшувати число дисків до восьми. Як ми вважаємо, саме таким є максимальне число вінчестерів для ПК ентузіастів і серверів початкового рівня, оскільки подальше збільшення вимагає спеціальних корпусів або переходу на зовнішні оснащення eSATA. Крім того, для переходу на професійні RAID-контролери з числом портів більше восьми знадобляться багатоканальні кабелі і дорогі оснастки, які іноді називають "mini SAS", а не окремі кабелі на кожен вінчестер.

Наші тести містять всі результати, які дозволяють знайти хороший компроміс між вимогами додатків і числом жорстких дисків. Ми вимірювали час доступу, продуктивність інтерфейсу, максимальну, мінімальну і середню швидкість читання і запису. Ми також включили тести продуктивності введення / виведення для типових сценаріїв, таких, як файлові сервери, web-сервери, сервери баз даних і робочі станції.

Дуже легко створити високошвидкісний масив RAID, який забезпечить як високу продуктивність введення / виводу, так і фантастичну пропускну здатність. Все, що потрібно, - чергувати читання / запис даних по тому числу жорстких дисків, яке вам підійде (або яке може підтримати контролер). Материнські плати зазвичай мають до шести портів SATA з підтримкою базових режимів RAID, а професійні контролери підтримують до 8, 12, 16 або навіть 24 портів. Але слід пам'ятати, що масив RAID 0 втрачає всі дані, якщо хоча б один з складових його жорстких дисків виходить з ладу. Тому RAID 0 підходить для зберігання тимчасових файлів, але ніяк не постійних.

Поширеним підходом для досягнення високої продуктивності і, разом з тим, надійності є масиви RAID 0 + 1, коли Віддзеркалюються масив з чергуванням з двох або більшої кількості приводів. Або RAID 5, який розподіляє дані по всім жорстких дисків, крім одного, а контролер потім вираховує інформацію надмірності всього масиву і зберігає її на що залишився жорсткий диск. Але щоб цей жорсткий диск не став "вузьким місцем", інформація надмірності черзі записується на всі доступні жорсткі диски (інакше ми отримуємо масив RAID 3). У даній статті ми розглянемо масиви RAID 0, RAID 1 і RAID 0 + 1.

RAID 0: чергування (висока продуктивність)

A, B і C - три різні блоки одного файлу. У масиві RAID 0 контролер буде розподіляти блоки певного розміру (зазвичай від 8 до 32 кбайт) за всіма доступними жорстких дисків масиву. Це дозволяє підвищити швидкості запису і читання, але RAID 0 чутливий до дефектів і збоїв накопичувачів. RAID 0 працює з двома або більшою кількістю жорстких дисків.

RAID 1: віддзеркалення (висока надійність)

RAID 1 вимагає двох жорстких дисків. Контролер записує всю інформацію одночасно на обидва вінчестера, тобто ви отримуєте повну надмірність даних. Якщо один жорсткий диск вийде з ладу, всі дані збережуться на другому. Після заміни збійного приводу контролер відновить масив RAID 1. Деякі RAID-контролери прискорюють швидкість читання RAID 1, зчитуючи дані одночасно з двох вінчестерів.

RAID 1 - найпростіший і ефективний спосіб створення захищеного сховища. Все, що вам потрібно, - два жорстких диска і контролер з підтримкою простих режимів RAID (зазвичай такі контролери вбудовані на материнських платах вартістю вище $ 100). Коли ви встановлюєте Windows, то слід на першому етапі вставити в дисковод дискету з драйверами, щоб установник розпізнав дисковий масив. Після цього для операційної системи і користувача масив RAID виглядає як один диск. Якщо ви все хочете зробити правильно, то розумно встановити знімні оснащення за ціною $ 20-40. Вони дозволять легко і швидко замінити що вийшов з ладу жорсткий диск. Але будьте уважні і не витягнете робочий!

Деякі контролери можуть віддзеркалювати дані на більш ніж один жорсткий диск, наприклад, на три або навіть чотири. Якщо ви настільки трепетно ​​ставитеся до захисту даних, то не слід забувати про якісний блок живлення, блок безперебійного живлення (UPS) із захистом від піків напруги, та й про стабільному робочому оточенні теж. Гарне охолодження жорстких дисків збільшує їх термін експлуатації. Якщо цього мало, то можна вдатися до допомоги масиву RAID 5 + 1, який виконує віддзеркалення RAID 5 з надмірністю. Втім, ми вважаємо, що ці зміни набагато перевищують потреби звичайних користувачів.

RAID 0 + 1: віддзеркалення і чергування (висока продуктивність і надійність)

У конфігурації RAID 0 + 1 спочатку створюється масив з чергуванням з двох або більшої кількості приводів, після чого вся структура Віддзеркалюються на це число додаткових жорстких дисків. В результаті виходить одночасно і віддзеркалення, і чергування. Конфігурація RAID 1 + 0 зворотна: спочатку створюються масиви RAID 1, після чого вони об'єднуються в масив RAID 0 з чергуванням. По частині продуктивності між режимами RAID 0 + 1 і RAID 1 + 0 немає різниці. Більшість контролерів зазвичай підтримують RAID 0 + 1.

Масив RAID 0 + 1 забезпечує продуктивність конфігурації RAID 0, поєднуючи її з надійністю RAID 1. Цілком зрозуміло, що для такої конфігурації буде потрібно не менше чотирьох жорстких дисків. Ми протестували RAID 0 + 1 на чотирьох, шести і восьми жорстких дисках.


Натисніть на картинку для збільшення.

Об'єднання декількох жорстких дисків в RAID 0 ефективно підвищить швидкість читання і запису. Але в дійсності зростання виходить не лінійний, проте кожен додається вінчестер все ж дає приріст продуктивності, що можна бачити в розділі тестів нашої статті.

Цілком зрозуміло, що збільшення числа жорстких дисків призводить до поліпшення швидкостей передачі даних і продуктивності введення / виведення, оскільки масив поєднує пропускну здатність і операції введення / виведення всіх вінчестерів. Втім, обмеження все ж є, і перше стосується RAID-контролера: не всі продукти здатні пропускати через себе сотні мегабайт даних. Друге обмеження пов'язане з інтерфейсом контролера. Сьогодні контролери мають, як правило, інтерфейс PCI-X зі швидкістю до 533 Мбайт / с або PCI Express x4 (1 Гбайт / с в одну сторону) і x1 (250 Мбайт / с в одну сторону). Слід переконатися, що пропускна здатність інтерфейсу буде, по крайней мере, на 50% вище, ніж у передбачуваного масиву RAID, оскільки реальна швидкість інтерфейсу нижче.

Нарешті, число жорстких дисків зазвичай негативно позначається на часі доступу, оскільки на отримання невеликої кількості інформації потрібно зібрати шматочки з усіх жорстких дисків масиву RAID. Кожен вінчестер буде позиціонувати головку з певною затримкою, тому середній час доступу до файлу буде ближче до максимального часу доступу всіх жорстких дисків. Нарешті, протокол RAID теж вносить затримки. Тому час доступу збільшується з 12-14 мс до 20 мс і вище.

Втім, у міру збільшення запитів вводу / виводу масив швидко обійде поодинокі жорсткі диски, так як почнуть проявляти себе такі функції, як "рідна" чергу команд (NCQ) і кеш-пам'ять контролера. Для баз даних має сенс вибирати контролер з великим об'ємом кеш-пам'яті (і резервною батареєю), щоб підвищити пропускну здатність і знизити час доступу до часто запитуваною блокам.

Тести масштабованості raid

Тести масштабованості raid

Материнська плата. Натисніть на картинку для збільшення.

Тести масштабованості raid

Тести масштабованості raid

Тестові жорсткі диски: Samsung SpinPoint T166, HD321KJ (320 Гбайт)

Тести масштабованості raid

Для проекту ми хотіли взяти жорсткі диски з розумною продуктивністю. Ми могли б взяти все вінчестери Raptor WD1500 на 10 000 об / хв, але тоді інші проекти лабораторії залишилися б без жорстких дисків. Тому ми вирішили взяти накопичувачі для масового ринку, а саме: Samsung SpinPoint T166, оскільки вони забезпечують прекрасну швидкість передачі при низькій ціні. Ми вирішили не брати 500-Гбайт версії (HD501LJ), вибравши 320-Гбайт моделі (HD321KJ). Причина проста: ми не хотіли проводити тести тижнями! Зокрема, тест h2benchw, розроблений журналом c't, займає тим більше часу, ніж повільніше і об'ємніше є накопичувач.

Samsung SpinPoint T166 є сучасною лінійкою зі швидкістю обертання шпинделя 7 200 об / хв, кешем 8 Мбайт і інтерфейсом SATA / 300 з підтримкою NCQ. Хоча найближчим часом має з'явитися нова лінійка SpinPoint HD102UJ з ємністю до 1 Тбайт.

Тести масштабованості raid

Тести масштабованості raid

Контролер: Areca ARC-1220

Тести масштабованості raid

В даний час ми готуємо огляд RAID-контролерів, тому взяли модель, яка дає високу продуктивність. Контролер ARC-1220 від Areca оснащений вісьмома портами SATA / 300, що підтримують NCQ, і має вбудовані 256 Мбайт пам'яті DDR SDRAM, а для розрахунків XOR / парності використовує движок Intel IOP333. Інтерфейс у контролера x4 PCI Express, висота половинна, так що його можна встановлювати в низькопрофільні стійку сервера.

Ми вибрали цю карту ще й з причин простою роботи і можливості швидко форматувати масиви RAID. Втім, ми впевнені, що більшість інших 8-портових контролерів SATA RAID впорається із завданням нітрохи не гірше.

Тести масштабованості raid

Системне апаратне забезпечення

Всі тести проводилися з настройками контролера за замовчуванням.

Враження від тестування

Всі тести проводилися з числом приводів Samsung HD321KJ від двох до восьми, але з заповненням всього 80 Гбайт. Ми не стали заповнювати всі 320 Гбайт на вінчестер, бажаючи скоротити час тестів. В результаті зменшився час тестування, а жорсткі диски працювали з максимальною продуктивністю, оскільки вони не записували дані на внутрішні доріжки, у яких найменша швидкість.

На тест з одного конфігурацій RAID у нас йшло від чотирьох до шести годин, включаючи тести пропускної здатності, часу доступу і введення / виводу. Для всіх типів масивів, крім RAID 0, потрібен час ініціалізації близько 20 хвилин.

Ми виявили цікаву особливість, що стосується блоку живлення. Спочатку ми підключили кілька жорстких дисків до однієї лінії живлення. Конфігурація працювала добре, оскільки жорсткі диски отримували достатньо енергії для розкрутки, і ми не виявили проблем. Втім, в масиві RAID під час тестів вийшов з ладу один жорсткий диск. Причиною ми порахували вінчестер, але після повторення проблеми стали звинувачувати контролер. Потім ми розділили харчування жорстких дисків за трьома різних лініях, і проблема зникла.

Тести масштабованості raid

Хоча у одного вінчестера HD321KJ середній час доступу становить більше 14 мс, ми отримали навіть менший час доступу, оскільки використовували всього 80 Гбайт з доступних 320 Гбайт. Втім, витрати протоколу і час, що йде на позиціонування головок, вельми істотні, час доступу зростає в міру збільшення числа приводів. Максимальний результат в 30 мс можна назвати швидким, але на продуктивність введення / виводу великі затримки впливають слабо.

Пропускна здатність інтерфейсу

Тести масштабованості raid

Тести масштабованості raid

На графіку явно видно, як добре масштабуються масиви RAID при додаванні жорстких дисків. Втім, пропускна здатність припиняє збільшуватися після додавання в масив RAID 0 п'ятого жорсткого диска. Цілком очевидно, що якийсь із компонентів нашої системи став "вузьким місцем". Будь то RAID-контролер або материнська плата, але з 6, 7 і 8 вінчестерами ми не отримали очікуваного приросту. В теорії інтерфейс PCI Express x4 здатний передавати 1 Гбайт / с в обидва боки.

Тести масштабованості raid

Швидкість запису виразно нижче максимальних результатів, отриманих в тесті читання. Як бачимо, контролер не може видати швидкість вище 275 Мбайт / с.

Продуктивність введення / виведення (RAID 0)

Тести масштабованості raid

Тести масштабованості raid

Тести масштабованості raid

Тести масштабованості raid

Продуктивність введення / виведення є сильною стороною контролера Areca, оскільки кожен додається вінчестер збільшує її майже лінійно.

Продуктивність введення / виведення (RAID 0 + 1)

Тести масштабованості raid

Тести масштабованості raid

Тести масштабованості raid

Тести масштабованості raid

Тести масштабованості raid

Створити ідеальне оточення для високопродуктивного масиву RAID не так-то просто. Недостатньо просто взяти комплектуючі та зібрати їх в систему. Наша система рівня робочої станції з RAID-контролером Areca ARC-1220 на папері виглядає ідеально, але вона "видихається" на пропускній спроможності 500 Мбайт / с з інтерфейсом менш 400 Мбайт / с для читання і 275 Мбайт / с для запису. Дана система впирається у внутрішні "вузькі місця" вже при п'яти жорстких дисках. Втім, як нам здається, конфігурація RAID на іншій платформі, оптимізованої під RAID 0, може масштабироваться ще краще. У другій частині нашого огляду ми покажемо, що контролер Areca добре підходить для масивів RAID 5 і RAID 6, а не для RAID 0 і RAID 1.

Наша тестова система виявилася ідеальною основою для чудових результатів у тестах введення / виведення, коли кожен додатковий жорсткий диск піднімав продуктивність. Очевидно, що Areca ARC-1220 добре підходить для серверів баз даних або оточень з високим навантаженням введення / виведення.

Хоча швидкість передачі даних добре масштабується до порога в півдесятка приводів, середня час доступу погіршується. Залежно від розташування головок у кожного приводу, час доступу масиву RAID близько до найдовшого часу доступу всіх приводів, свій внесок вносять і затримки протоколу. В результаті дисковий масив з багатьох жорстких дисків не завжди розумний для high-end ПК для ентузіастів. У найближчому майбутньому для високопродуктивних масивів розумним вибором можна буде вважати твердотільні накопичувачі. А поки можна рекомендувати масив з жорстких дисків WD Raptor на 10 000 об / хв, хоча обійдеться він відчутно дорожче.

КІНЕЦЬ СТАТТІ