Статьи

Що диск прийдешній нам готує або жорсткі диски великого об'єму в RAID рівнів 5 і 6

Еволюція жорстких дисків і майбутня революція

У 2005 році був випущений жорсткий диск з рекордним обсягом 500 ГБ, котрий використовував технологію поздовжньої магнітного запису У 2005 році був випущений жорсткий диск з рекордним обсягом 500 ГБ, котрий використовував технологію поздовжньої магнітного запису. Максимально досяжна щільність даних при використанні цього методу запису становить близько 150 Гбіт / дюйм². У 2007 році компанія Hitachi GST представила першу в світі модель жорсткого диска об'ємом 1 ТБ, використовуючи технологію перпендикулярного запису , Яка дозволяє досягти щільності даних до 1 Тбіт / дюйм². Восени 2017 року було випущено жорсткий диск об'ємом 14ТБ на базі технології черепичним магнітного запису , При якій ущільнення даних досягається за рахунок того, що запис доріжок проводиться з частковим накладенням один на одного, як черепиця на даху будинків. Це можна робити, тому що ширина області читання менше, ніж ширина записуючої головки диска. Потенційно черепичний запис дозволяє збільшити обсяг жорсткого диска з перпендикулярним записом на 20-25%, тому що збільшується кількість доріжок на дюйм, але ця технологія має і суттєвий недолік - знижену і нестабільну швидкість запису даних. Вже через 2 місяці в кінці 2017 року був представлений 14 ТБ жорсткий диск без накладення доріжок зі звичайною перпендикулярним записом. На момент написання статті, цей диск є найбільш ємним на ринку, хоча в 2018 році можлива поява 16 ТБ дисків на основі традиційної перпендикулярного запису.

У той же час, 2018 рік може стати революційним, як в технологіях жорстких дисків, так і в зростанні їх обсягів. Обидва основні гравці на ринку жорстких дисків - компанії Seagate і Hitachi GST (підрозділ Western Digital) оголосили про готовність представити до кінця 2018 року перші жорсткі диски на технологіях магнітного запису з енергетичної підтримкою. Ідея в тому, щоб використовувати точкове енергетичний вплив на магнітний шар пластини диска для зниження енергетичного бар'єру для запису, що дозволить записуючої голівки намагнічувати дуже дрібні області. Тим самим, щільність запису може бути значно підвищена, що збільшить і місткість жорсткого диска. Компанія Seagate працює з технологією теплової магнітного запису HAMR (Heat-Assisted Magnetic Recording), попередньо розігріваючи лазером місце запису, а Hitachi GST використовує технологію мікрохвильового впливу на магнітний шар MAMR (Microwave-Assisted Magnetic Recording). За відомостями від виробників, використання HAMR дозволить отримати щільність запису до 5 Тбит / дюйм², а MAMR до 4 Тбіт / дюйм². Це дає можливість створювати жорсткі диски стандартного форм-фактора 3,5 "об'ємом 20-40 ТБ і більш. Маркетологами обох компаній розгорнута «битва технологій», що підкреслює свої переваги і недоліки у конкурента, причому Hitachi GST бореться агресивніше. Поки складно передбачити, яка з технологій завоює ринок, чи будуть вони існувати паралельно або одна з них виявиться в результаті переможцем, але вже зараз очевидно, що через рік або менше стануть доступні диски дуже великого обсягу. Більш того, в подальшому обсяги жорстких дисків будуть тільки рости. Але чому ж так важливий об'єм одиничного жорсткого диска? Уявімо, що буде відбуватися, якщо жорсткі диски об'єднати в RAID масив рівнів 5 або 6.

Жорсткі диски в RAID масивах рівнів 5 і 6

RAID масиви з жорстких дисків створюються для підвищення продуктивності та відмовостійкості дискових підсистем серверів і систем зберігання даних. Відмовостійкість в RAID 5 і 6 досягається за рахунок надмірності, тобто частина одержуваного дискового сховища використовується для службових даних парності (XOR parity), які дозволяють при виході з ладу одного або декількох фізичних дисків не втратити дані всього масиву. Так, в RAID масивах рівня 5, можна «втратити» один диск, а в RAID 6 - два диска при повному збереженні даних.

