Скорость записи на HDD

Дата публикации: 17.06.2016 Скачать статью в формате pdf (необходимо зарегистрироваться или авторизоваться)

Сегодня мы поговорим на тему, которая нередко остаётся вне большинства вопросов, связанных с видеонаблюдением, но которая иногда является ключевой проблемой, мешающей надёжной работе системы. А именно – скорость дисковой подсистемы сервера.

Я мог бы выпить море…

Экстенсивное развитие охранного видеонаблюдения - увеличение разрешения IP-камер и количества самих камер на крупных объектах - ведёт к колоссальному возрастанию видеопотоков, с которыми необходимо справляться серверному «железу». Производители ПО, IP-устройств, и станционных решений для видеонаблюдения постоянно работают над тем, чтобы система могла обрабатывать как можно больше поступающей информации. Растут вычислительные мощности серверов, производится оптимизация алгоритмов, например, работа детекторов движения по второму потоку от IP-камеры или по детектору самой камеры. Такие, и многие другие, решения значительно сокращают потребность в производительности процессора сервера.

Высокопроизводительные серверы для систем видеонаблюдения

В итоге, аппаратной части и сетевым коммуникациям удаётся принять и обработать большой поток видеоданных и, казалось бы, дело остаётся за малым: просто записать его в архив. Но вот здесь и может подстерегать неожиданное затруднение: недостаточная скорость записи на жёсткие диски быстро поступающего потока.

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

Быстрее, ещё быстрее и… дороже

Возникает очевидная, на первый взгляд, мысль: следует применить более скоростные диски. Что ж, вроде бы, логично… Но давайте разберёмся, насколько это приемлемый выход. У нас есть два варианта:

  • высокоскоростные 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-массив с высокой скоростью записи видеоданных.

RAID контроллер для записи видеоархива

Помимо экономии бюджета возникает другой сопутствующий эффект применения RAID массивов – повышение надёжности всей дисковой системы, конечно, в зависимости от выбора уровня RAID, о чем мы рассказывали в нашей статье "Резервирование HDD. RAID массивы для видеонаблюдения".

Вернемся к скорости записи в массив. Для проектирования систем хранения и компоновки видеосерверов под конкретную систему видеонаблюдения необходимо понимать, насколько значителен прирост скорости и от чего он зависит: от количества дисков в массиве, от объема дисков, от типа контроллера. Существуют данные от производителей контроллеров, но одно дело – теоретические выкладки по спецификации, совсем другое – фактическая работа массива с конкретными HDD. 

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

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

Зависимость скорости записи от количества HDD в массиве

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

Зависимость скорости записи от объема диска не выявлена. Контроллер Adaptec отлично справляется с большими объемами данных.

Нижняя кривая - результат работы массива в режиме записи с одновременным случайным чтением. Сильная просадка в скорости объясняется тем, что нагрузка в этом режиме повышается для массива в несколько раз за счет того, что во время записи приходиться ещё и считывать данные в случайном порядке. Заметим, что вне RAID этот показатель для механических дисков будет ещё более низким – до 50 МБ/с. В системах видеонаблюдения в большинстве случаев тактика охраны подразумевает запись архива и просмотр "живого" видео с камер. Работа с архивом осуществляется выборочно и в случае возникновения каких-то ЧП. Хотя встречаются объекты и задачи, где работа с архивом осуществляется постоянно и является частью бизнес-процесса предприятия. Для таких объектов необходимо вычислять производительность с учетом ограничения скорости записи диска - 50 Мб/с, либо, если диски в массиве - по нижней кривой, приведенной на графике. Об этом мы подробнее рассказываем в нашей статье Тактика работы с видеоданными, или суслики IP-видеонаблюдения.

Проведенный тест наглядно демонстрирует, что производительность массива дисков уровня RAID6 превышает производительность отдельного диска и даже минимальные полученные значения при неоптимальном количественном составе дисковой группы (мало дисков, либо слишком много) являются вполне достаточными для уверенной работы с большими последовательными потоками данных, а это как раз и необходимо при записи видеоархива.

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

Обойдемся без потерь

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

Иногда, однако, случаются ситуации, когда даже производительные массивы снижают свои показатели. Следующий график иллюстрирует работу массива RAID6 в режиме восстановления после сбоя (suboptimal), например, после выхода из строя одного-двух дисков и замены их на новые.

Зависимость скорости записи от количества HDD в массиве в режиме перестроения и восстановления

Зависимость скорости записи от количества HDD в массиве в режиме перестроения и восстановления

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

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

Замена диска в сервере записи видеоархива

Когда вариант с ограничением параметров потока неприемлем, необходимо предусмотреть ситуацию нештатного снижения производительности массива заранее, на этапе проектирования системы. Особенно это актуально для крупных объектов, где целесообразно организовать резервный архив на основе дополнительного RAID-массива или даже отдельного сервера, который, в случае профилактических действий с основным RAID, возьмёт на себя работу по записи потока без задержек и потерь. О стратегиях и сложных сценариях работы с архивом в разном ПО видеонаблюдения мы поговорим в одной из наших следующих публикаций.

Заключение

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

В готовых решениях VIDEOMAX серии Pro дисковая подсистема для видеоархивирования собрана в RAID-массив на базе новейших высокопроизводительных RAID-контроллеров Adaptec. Это обеспечивает гарантированную запись архива даже в крупных комплексах безопасности при решении самых ответственных задач, когда важен каждый зафиксированный кадр. Система настроена и оптимизирована специально для потоковой записи и хранения видеоданных.

В завершении стоит все же заметить, что проектирование подсистемы хранения в целом - это сложная инженерная задача, которая требует знаний специфики систем видеонаблюдения и в каждом отдельно взятом случае необходим индивидуальный подход, ибо нет двух одинаковых проектов, систем и технических заданий, но есть методология решений, опыт и творческий взгляд на проблему. Специалисты компании Видеомакс готовы помочь в решении самых сложных и нестандартных задач, в том числе, связанных с записью и хранением видеоданных в современных системах видеонаблюдения. Обращайтесь!

Частично, тема скорости записи на HDD освещена в нашем видео

Тематики статьи

Возврат к списку




Комментарии к статье:
Загрузка комментариев...
Рекомендуем прочитать