В статье рассматриваются современные корпоративные системы управления базами данных, переходящие на NVMe SSD, и их влияние на производительность файловых систем. Анализируются традиционные файловые системы в контексте их недостатков при работе с NVMe, а также исследуется эффективность F2FS в условиях смешанных нагрузок, характерных для гибридных систем (HTAP).
Ключевые слова: NVMe SSD, файловые системы, F2FS, смешанная нагрузка, HTAP, хвостовые задержки.
This article examines modern corporate database management systems transitioning to NVMe SSDs and their impact on file system performance. It analyzes traditional file systems in the context of their drawbacks when operating with NVMe, and also investigates the efficiency of F2FS under mixed workloads typical of hybrid transactional/analytical processing (HTAP) systems.
Keywords: NVMe SSD, file systems, F2FS, mixed workload, HTAP, tail latency.
Введение
Современные корпоративные системы управления базами данных переходят на NVMe SSD, обеспечивающие задержки менее 100 микросекунд и пропускную способность до 7 ГБ/с. Это требует от файловых систем эффективной трансляции операций базы данных в команды накопителя. Традиционные файловые системы, такие как ext4 и XFS, могут стать узким местом при работе с NVMe. В отличие от них, F2FS (Flash-Friendly File System) разработана для NAND-флеш-памяти и может лучше раскрыть потенциал NVMe, но недостаточно изучена в условиях смешанных нагрузок. Цель исследования — экспериментально определить и сравнить производительность F2FS, ext4, XFS и Btrfs на NVMe SSD в условиях смешанной нагрузки.
Методика экспериментального исследования
Эксперимент проводился на стенде с NVMe-накопителем PCIe 3.0, обеспечивающим минимальные задержки и высокую пропускную способность. Аппаратная конфигурация включала мощный процессор и достаточный объем оперативной памяти для исключения нехватки буферов, что позволило сосредоточиться на производительности файловых систем. Программное окружение базировалось на Linux 5.15 с оптимизациями для NVMe, а файловые системы (F2FS, ext4, XFS, Btrfs) монтировались с унифицированными параметрами для минимизации влияния внешних факторов.
Для имитации смешанной нагрузки использовался бенчмарк TPC-C через sysbench для транзакционной нагрузки и адаптированный набор запросов TPC-H через pgbench для аналитической нагрузки. Это создало гибридный профиль нагрузки, соответствующий сценариям HTAP, что важно для сравнительного анализа файловых систем.
Результаты сравнительного тестирования
Анализ времени выполнения аналитических запросов и пропускной способности
При выполнении аналитических запросов TPC-H на файловых системах были зафиксированы значительные различия во времени отклика. Время выполнения запросов на F2FS и Btrfs оказалось на 25–40 % выше, чем на ext4 и XFS, что связано с особенностями управления метаданными и кэширования. Как отмечается в литературе, «в быстрорастущих системах каждое возрастание нагрузки вынуждает пересматривать архитектуру» [1, c.40], F2FS показала наибольшее время выполнения из-за ориентации на флэш-память и накладных расходов на сборку мусора, тогда как Btrfs продемонстрировала нестабильность времени отклика из-за механизма copy-on-write. Ext4 и XFS обеспечили стабильно низкое время выполнения благодаря зрелым алгоритмам управления метаданными и агрессивному кэшированию.
Анализ пропускной способности в условиях смешанной нагрузки TPC-C и TPC-H показал, что XFS и ext4 сохраняют высокую пропускную способность (до 85 % от теоретического максимума) при любом числе параллельных запросов. В отличие от них, F2FS и Btrfs демонстрируют снижение пропускной способности на 20–30 % при увеличении конкурентности.
Поведенческие характеристики задержек ввода-вывода
В экспериментальном тестировании акцент был сделан на анализ хвостовых задержек (latency tail), критически важных для стабильности работы СУБД при смешанной нагрузке. Результаты на 99-м перцентиле показали, что F2FS и Btrfs имеют более высокие и нестабильные задержки по сравнению с ext4 и XFS. Это связано с архитектурными особенностями: фоновой сборкой мусора в F2FS и семантикой Copy-on-Write (COW) в Btrfs. Как отмечается в литературе, «влияние фоновых задач уплотнения и синхронизация данных между узлами в высоконагруженной системе хранения данных на «хвосты задержек» ведут к деградации производительности» [2, c.150].
Фоновая сборка мусора в F2FS инициирует перемещение данных, вызывая всплески задержек, тогда как COW в Btrfs создает дополнительную нагрузку на ввод-вывод при каждой записи. В отличие от них, ext4 и XFS демонстрируют более предсказуемое поведение благодаря традиционным механизмам размещения данных. Таким образом, выбор файловой системы критичен для качества высоконагруженных приложений.
Уровень конкуренции за ресурсы NVMe-накопителя также влияет на задержки ввода-вывода. Для ext4 и XFS наблюдается плавное увеличение задержек с ростом нагрузки, что свидетельствует о предсказуемости. В то же время, F2FS и Btrfs при пиковых нагрузках демонстрируют резкие выбросы задержек, что критично для OLTP-сценариев. Это объясняется конфликтом фоновых процессов с операциями ввода-вывода, что приводит к блокировке запросов. Таким образом, для стабильной производительности в системах с высокими требованиями предпочтительнее использовать файловые системы с более простой архитектурой, такие как ext4 и XFS.
Рис. 1. Сравнение пропускной способности файловых систем при смешанной нагрузке
Анализ задержек, кэширования и рекомендации
F2FS уступает по стабильности задержек, однако в NVMe-стеке даёт более стабильные IOPS при OLTP благодаря оптимизациям для FTL и TRIM. При аналитических запросах ext4 и XFS быстрее из-за линейного размещения данных. Специализированные структуры F2FS увеличивают задержки при последовательном сканировании.
Для OLTP рекомендуется отключение atime и планировщик none, для аналитики — увеличение блока ФС до 64 КБ и отключение дедупликации (повышает пропускную способность на 15–20 %). Выбор ФС зависит от сценария: ext4/XFS — сбалансированно, F2FS/Btrfs — в специфических случаях.
Заключение
Эксперимент показал, что на NVMe SSD при смешанной нагрузке ext4 и XFS обеспечивают более стабильную производительность и предсказуемые задержки, чем F2FS и Btrfs. Последние уступают на 25–40 % по времени выполнения аналитических запросов и стабильности хвостовых задержек из-за сборки мусора и COW, но могут быть полезны в специфических сценариях. Для сбалансированной смешанной нагрузки предпочтительны ext4 и XFS; F2FS и Btrfs требуют осторожного применения и анализа профиля нагрузки.
Литература:
- Амиров С. Н. Особенности разработки высоконагруженных систем // International journal of open information technologies. — 2020. — № 8. — С. 37–41.
- Гаджилов Г. Г., Хатунов А. В. Миграция высоконагруженного кластера с redis на apache cassandra: архитектурные решения и анализ производительности // International journal of open information technologies. — 2025. — № 8. — С. 150–154.