Якщо 8 шт. однакових фізичних дисків об'єднані в RAID 5, то «корисний» об'єм сховища складе суму ємностей 7 шт. дисків. Але зате в разі виходу з ладу одного (причому будь-якого) фізичного диска, дані сховища не втратяться. При цьому RAID масив перейде в т.зв. критичний режим, тобто не зможе забезпечувати відмовостійкість, хоча дані і будуть доступні. Для повернення такого масиву в відмовостійке стан необхідно замінити що вийшов з ладу фізичний диск і запустити процес відновлення масиву, при якому на новий диск записуються дані, які зчитуються з усіх інших жорстких дисків масиву, а також службові дані, що обчислюються з уже лічених.

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

Невідновні помилки читання URE

У специфікаціях жорстких дисків виробник зазвичай вказує значення для кількості невідновних помилок читання (рівень URE - Unrecoverable Read Error або BER - Bit Error Rate), наприклад, URE = 1х на 1014 біт або BER = 1014 біт. Це означає, що в процесі читання з диска зазначеної кількості біт дуже велика ймовірність отримати одну невідновні помилку читання, хоча до цього вже можливо були помилки, відновити дані при яких диску вдавалося за кодами корекції помилок (ECC). Значення рівня URE або BER можна застосувати і для інших носіїв даних:

  • BD / DVD - 1x 1013 біт, тобто 1 помилка при читанні 1,25 ТБ даних
  • Жорсткі диски для ПК - 1x 1014 біт, тобто 1 помилка читання 12,5 ТБ даних
  • Серверні жорсткі диски 7K RPM - 1x 1015 біт, тобто 1 помилка читання 125 ТБ даних
  • Серверні жорсткі диски 10 / 15К RPM - 1x 1016 біт, тобто 1 помилка читання 1,25 ПБ даних
  • Твердотільні диски - 1x 1016-17 біт, тобто 1 помилка читання 1,25-12,5 ПБ даних
  • Серверні твердотільні диски - 1x 1017-18 біт, тобто 1 помилка читання 12,5-125 ПБ даних
  • Магнітні стрічки LTO-7 - 1x 1018-19 біт, тобто 1 помилка читання 125-1250 ПБ даних.

Зверніть увагу, що деякі диски для NAS і диски для відеоспостереження мають значення URE рівне 1x 1014 біт як у дисків для персональних комп'ютерів (ПК). Значним URE рівним 1x 1016 біт можуть похвалитися лише жорсткі диски з числом оборотів шпинделя 10000-15000 в хвилину, але такі диски не бувають ємними. Для дисків великого обсягу рівень URE дорівнює 1x 1015 біт. Іноді виробники, зазвичай Toshibа і WD, вказують для дисків великого обсягу рівень URE рівний 10x 1016 біт , Але це рівносильно значенням рівня URE 1x 1015 біт як в специфікаціях у Hitachi GST або Seagate.

Якщо в RAID масиві рівня 5 складається з 8 шт. 2 TБ жорстких дисків з рівнем URE рівним 1x 1014, вийшов з ладу один диск, то для відновлення відмовостійкості масиву необхідно буде прочитати обсяг 7 шт. 2 TБ дисків, що становить 14 ТБ і теоретично забезпечить збій через невідновні помилки читання і повну втрату всіх даних - адже рівень URE 1x 1014 означає одну помилку читання на 12,5 ТБ. Очевидно, що якщо в масив RAID5 поставити диски більшого обсягу і збільшити їх кількість, то ситуація сильно погіршиться. Саме тому, ще в 2007 році була оголошена «Смерть» RAID рівня 5, починаючи з 2009 року , Через зростання одиничного обсягу жорстких дисків.

