XTX Markets открывает исходный код TernFS, своей распределённой файловой системы экзабайтного масштаба

XTX Markets открывает исходный код TernFS, своей распределённой файловой системы экзабайтного масштаба


XTX Markets открывает исходный код TernFS, облачной распределённой файловой системы эксабайтного масштаба, созданной для работы с триллионами файлов и миллионами клиентов.

XTX Markets объявила, что её собственная файловая система TernFS теперь доступна как программное обеспечение с открытым исходным кодом: компоненты основной файловой системы распространяются под лицензией GPL-2.0-or-later, а определения протоколов и клиентские библиотеки — под лицензией Apache-2.0 с исключением LLVM.

Изначально созданная для обработки огромных потребностей компании в данных, TernFS предназначена для хранения данных экзабайтного масштаба, поддерживая триллионы файлов и миллионы клиентов одновременно.

И теперь эти возможности стали публично доступными для всех, поскольку TernFS выходит на сцену, присоединяясь к проектам, таким как Ceph, Lustre и GlusterFS, которые долгое время доминировали в этой области. Но прежде чем мы продолжим, давайте немного подробнее рассмотрим саму файловую систему.

TernFS используется в XTX с середины 2023 года, управляя более чем 500 петабайтами данных в трёх дата-центрах, поддерживаемых приблизительно 30 000 жёстких дисков и 10 000 флэш-накопителей. Система создана для масштабирования гораздо дальше — до 10 экзабайт логического хранилища, триллионов файлов и миллионов одновременных клиентов.

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

Ключевые компоненты включают:

  • Регистр для метаданных кластера и отслеживания сервисов
  • Метаданные шардов с использованием RocksDB с консенсусом через LogsDB
  • Блокировать сервисы для хранения содержимого файлов с резервированием на разных узлах
  • Координатор между каталогами для операций, охватывающих несколько каталогов

Доступ поддерживается через модуль ядра Linux, клиент FUSE и минимальную реализацию API S3. Система оптимизирована для работы с большими, неизменяемыми файлами — обычно больше нескольких мегабайт. Это означает, что она плохо подходит для маленьких файлов, частых обновлений или операций с каталогами, требующих быстрых изменений.

Для получения дополнительной информации смотрите объявление или посетите недавно опубликованный репозиторий на GitHub.

Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *