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 обязательно


Обсуждение (56) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 22:54, 22/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Отличное место для маленького бекдорчика.
     
     
  • 2.5, Rev (ok), 23:08, 22/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Почему только для одного? :)
     
  • 2.95, Аноним (95), 01:21, 29/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Маленький бекдорчик можно создатьиз чего угодно. Как вариант, размазав важную и ценную информацию по нескольким темам данного форума.
     

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

     
     
  • 3.37, Аноним (37), 09:11, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Менеджер всегда может сказать, что мы не потратили деньги впустую, а создали что-то для сообщества.
     
  • 2.14, Аноним (14), 00:02, 23/09/2025 Скрыто ботом-модератором     [к модератору]
  • +2 +/
     
  • 2.18, Аноним (18), 01:01, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Вот только это не файлуха, а какая-то самба на стероидах. Ну т.е. сетевой сервис.
     
     
  • 3.22, Аноним (22), 03:07, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    А ты с какими-то боевыми хранилищами то сталкивался когда? Они все по похожей архитектуре строятся. И вполне себе фс, просто не для подкроватей.
     
  • 3.29, _ (??), 06:52, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • –4 +/
    > Вот только это не файлуха, а какая-то самба на стероидах.

    У самбы, даже не на стероидах вот такого "пгекганого" нет:
    >>>>   отсутствие разделения прав доступа

    Так что выдыхайте придуксперты, перед вами ещё один, ___очень___ специализированный инструмент, а не FS общего назначения.

    Как то таГ!(С) ;-)

     
     
  • 4.30, _ (??), 06:56, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    И эта - для тех кто не заметил что в тюрьме нет одной стены:
    >>>записанные файлы не могут быть изменены

    Ну есть ещё сомнения?


    Тляяя ... лет 15 назад даже представить себе что тут придётся _такое_ разжёвывать ... :(

     
     
  • 5.76, YetAnotherOnanym (ok), 19:00, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > записанные файлы не могут быть изменены;

    Ачотакова? У меня есть юзкейс, когда нужна была БД, в которую заливался заранее подготовленный неизменяемый набор данных, и который она должна была выстреливать, как GAU-8. В коде не должно было бы быть ничего, связанного с записью, чтобы скорость чтения была максимальной за счёт исключения лишних операций. Но такой тогда не нашлось.

     
     
  • 6.89, _ (??), 17:55, 24/09/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    ... ну дык и это - НЕ она!
    Почитай про скорости :) Это не Ferrari, это БелАЗ 40 тонн.
    Вот будешь свой тытруб делать - тады да, пригодится. Ну и модели хранить для силиконовых сисе^W мозгов (как аффтары) - очевидно тоже полезна...

    Как то таГ!(С) :)

     
  • 4.58, Аноним (58), 14:19, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Не крверкайте русский, пожалуйста. Выглядит отвратительно и непонятно что хотели донести.
     
     
  • 5.90, _ (??), 17:59, 24/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Извините Лариса Генадьевна, знал бы что вы мои посты читаете ...


    PS: Моя учительница по Русскому языку и Литературе. Хорошая была женщина, стихи НЕ из школьной программы нам читала ... таких больше не делают(С) :(

     
  • 3.80, Аноним (80), 21:32, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Есть такой сетевой сервис NFS, например.
     
  • 2.47, Аноним (47), 09:49, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Это чистый юзермпейс. Для юзермпейса тебе вообще не нужно знать кто такой Линус и что такое kernel.org ведь у юзерспейса все стабильно и от версии ядра не зависит.
     
     
  • 3.81, Аноним (80), 21:33, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не то, чтобы прямо стабильно...
     
  • 2.56, чатжпт (?), 11:23, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    так это не ядерная фс, а что-то вроде ceph и аналогов
     

  • 1.12, myster (ok), 23:58, 22/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Чем она лучше той же IPFS?
     
     
  • 2.24, Аноним (22), 03:10, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А ты пробовал какую-то нагрузку на ипфс давать? Я пробовал, оно начинает дичайше тормозить.
     
     
  • 3.26, Аноним (-), 06:26, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    По идее, IPFS должен быть тормознут ровно настолько насколько вообще может быть тормознут твой Интернет-провайдер.
     
  • 2.49, Аноним (47), 09:52, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Тем что это анал ог ceph
     

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

     
     
  • 3.38, Аноним (37), 09:12, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Модет там ничего особо ценного и не хранили.
     
     
  • 4.75, нах. (?), 18:21, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    не может, а совершенно точно - но тем не менее за два года не развалилось - уже неплохой показатель.
    ("ценность" 500 петабайт мусора в том, что их второй раз просто скопировать - уже п-ц задача, даже если в принципе есть откуда)

    Тем более для китайского она и палок, из которых, по первому-второму погляду оно все и сляпано.

     
  • 3.40, 1 (??), 09:19, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Ну ещё бы они потеряли данные на Read-Only FS.
     
     
  • 4.92, 1 (??), 19:36, 24/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Read-only это логический сценарий со стороны юзера. На практике 100% availability инфраструктуры на отрезках в пару лет ни кто не гарантирует. Поэтому есть масса возможностей что-то потерять: вышедшие из строя диски, сбои при записи данных или передаче по сети, перезагружающиеся на тех.обслуживание сервера.
     
  • 3.41, Фняк (?), 09:34, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    У клаудмауса до поры тоже не было инцидентов с потерей данных
     
     
  • 4.43, нах. (?), 09:44, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    ну спрашивали за ceph - с которым не "если", а "когда". Причем при таких масштабах - "когда" наступает сильно раньше чем через два года.

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

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

     
  • 2.65, Аноним (65), 16:28, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Зачем, когда есть minio? Файловые системы нужны только для того чтобы быть совместимым с каким-то древним софтом, который никак не перевести на объектное хранилище. Зачем пилить что-то такое монструозное понятно слабо. Софт крутой, но смысл от меня ускользает.
     
     
  • 3.82, ентакусик (?), 21:55, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А для minio уже модуль ядра написали?
     

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

    https://research.google/pubs/mapreduce-simplified-data-processing-on-large-clu
     
  • 2.94, Гость (??), 14:41, 28/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Если вам непонятно то, что написано, то попробуйте просчитать.
    Если прочли и все равно не понятно, то подумайте и прочтите повторно ещё несколько раз.
    Если все равно не понятно, то лучше промолчите и ничего не пишите.
    Помните - идиотизм не лечится. Но можете спросить, если все же не понятно.
     

  • 1.27, Аноним (-), 06:27, 23/09/2025 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     
  • 1.33, dannyD (?), 08:39, 23/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    есть только один вопрос: как люди жили раньше без всего этого?
     
     
  • 2.39, Аноним (37), 09:13, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Люди без компьютеров когда-то жили, прикинь?
     
     
  • 3.70, dannyD (?), 16:51, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    так отож... это конечно немыслимо, но говорят так было!!!
     

  • 1.34, Тирпан (?), 08:40, 23/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    держу всех в курсе, сегодня на работе буду ставить и тестить, если ничего не сломается - результаты напишу
     
     
  • 2.48, Fracta1L (ok), 09:50, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ждём жалоб о том, как фигово работает сабж на десяти десктопах с коре 2 дуо и гигом оперативки
     
     
  • 3.50, Аноним (50), 10:13, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Ты фальшивый фрактал. Хоть бы слово сказал про раст, не верю что это ты.
     
  • 2.71, Аноним (71), 16:58, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А что с этим можно делать? Я имею ввиду как это использовать с пользой? Как на этом заработать? Saas какой открыть?
     
     
  • 3.72, Аноним (72), 18:08, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > А что с этим можно делать?

    Деньги зарабатывать.

    > Я имею ввиду как это использовать с пользой?

    Ну посмотри, чем занимается компания создавшая сабж, например вот так можно.

    > Как на этом заработать?

    Судя по тому, что за десять лет не закрылись и по 250 миллиардов в день обороты, весьма неплохо на этом заработать можно.

    > Saas какой открыть?

    Открой хороший SaaS, тогда больше заработаешь.

     

  • 1.45, Аноним (45), 09:47, 23/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Качество кода ужасное, Dockefile, Python скрипты м. И в этой сфере сейчас можно делать user-space реализации и RoCEv2. А так-же переписывать свой софт и уходить от VFS/POSIX в сторону Arrow/gRPC
     
     
  • 2.54, Аноним (54), 11:14, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Дак сейчас программисты через ИИ пишут.
     
     
  • 3.77, YetAnotherOnanym (ok), 19:06, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    ИИ, обученный на данных, хранящихся в ФС, написанной ИИ. Мясным мешкам скоро можно уже будет отойти в сторонку.
     
     
  • 4.78, нах. (?), 19:10, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > ИИ, обученный на данных, хранящихся в ФС, написанной ИИ. Мясным мешкам скоро
    > можно уже будет отойти в сторонку.

    потому что исправлять этот трэшак - дураков не найдется.


     
  • 2.60, Аноним (-), 14:48, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Из POSIX ты можешь уйти только на вантуз.
     

  • 1.57, Аноним (57), 13:42, 23/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    что-то странное. выглядит как pNFS к которому прикрутили координатора который является узким местом для распределенных транзакций.
    не понятно зачем когда есть DAOS / Mero и всякое другое.
     
     
  • 2.84, penetrator (?), 22:51, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А Mero причем тут?
     

  • 1.93, Молодой Смузихлёб (?), 22:51, 25/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    По описанию похож на Google File System.
     

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



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

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