Поява ємних дисків з рівнем URE рівним 1x 1015 дещо поліпшило ситуацію і частково «воскресило» RAID5. Так, для відновлення масиву RAID5 з попереднього прикладу, але побудованого на дисках з рівнем URE 1x 1015, можна без проблем прочитати 14 ТБ, тому що рівень помилок дозволяє читати до 125 ТБ, і такий масив RAID5 з 8 шт. 2 TБ жорстких дисків будувати здається виправданим. Але вже в RAID5 з 10 шт. дисків об'ємом 14 ТБ кожен, при відновленні відмовостійкості масиву необхідно прочитати 126 ТБ, що вище рівня URE 1x 1015.

Через зростання обсягу одиничного жорсткого диска, а також те, що апаратні RAID контролери дозволяють об'єднувати в RAID5 і RAID6 до 32 фізичних дисків, навіть RAID рівня 6 може виявитися схильним до збоїв під час відновлення через невідновних помилок читання. Аналітики вже призначили «Кончину» RAID 6 на 2019 рік , Але спробуємо розібратися докладніше.

Імовірність збою в процесі відновлення відмовостійкості RAID 5 і 6

Важливо розуміти, що поява невідновні помилки читання - це подія розподіл усіх, і можна зустріти відгуки, що масив RAID5 на дисках з URE 1x 1014 біт успішно прочитав більше 12,5 ТБ в процесі відновлення відмовостійкості. Насправді, ймовірність збою при відновленні відмовостійкості масиву RAID5 з 8 шт. 2 TБ дисків з рівнем URE рівним 1x 1014 становить 67%, а не 100%, як це здавалося б. Див. Таблицю 1 з вірогідністю збою при відновленні для RAID масивів рівнів 5 і 6, побудованих з 8 шт. 2 ТБ жорстких дисків з різним рівнем URE нижче:

Рівень URERAID 5RAID 6

1x 1014 67,34% 30,77% 1x 1015 10,59% 0,57%

Таблиця 1

Зверніть увагу, зазначені вище значення не говорять про ймовірність збою в RAID масивах 5 і 6 при їх нормальній роботі в відмовостійкості режимі. Для втрати даних в цьому випадку потрібно отримати одночасно 2 збою в масиві RAID5 і 3 збою в RAID6, що набагато менш ймовірні події . Так для RAID5 це близько 0,52%, а для RAID6 близько 0,01%. В Таблиці 1 вказана ймовірність збоїв саме в той період, коли RAID масив знаходиться в критичному режимі і йде процес відновлення його відмовостійкості, який при великих обсягах дисків займає дуже значний час.

Імовірність збою через невідновні помилки читання при відновленні відмовостійкості в RAID масивах рівнів 5 і 6 обчислюється з використанням формули Бернуллі . Вважаємо, що в RAID масиві один диск вже вийшов з ладу, був замінений, і почався процес відновлення відмовостійкості. Згадаймо, що для повної втрати даних при відновленні відмовостійкості в RAID5 достатньо однієї невідновні помилки читання, а для RAID6 двох незалежних помилок. Тоді ймовірність збою через невідновних помилок P буде дорівнює:

P = n! / (K! * (Nk)!) * P ^ k * q ^ ((nk)), де

n - кількість біт, яке потрібно прочитати в процесі відновлення

k - кількість невідновних помилок читання

p - ймовірність помилки читання

q - дорівнює 1-p

Нижче на графіках представлені ймовірності збою в процесі відновлення відмовостійкості масивів RAID рівня 5 і рівня 6 в залежності від кількості дисків (до 32 шт. В масиві), обсягів дисків (1-50 ТБ) і для трьох значень рівня URE (1x 1014, 1x 1015 і 1x 1 016 біт). Картинки відкриваються більші при натисканні, лінією червоного кольору показані значення для самого ємного на момент написання статті жорсткого диска об'ємом 14 ТБ:

Рекомендації по роботі з масивами RAID рівнів 5 і 6

Аналізуючи ці графіки ймовірності, з урахуванням перспективи революційного збільшення одиничного обсягу жорстких дисків, можна сформулювати наступні рекомендації по роботі з RAID 5 і 6:

1. При проектуванні RAID 5 і RAID6 необхідно завжди враховувати ймовірність збою при відновленні відмовостійкості, тому що це критично важливий параметр дискової підсистеми!

