Швидкість запису на HDD

  1. Я міг би випити море ...
  2. Швидше, ще швидше і ... дорожче
  3. Три в одному
  4. Обійдемося без втрат
  5. висновок

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

Я міг би випити море ...

Екстенсивний розвиток охоронного відеоспостереження - збільшення дозволу IP-камер і кількості самих камер на великих об'єктах - веде до колосального збільшення відеопотоків, з якими необхідно справлятися серверного «заліза». Виробники ПЗ, IP-пристроїв, і станційних рішень для відеоспостереження постійно працюють над тим, щоб система могла обробляти як можна більше інформації, що надходить. Ростуть обчислювальні потужності серверів, проводиться оптимізація алгоритмів, наприклад, робота детекторів руху по другому потоку від IP-камери або по детектору самої камери. Такі, і багато інших, рішення значно скорочують потребу в продуктивності процесора сервера.

Такі, і багато інших, рішення значно скорочують потребу в продуктивності процесора сервера

У підсумку, апаратної частини і мережевим комунікацій вдається прийняти і обробити великий потік відеоданих і, здавалося б, справа залишається за малим: просто записати його в архів. Але ось тут і може підстерігати несподіване утруднення: недостатня швидкість запису на жорсткі диски швидко надходить потоку.

Ситуації, коли ми впираємося в обмеження швидкості запису зустрічаються все частіше, наприклад, коли кілька десятків камер в дозволі 3-5 MPix налаштовані на постійну запис в архів. В цьому випадку сумарний потік, навіть в H.264, може доходити до 2 Гбіт / c і більше. Якщо в даному прикладі привести це значення до загальноприйнятих одиницях виміру швидкості запису жорстких дисків, то отримаємо близько 250 МБ / c. Навіть взявши швидкий HDD диск Enterprise-сегмента з інтерфейсом SATA і швидкістю послідовного запису близько 150 Мб / с, ми бачимо, що цього не вистачає, щоб зробити архівування всього потоку без втрат. Причому, за швидкодією обчислювальної частини сервер все ще буде мати запас для обробки даних. Процесор легко справляється з потоком, але дискова підсистема запізнюється, організовуються довгі черги записи і, як наслідок, пропуски в архіві. Проблема виникає, що називається, на рівному місці. Чи знайдеться адекватне рішення?

Швидше, ще швидше і ... дорожче

Виникає очевидна, на перший погляд, думка: слід застосувати більш швидкісні диски. Що ж, начебто, логічно ... Але давайте розберемося, наскільки це прийнятний вихід. У нас є два варіанти:

  • високошвидкісні HDD-диски 15k з інтерфейсом SAS (Serial Attached SCSI)
  • твердотільні накопичувачі SSD (Solid-State Drive)

Розглянемо кожен з них детальніше.

Serial Attached SCSI - інтерфейс послідовної передачі даних, що прийшов на зміну паралельного SCSI. HDD-диски з інтерфейсом SAS в специфікації SAS 3 з пропускною спроможністю до 12 Гбіт / с і швидкістю обертання шпинделя до 15000 об / хв дозволяють отримати в кращих моделях серверного класу 350-450 МБ / с швидкості послідовного запису, що цілком покриває вимоги до швидкодії дискової підсистеми в нашому прикладі. Крім того, SAS-диски розраховані на більш важкі умови експлуатації і мають більшу кількість годин напрацювання на відмову. Однак, з огляду на високу вартість і менший, у порівнянні з дисками SATA, обсяг високооборотних SAS-дисків, дискова підсистема такого сервера обійдеться нам в кілька разів дорожче всього іншого «заліза».

Інший варіант - твердотільні накопичувачі (SSD) на основі незалежної флеш-пам'яті - дає ще більший приріст швидкості, але виникає схожа проблема - прийнятні за вартістю SSD-диски поки ще обмежені недостатнім для ведення відеоархіву об'ємом. Ще одна перешкода - обмежений ресурс по циклам запису-читання флеш-пам'яті. Звичайно, існують рішення на основі великих за обсягом SSD-кластерів, об'єднаних в швидкісні RAID-масиви на одній платі, яка підключається до системи по шині PCI-E, досить надійні з напрацювання на відмову (виробники гарантують стабільну роботу 3-4 роки). Але умовна ціна одного гігабайта, в десятки разів перевершує вартість гігабайта HDD. Це знімає всі питання в доцільності використання такого рішення.

