Update README.md

This commit is contained in:
2026-08-07 18:45:48 +00:00
parent cabd8634c9
commit a46f17c18a

View File

@@ -63,22 +63,19 @@
> **ALPHA VERSION**<br><br>**Проект достаточно стабилен в тестовых сценариях, но категорически не рекомендуется для промышленного использования до выхода версии 3.0.**<br>
> **Мы открыты для предложений, и рады обратной связи!**
futriix — это легковесная, распределённая NoSQL, использующая алгоритмы неблокирующей синхронизации — waitfree и lockfree inmemory СУБД, реализованная на языке Go с поддержкой плагинов на языке Lua, использующая алгоритм консенсуса Raft и модель консистентности «eventual consistency». <br>
futriix — это лёгкая распределённая NoSQL‑СУБД на Go с MongoDBсовместимым интерфейсом. Работает в памяти (inmemory), использует неблокирующие структуры (waitfree и lockfree) и алгоритм консенсуса Raft — что даёт предсказуемую производительность под высокой нагрузкой.<br>
По своей сути futriix является лёгкой HTAPСУБД с уклоном в OLTP благодаря lockfree и waitfree структурам и ACIDтранзакциям, а также мощными OLAPвозможностями через индексы, триггеры, Luaплагины и аналитические функции. Это позволяет обрабатывать и анализировать данные в режиме, близком к реальному времени, в первую очередь для эксплуатации в замкнутых программных средах под управлением ОС на базе ядра Illumos и Solaris (OpenIndiana Hipster, Oracle Solaris), а кроме того, она совместима с популярными Linuxдистрибутивами (Debian, Ubuntu, Fedora).
Это HTAPсистема: сочетает OLTP (с ACIDтранзакциями) и OLAP (через индексы, триггеры, Luaплагины и аналитические функции) — можно обрабатывать и анализировать данные почти в реальном времени. <br>
Архитектурное решение использовать отдельные индексы от данных, атомарные операции и версионирование позволяет эффективно обрабатывать смешанную нагрузку без необходимости применять отдельные системы для OLTP и OLAP. В futriix реализован WUIинтерфейс для удобства её администрирования и эксплуатации. <br>
В основе управления данными лежат — временные метки: они обеспечивают версионирование записей, корректную работу MVCC и упорядочивание событий в распределённой среде. Это позволяет точно отслеживать изменения, гарантировать согласованность данных между узлами и корректно разрешать конфликты при параллельных обновлениях. <br>
Проект futriix — это MongoDBсовместимая СУБД без блокировок, разрабатываемая в экосистеме OpenIndiana и распространяемая под лицензией CDDL. Проект реализует полный набор требований к надёжной распределённой системе: WAL (writeahead logging) для устойчивости к сбоям, MVCC (multiversion concurrency control) для изоляции транзакций, шардинг для горизонтального масштабирования и ACIDгарантии на уровне транзакций. Ключевая особенность — построение ядра на неблокирующих структурах данных и консенсусе Raft, что обеспечивает предсказуемую производительность в высоконагруженных сценариях. <br>
Ключевые механизмы надёжности и масштабируемости:
Временные метки (timestamps) — это значения, фиксирующие момент времени, к которому относится событие или версия данных. В контексте futriix они используются для: <br>
* Версионирования записей: каждая модификация данных получает уникальную временную метку, что позволяет отличать старые и новые версии и корректно разрешать конфликты при репликации;
* Обеспечения MVCC: временные метки служат основой для определения видимости данных в рамках изоляции транзакций — транзакция видит только те версии записей, которые актуальны на момент её начала;
* Упорядочивания событий в распределённой среде: метки позволяют выстроить хронологию операций между узлами кластера, даже если локальные часы узлов не синхронизированы идеально;
* Реализации политик хранения и TTL: временные метки дают возможность автоматически удалять или архивировать устаревшие данные по истечении заданного срока жизни;
* Аудита и отладки: метки фиксируют точное время возникновения событий (запись, чтение, ошибка), что упрощает диагностику и восстановление состояния системы после сбоев. <br>
* WAL — устойчивость к сбоям
* MVCC — изоляция транзакций
* Шардинг — горизонтальное масштабирование
Есть WUIинтерфейс для администрирования. Проект развивается в экосистеме OpenIndiana, распространяется под лицензией CDDL и совместим с ОС на базе Illumos/Solaris (OpenIndiana Hipster, Oracle Solaris), а также с популярными Linuxдистрибутивами (Debian, Ubuntu, Fedora).
> [!IMPORTANT]