The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Открыт код распределённой файловой системы TernFS

22.09.2025 22:00

Компания XTX Markets открыла исходный код файловой системы TernFS, спроектированной для создания распределённого хранилища, охватывающего несколько территориально разделённых датацентров и способного хранить до десятков эксабайт данных, триллионов файлов и сотен миллиардов каталогов, с которыми могут одновременно взаимодействовать миллионы клиентов. Код проекта написан на языках С++ и Go и распространяется под лицензией GPLv2. Спецификации протокола и клиентские библиотеки поставляются под лицензией Apache 2.0.

ФС оптимизирована для нагрузок, свойственных системам машинного обучения - запись и чтение файлов, не изменяемых после создания и содержащих больше нескольких мегабайт данных. ФС не рассчитана на частое создание новых каталогов и частое перемещение файлов между каталогами. Присутствуют возможности как для восстановления удалённых по ошибке файлов или каталогов, так и для настройки политик полного безвозвратного удаления. Содержимое ФС может реплицироваться между несколькими датацентрами в разных регионах. Узлы хранения могут включать различные типы накопителей (на основе дисков и flash-памяти).

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

Внедрение хранилища на базе TernFS в компании XTX Markets началось летом 2023 года, после полутора лет разработки ФС. В середине 2024 года все системы машинного обучения XTX Markets были переведены на TernFS. В настоящее время хранилище образует более 30 тысяч дисков и 10 тысяч Flash-накопителей, размещённых в трех датацентрах. Общий объём хранимых данных оценивается в 500 петабайт, а пиковая производительность - несколько петабайт в секунду. Хранилище используется в кластере, насчитывающем более 100 тысяч вычислительных узлов. Инцидентов, приводящих к потере данных, за два года эксплуатации не случалось.

Среди ограничений TernFS: записанные файлы не могут быть изменены; низкая эффективность работы с файлами размером меньше 2 МБ; низкая производительность операции создания и удаления каталогов; отсутствие разделения прав доступа.

Компоненты, образующие кластер хранения TernFS:

  • Узлы хранения метаданных, отвечающие за управление информацией о структуре каталогов и атрибутах файлов.
  • Узлы координации работы (CDC - Cross-Directory Coordinator), выполняющие транзакции, охватывающие разные каталоги.
  • Сервисы хранения, обеспечивающие хранение содержимого файлов.
  • Реестр, содержащий информацию о всех остальные сервисах и выполняющий мониторинг за их работой.
  • Клиентские службы для обращения пользователей к ФС:
    • ternweb - доступ к хранилищу через Web API.
    • terncli - интерфейс командной строки.
    • ternfs.ko - модуль для ядра Linux, позволяющий монтировать хранилище для работы как с локальной ФС.
    • ternfuse - реализация клиента для работы с ФС, использующая подсистему FUSE.
    • terns3 - реализация API Amazon S3.
  • Фоновые процессы:
    • GC - сборщик мусора, освобождающий просроченные снапшоты (удалённые, но не очищенные файлы) и очищающий блоки для необратимо удаляемых файлов.
    • scrubber - выявление деградации данных и восстановление.
    • migrator - исключение из хранилища сбойных дисков.


  1. Главная ссылка к новости (https://www.xtxmarkets.com/tec...)
  2. OpenNews: Открыт код распределённой файловой системы 3FS, используемой в DeepSeek
  3. OpenNews: Выпуск отказоустойчивой файловой системы LittleFS 2.10
  4. OpenNews: Обновление кластерной файловой системы LizardFS
  5. OpenNews: Первый публичный выпуск распределённой файловой системы JuiceFS
  6. OpenNews: Компания Versity открыла исходные тексты файловой системы ScoutFS
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/63927-ternfs
Ключевые слова: ternfs
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (14) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 22:54, 22/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Отличное место для маленького бекдорчика.
     
     
  • 2.5, Rev (ok), 23:08, 22/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Почему только для одного? :)
     

  • 1.7, НяшМяш (ok), 23:15, 22/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Вот так надо разрабатывать файлухи. Спокойно запилили, обкатали в бою, потом опционально открыли. А не тот цирк, что с bcachefs происходит.
     
     
  • 2.13, пох. (?), 00:01, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    жаль что не нужна абсолютно никому кроме них.
    (а вероятней всего и этим тоже не нужна, потому и выкинули нате-на-лопате)

     
  • 2.14, Аноним (14), 00:02, 23/09/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.18, Аноним (18), 01:01, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Вот только это не файлуха, а какая-то самба на стероидах. Ну т.е. сетевой сервис.
     
     
  • 3.22, Аноним (22), 03:07, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А ты с какими-то боевыми хранилищами то сталкивался когда? Они все по похожей архитектуре строятся. И вполне себе фс, просто не для подкроватей.
     

  • 1.12, myster (ok), 23:58, 22/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Чем она лучше той же IPFS?
     
     
  • 2.24, Аноним (22), 03:10, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А ты пробовал какую-то нагрузку на ипфс давать? Я пробовал, оно начинает дичайше тормозить.
     

  • 1.15, Самый Лучший Гусь (?), 00:02, 23/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Непонятно зачем когда есть сeph
     
     
  • 2.23, Аноним (22), 03:08, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Цеф крайне херово масштабируется между ДЦ.
     

  • 1.17, torvn77 (ok), 00:45, 23/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Очень хорошая новость, репозитарии дистрибутивов на распределённых ФС с каждой такой разработкой всё ближе.
    Да и веса нейросетей на таких ФС распространять хорошо.
     
  • 1.21, Аноним (21), 01:46, 23/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не понятно нахрена оно нужно без MapReduce поверх.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру