GlobalStorage — распределённая СУБД

Концепция распределённой бессхемной СУБД Metarhia. Шардинг через ветвление битов идентификатора, курсоры, репликация. Сейчас переосмыслена в контексте local-first + CRDT + blockchain.

Идея

Не отдельный сервер БД (PostgreSQL, MongoDB), а распределённая система хранения, встроенная в стек. Каждый узел держит часть данных. Шардинг — детерминированный.

Идентификация

  • Глобальный 64-bit ID.
  • ID кодирует диапазон узла → детерминированно определяет, на каком узле лежат данные.
  • При добавлении узла — ID-пространство ветвится по биту.

Шардинг ветвлением битов

«Шардинг через ветвление битов» — каждый узел отвечает за подпространство ID. Новый узел делит пополам пространство соседа. Перемещение данных — только часть.

Курсоры

API чтения — курсоры (как в MongoDB). find возвращает курсор, по нему итерируешься. Под капотом курсор может ходить по нескольким узлам.

Бэкапы

Реплики автоматически держат N копий каждой записи. Топология настраивается.

Сейчас: GlobalStorage + CRDT + Blockchain

В лекциях 2025 (после CRDT) — GlobalStorage переосмысляется как:

  • Local-first — копия данных на каждом клиенте (OPFS/IndexedDB).
  • CRDT — конфликты резолвятся автоматически.
  • Blockchain — публичный реестр адресов нод (discovery без single point of failure).

«Мы перенесем всю эту машинерию в метархию, сделаем библиотечку для CRDT, а потом заюзаем её в Global Storage для того, чтобы синхронизировать структуры данных в нашей распределенной базе данных, добавив туда ещё блокчейн.»

Чем не похоже на классику

PostgreSQL MongoDB CouchDB GlobalStorage
Шардинг руками руками конфликты по ID
Конфликты блокировки last-write-wins replication CRDT
Discovery конфиг конфиг конфиг blockchain
Local copy нет sync да да

Статус

В активной разработке. Видения переоткрывались несколько раз: 2017 (первый док), 2025 (CRDT-видение), 2026 (Sphere — цифровая платформа на этом фундаменте).

🎓 Источники

См. также