Архитектурная ниша

Записать транзакционно. Считать аналитически. Без мистификаций совместимости.

RadixDB строит гибридный путь: изменяемые строки для OLTP-потоков и иммутабельные column-блоки для больших выборок, с явными границами контрактных возможностей.

Путь данных

01

SQL и планировщик

Парсер, выражения, статистика и выбор физического оператора.

02

Транзакционный слой

MVCC, READ COMMITTED и SNAPSHOT, savepoints и атомарность операций.

03

Горячие версии строк

Текущие изменения остаются доступными без переписывания холодных блоков.

04

Колоночные блоки

Неизменяемые сжатые сегменты для последовательного и выборочного чтения.

05

WAL и восстановление

Журнал предзаписи, контрольные точки и проверяемый запуск после сбоя.

SQL

Знакомый SQL с прозрачными контрактами.

Поддерживаются возможности, которые проходят проверочный цикл и зафиксированы в контракте. Это не «полная» PostgreSQL-эмуляция: границы совместимости отражены прямо в документации.

BEGIN ISOLATION LEVEL SNAPSHOT;

UPDATE stock_balances
SET quantity = quantity - 4
WHERE product_id = :product
  AND revision = :expected
RETURNING quantity, revision;

COMMIT;

Где RadixDB сильнее

Архитектурная ниша и границы

  • Транзакционные обновления в row-слое + компрессия в cold-слое для массовых чтений
  • Сильная сторона — большие аналитические выборки при контролируемых ресурсах
  • Явные границы SQL-совместимости: поддержка и ограничения задокументированы

Index access

Индексы под форму запроса

  • BTREE для диапазонов и сортировки
  • HASH для точного поиска
  • BITMAP для селективных признаков
  • Составные и частичные индексы

Application interfaces

От SQL до приложения

Embedded Rust

Прямое открытие базы и выполнение запросов в процессе.

TCP client

Сетевое подключение к процессу radixdb-server.

ORM facade

Типизированный прикладной интерфейс поверх запросов и записей.

Server programming

Подпрограммы, триггеры и задания развиваются как отдельный слой.

Нативные расширения

Доверенные Rust-пакеты добавляют внешние типы, функции, операторы и operator classes через версионированный plugin ABI. Код выполняется в процессе сервера и не является sandbox.