Дозволимо собі навести порівняльну таблицю приблизної вартості дискових підсистем однакового обсягу, припустимо, 16 ТБ, зібраних на накопичувачах HDD SATA, HDD SAS і SSD SATA.

Дискова підсистема на 16Тб

HDD 7.2k Enterprise з інтерфейсом SATA HDD 10k з інтерфейсом SAS SSD з інтерфейсом SATA 4 диска х 4 TB 27 дисків х 600 GB 16 дисків х 1 TB ~ 1000 $ ~ 5000 $ ~ 6000 $

Переваги HDD SAS- і SSD-дисків спрямовані в основному на сегмент серверів для баз даних і математичних обчислень, з великою кількістю одночасних звернень до диска і потребою у високій швидкості вибіркового читання і запису. Для потреб відеоспостереження ці рішення виявляються надлишковими. Чи є інший вихід?

Три в одному

Є ще один спосіб вирішити проблему обмеженої швидкості запису - це вже згаданий нами побіжно швидкісний RAID-масив. Приріст швидкості досягається в тому, що запис даних в масиві дісковпроізводітся паралельно на всі диски відразу. У доповненні до цього, RAID контролер містить досить великий власний кеш, може задіяти кеш дисків, і здатний приймати великі пікові обсяги даних. У підсумку, ми можемо об'єднати недорогі і не дуже швидкі HDD 7,2k c інтерфейсом SATA в RAID-масив з високою швидкістю запису відео.

У підсумку, ми можемо об'єднати недорогі і не дуже швидкі HDD 7,2k c інтерфейсом SATA в RAID-масив з високою швидкістю запису відео

Крім економії бюджету виникає інше супутній ефект застосування RAID масивів - підвищення надійності всієї дискової системи, звичайно, в залежності від вибору рівня RAID, про що ми розповідали в нашій статті "Резервування HDD. RAID масиви для відеоспостереження" .

Повернемося до швидкості запису в масив. Для проектування систем зберігання і компонування відеосерверов під конкретну систему відеоспостереження необхідно розуміти, наскільки вагомою приріст швидкості і від чого він залежить: від кількості дисків в масиві, від обсягу дисків, від типу контролера. Існують дані від виробників контролерів, але одна справа - теоретичні викладки по специфікації, зовсім інше - фактична робота масиву з конкретними HDD.

Ми вирішили провести окреме дослідження, яке допомогло б з'ясувати, наскільки придатне дане рішення для завдань архівування відеопотоку. Вибір припав на RAID6, як на компроміс між високою надійністю і помірною вартістю системи. А ось наскільки прийнятною виявиться швидкість запису великого потоку, нам і належало з'ясувати.

Нижче наведено графік, отриманий в результаті великих тестів записи послідовного масиву даних на високопродуктивному контролері Adaptec ASR 8405. HDD, які ми використовували - це SATA-диски Seagate Barracuda Constellation об'ємом 3 і 6 Тб, за цілком помірні для цієї категорії гроші (Більш докладно про підході до вибору жорстких дисків для наших серверів можна прочитати в статті «Жорсткі диски для відеоспостереження» .


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

Залежність швидкості запису від обсягу диска не визначена. Контролер Adaptec відмінно справляється з великими обсягами даних.

Нижня крива - результат роботи масиву в режимі запису з одночасним випадковим читанням. Сильна просадка в швидкості пояснюється тим, що навантаження в цьому режимі підвищується для масиву в кілька разів за рахунок того, що під час запису приходиться ще і зчитувати дані у випадковому порядку. Зауважимо, що поза RAID цей показник для механічних дисків буде ще нижчим - до 50 МБ / с. У системах відеоспостереження в більшості випадків тактика охорони передбачає запис архіву і перегляд "живого" відео з камер. Робота з архівом здійснюється вибірково і в разі виникнення якихось ПП. Хоча зустрічаються об'єкти і завдання, де робота з архівом здійснюється постійно і є частиною бізнес-процесу підприємства. Для таких об'єктів необхідно обчислювати продуктивність з урахуванням обмеження швидкості запису диска - 50 Мб / с, або, якщо диски в масиві - по нижній кривої, наведеної на графіку. Про це ми докладніше розповідаємо в нашій статті Тактика роботи з відеоданими, або ховрахи IP-відеоспостереження .