1.1. Категорично не рекомендується використовувати жорсткі диски з рівнем URE 1x 1014 біт для роботи в RAID 5 і в RAID6. ГК «ВІСТ» не використовує в своїх серверах і СГД такі диски.

1.2. Масиви RAID 5 і 6 можна будувати на великій кількості дисків з рівнем URE 1x 1016 біт, тому що такі жорсткі диски мають сьогодні малий обсяг.

1.3. Використовувати твердотільні диски з рівнем URE 1x 1016 біт в RAID масивах рівня 5 слід тільки з урахуванням їх кількості в масиві і їх обсягу. Наприклад, в RAID 5: 15 шт. SSD об'ємом 8 ТБ або 30 шт. SSD об'ємом 4 ТБ дають ймовірність збою при відновленні масиву ~ 10%.

1.4. Використання масивів RAID рівня 6 з сучасними дисками великого обсягу може бути небезпечним для даних вже зараз. Так, RAID6 з 16 шт. 14ТБ дисків з URE рівний 1x 1015 має шанс успішно пройти процес відновлення відмовостійкості без втрати всіх даних лише в 50% випадків.

2. При можливості, не слід ставити багато дисків в масиви RAID 5 або 6. Крім ймовірності збою через невідновні помилки, варто враховувати, що час, необхідний для відновлення відмовостійкості на великих за обсягом дисках буде дуже велика і може скласти кілька діб. Дійсно, читання 10 ТБ даних при швидкості 100 Мб / сек займе більше доби, причому реальна швидкість читання, враховуючи, що масив може продовжувати роботу із запитами, може виявитися набагато менше - 30-50 Мб / сек. Чим довше триває процес відновлення масиву, тим більш імовірним стає збій через тривалу підвищеною механічною навантаження на диски.

3. Здавалося б, в ситуації, що складається треба розглядати можливість використання рівнів RAID масивів із значенням відмовостійкості не менше N-3 (вихід з ладу трьох дисків не призводить до втрати даних). Але сучасні апаратні RAID контролери не мають підтримки рівнів RAID з контролером парності (XOR parity) і зі значенням відмовостійкості N-3, подібних, наприклад, рівнем RAID 7.3. Теоретично на апаратній RAID контролері можна отримати відмовостійкість N-3 і навіть більше, але лише з використанням віддзеркалення, наприклад, побудувавши RAID масив рівня 61 - RAID 6 з дзеркал RAID 1. Так, в масиві RAID 61 з 8 шт. дисків по 2 ТБ, побудованому як 4 дзеркала з 2х дисків, дані збережуться навіть у разі виходу з ладу 4х шт. будь-яких дисків, тобто відмовостійкість складе N-4. Але значним недоліком, крім низької швидкості запису даних, у такого масиву буде його корисна ємність. Вона складе лише 6 ТБ - це менше половини суми обсягів 8ми фізичних 2 ТБ дисків масиву, що значно здорожує дискову підсистему, і що далеко не завжди прийнятно.

Хорошою альтернативою використанню RAID 5 і 6 можуть стати RAID масиви рівнів 50 і 60 - комбінація RAID 5 і 6 з RAID 0 (чергування stripe), тобто це масиви RAID 0, побудовані з декількох RAID 5 або 6. При цьому для кожного субмассіва RAID 5 і 6 рівень відмовостійкості зберігається, відповідно, як N-1 і N-2, а відмовостійкість RAID 50 і 60 складе, відповідно, від N- 1 до N-2 і від N-2 до N-4, в залежності від того чи вийдуть з ладу диски з різних субмассівах чи ні. Але найважливіше, що час відновлення відмовостійкості в RAID 50 і 60 набагато менше, ніж при великих єдиних масивах RAID 5 і 6, а значить і ймовірність збою через помилки при відновленні відмовостійкості різко зменшується. Наприклад, якщо в RAID 50 з 8 шт. дисків по 2 ТБ вийшов з ладу один диск, то для відновлення відмовостійкості масиву RAID 50, досить буде прочитати дані тільки того субмассіва RAID5, з якого був зіпсований диск, тобто це лише обсяг 3 шт. дисків по 2 ТБ.

