Чё по файловым системам?

Работаю над одним сервером видеонаблюдения уже не первый год и столкнулся с тем что надо как-то оптимизировать видео потоки с сервера на мобильное приложение(тоже написано мной<3).
Так как я прикалываюсь по всякой научно литературе, то полез опять читать статьи и наткнулся на очень интересную штуку от наших профессоров - "Разработка файловой системы для хранения данных интеллектуальной системы видеонаблюдения"

Чё по файловым системам?

Почему стандартные файловые системы тормозят?

Классические файловые системы — NTFS, FAT32, EXT4 и другие — создавались как универсальные. Они поддерживают всё подряд.

Но у универсальности есть минус:

  • слишком много функций (журналирование, фрагментация, длинные имена файлов, проверка прав доступа и т. д.),
  • каждая операция записи/чтения проходит через много лишних слоёв

В системах видеонаблюдения это критично:

  • идёт постоянная запись 10–24 кадров/с в 4K (3840×2160, 450 dpi, sRGB),
  • плюс видеоролики по 25–35 МБ каждые 5–7 секунд,
  • плюс метаданные (дата, время, погода, освещённость, число объектов, точность распознавания и пр.).

При использовании NTFS обычный видеосервер (например: 2× Intel Xeon Gold gen3, 32 ГБ RAM, SSD 250 GB + HDD 10 TB) справляется максимум с 12 камерами одновременно.

Что предложили умные люди

Разработана специализированная файловая система SubSysVideo-1.9.17fs, которая решает только одну задачу — хранение данных интеллектуальной системы видеонаблюдения (ИСВН).

Ключевые особенности:

  • Прямой доступ к диску — драйвер работает напрямую с HDD, без участия ОС.
  • База SubBase — собственная in-memory база (аналог Redis).
  • Жёсткая структура хранения — фиксированные таблицы и ячейки, исключает фрагментацию и ускоряет поиск.
  • Файл вместо раздела — не нужно создавать новый раздел. В NTFS создаётся скрытый файл fileSubSysVideo.sys фиксированного размера (например, 8 ГБ), который ОС не видит и не дефрагментирует.
  • Объектный доступ — работа с базой ведётся через объекты (SubBase, SubAction, SubTable) с методами Insert, Update, Delete, CopyBack, что упрощает интеграцию с ИСВН.

Эксперимент

Учёные протестировали SubSysVideo на MacBook Air M1 (SSD 256 ГБ, MacOS Sequoia 15) и сравнили с популярными файловыми системами:

  • NTFS
  • FAT32
  • exFAT
  • EXT
  • HFS+
  • APFS

Методика: запись объекта в 4 ГБ из RAM на диск и обратное чтение (каждые 1,75 мин, с одинаковых адресов).

К чему пришли:

  • SubSysVideo быстрее NTFS на 43,4 %
  • и даже быстрее EXT (самой лёгкой системы) на 15,7 %

Практический эффект

  • Вместо 12 камер сервер сможет стабильно обслуживать 20+ камер в 4K.
  • Снижение нагрузки на CPU и RAM, так как драйвер не гоняет данные через ОС.
  • Более точное распознавание объектов в реальном времени (так как данные поступают быстрее).
  • Экономия на «железе».

Итого

Для меня было познавательно, но начальству даже не предлагаю, и так денег на разработку нема, время как-никак непростое)

Начать дискуссию