Проведений тест наочно демонструє, що продуктивність масиву дисків рівня RAID6 перевищує продуктивність окремого диска і навіть мінімальні отримані значення при неоптимальном кількісний склад дискової групи (мало дисків, або занадто багато) є цілком достатніми для впевненої роботи з великими послідовними потоками даних, а це якраз і необхідно при запису відеоархіву.

У підсумку, організація дисків в RAID масив дозволяє забезпечити високу швидкість запису, застосовувати недорогі накопичувачі великого обсягу, отримати отказоустойчивую систему зберігання відеоархіву. Ось таке рішення "три в одному"!

Обійдемося без втрат

Звернемо увагу, що до сих пір ми оперували лише однієї змінної - швидкістю послідовного запису. Чому тільки їй? А як же рандомних запис, кількість операцій введення / виводу в секунду, синтетичні тести - все те, що в повній мірі визначає продуктивність дискової підсистеми? Все просто: саме методом послідовної, лінійного запису відбувається формування файлів архіву при обробці відеопотоку від IP-камери практично в будь-якому ПО. А значить, для нашої задачі не має великого значення, наприклад, то, скільки iops видасть той чи інший накопичувач в тестах.

Іноді, однак, трапляються ситуації, коли навіть продуктивні масиви знижують свої показники. Наступний графік ілюструє роботу масиву RAID6 в режимі відновлення після збою (suboptimal), наприклад, після виходу з ладу одного-двох дисків і заміни їх на нові.


Залежність швидкості запису від кількості HDD в масиві в режимі перешикування та відновлення

Ми бачимо тут значне падіння продуктивності, і не дивно: в стані suboptimal і подальшому перестроюванні масиву одночасно із записом архіву відбувається інтенсивне читання і запис службової інформації по всіх дисках (верхній крива). Нижня крива демонструє стан різкого зниження швидкості послідовного запису, коли при перестроюванні масиву відбувається ще й активне звернення до відеоархіву в режимі відтворення.

Для того, щоб попередити таку ситуацію, слід вчасно перевіряти стан контролера RAID-масиву в цілому, і що входять в нього дисків за допомогою спеціальних утиліт (дані утиліти в обов'язковому порядку входять до складу додатків на серверах VIDEOMAX, де організований RAID-масив). Якщо перестроювання (rebuild) все-таки не вдалося уникнути, то можливо знизити навантаження на масив за рахунок зменшення загального відеопотоку, наприклад, темпу введення (частоти кадрів) і дозволу камер на менш важливих ділянках, щоб не втратити дані в ключових зонах спостереження.

Якщо перестроювання (rebuild) все-таки не вдалося уникнути, то можливо знизити навантаження на масив за рахунок зменшення загального відеопотоку, наприклад, темпу введення (частоти кадрів) і дозволу камер на менш важливих ділянках, щоб не втратити дані в ключових зонах спостереження

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

висновок

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

У готових рішеннях VIDEOMAX серії Pro дискова підсистема для відеоархівації зібрана в RAID-масив на базі новітніх високопродуктивних RAID-контролерів Adaptec. Це забезпечує гарантовану запис архіву навіть у великих комплексах безпеки при вирішенні найвідповідальніших завдань, коли важливий кожен зафіксований кадр. Система налаштована і оптимізована спеціально для потокової запису і зберігання відеоданих.

На завершення варто все ж зазначити, що проектування підсистеми зберігання в цілому - це складна інженерна задача, яка вимагає знань специфіки систем відеоспостереження і в кожному окремо взятому випадку необхідний індивідуальний підхід, бо немає двох однакових проектів, систем і технічних завдань, але є методологія рішень , досвід і творчий погляд на проблему. Фахівці компанії Відеомакс готові допомогти у вирішенні найскладніших і нестандартних завдань, в тому числі, пов'язаних із записом і зберіганням відеоданих в сучасних системах відеоспостереження. Звертайтеся!

Частково, тема швидкості запису на HDD освітлена в нашому відео

Чи знайдеться адекватне рішення?
Чи є інший вихід?
Чому тільки їй?
А як же рандомних запис, кількість операцій введення / виводу в секунду, синтетичні тести - все те, що в повній мірі визначає продуктивність дискової підсистеми?