4. Необхідно регулярно проводити перевірки жорстких дисків входять в RAID масиви 5 і 6 засобами наданими RAID контролерами. Це перевірка цілісності масиву - Consistency Check і перевірка читаності - Patrol Read. Процес Consistency Check перевіряє тільки ті частини дисків, де знаходяться дані та службова інформація парності, що дозволяє судити про відмовостійкості RAID масиву, а процес Patrol Read читає все, включаючи незайняті сектора диска. Якщо в процесах таких перевірок виявляються нечитабельним сектора, то вони позначаються як збійні і більш не використовуються в роботі. Якщо зіпсований сектор містив дані, то вони обчислюються і перезаписувати в новий сектор. Варто зазначити, що перевірки необхідно проводити періодично, і можна ці завдання автоматизувати, запускаючи їх за розкладом.

5. Регулярне резервне копіювання даних з масивів RAID 5 і 6 стає ще більш важливим і потрібним інструментом. Але, на жаль, як показує практика, відсутність відновлюваних резервних копій не рідкість у компаній і організацій. Якщо резервної копії даних немає або вона застаріла, то необхідно рекомендувати перед запуском процесу відновлення відмовостійкості масивів RAID 5 і 6 зробити копію хоча б з особливо важливих даних, поки вони ще доступні. Щоб процес відновлення відмовостійкості RAID не почався автоматично, не рекомендується використовувати диски гарячого резерву hot spare, тому що копіювання даних краще виконати без додаткового навантаження на RAID масив. Диски гарячого резерву для RAID 5 і 6 на великих за обсягом дисках можна використовувати тільки при наявності актуальною копії резервної копії.

6. Теоретично наявна ситуація зі збоями при невідновних помилках читання в RAID5 і 6 може змінитися, якщо:

6.1. З'являться жорсткі диски великого об'єму з рівнем URE 1x 1016, але такі плани не оприлюднені.

6.2. З'являться апаратні RAID контролери з рівнем RAID 7.3 (N-3 c контролем парності), що взагалі малоймовірно, тому що занадто великі накладні витрати на обчислення парності.

7. Чи стають все більш цікавими програмно-апаратні рішення для зберігання даних, наприклад, програмно-які визначаються СГД на основі ПО Open-E JovianDSS , Де є можливість і побудувати RAIDZ3 з рівнем відмовостійкості N-3 і використовувати всі переваги файлової системи ZFS.

Сподіваюся ця стаття допоможе оцінити ризики, з якими можливо доведеться зіткнутися при роботі з RAID масивами рівнів 5 і 6 на дисках великого обсягу. Але який же відсоток ймовірності збою при відновленні відмовостійкості RAID масиву з втратою всіх даних можна вважати прийнятним? Цей відсоток збою буде залежати від цінності даних і від завдань дискової підсистеми, але, мабуть, його значення не повинно бути більше 10-20% (не менше 4-х успішних відновлень масиву з 5-ти спроб), при обов'язковій умові, що є резервна копія даних.

Х готель б, щоб представлені в статті рекомендації згодилися в практичній діяльності з проектування RAID масивів, і в роботі з дисковими підсистемами, побудованими на основі RAID рівнів 5 і 6.

Для отримання додаткової інформації, будь ласка, звертайтеся в наш відділ продажу .

© Олександр Матвєєв, 2018 Ця електронна адреса захищена від спам-ботів. У вас повинен буті включень JavaScript для перегляду.

директор з розвитку бізнесу ТОВ «Віст СПб»

При передруці та використанні цього матеріалу

зазначення авторства (Олександр Матвєєв, 2018)

і посилання на джерело (www.vist-spb.ru) обов'язкові.

Але чому ж так важливий об'єм одиничного жорсткого диска?
А наскільки ймовірно отримати невідновні помилку в процесі відновлення RAID масиву, якщо у фізичних дисків великий обсяг?
Але який же відсоток ймовірності збою при відновленні відмовостійкості RAID масиву з втратою всіх даних можна вважати прийнятним?