Дело-ориентированная БД. По-моему - это шедевр.

Наткнулся на репозиторий на github. Готов поучаствовать.


Оригинал описания и репозиторий https://github.com/zaabjuda/kgb-db


kgb-db


Дело-ориентированная БД


Основная кодировка данной БД - Косыгин-8. Доступна на пользовательской операционной системе Маркс ОС, а также на серверной - Энгельс ОС (запускаемой в виртуальной машине ЗИЛ).


В состав бд входят:


Lenin CI

Дзержинский Антивирус

Горбачев-коллектор (gc)


Это первая система, полностью поддерживающая Хрущев Procedure Call (оборачивание сообщений в кукурузу) и iOSталин.


БД содержит партийные ячейки (таблицы), звенья (колонки). У каждой таблицы есть вожатый (owner). Простейший индекс - целина.


Каждый инстанс kgb-db можно запустить в контейнере - республике. Синхронизация между республиками происходит через Собрания КПСС.


В качестве генератора рандомных чисел используется спорт-лото, а 1917 год - как начало эпохи.


Предустановлен мощный firewall - Занавес. На данный момент существует только один внешний драйвер - Fidel.


Главный процесс, контролирующий работу всей системы, - ГенСек, напрямую связан с ядром.

Ядро


kgb-db благодаря своему ядру Лубянка может выдержать до 1 000 000 000 доносов в секунду (реализация очередей и талонов).


В ядре Лубянка не может сущестовать никаких importов, подключаемых модулей и плагинов.


Однако допускается использование расширений для работы с ядром. Главным каналом распросранения таких пакетов является package-index Ералаш (веселые пакеты).


БАМ используется в качестве шины, с помощью которой решается теорема CAP.


Главные компоненты дело-ориентированной базы данных - это товарищи и доносы на товарищей.

Товарищ


Товарищ (рабочий) - это абстрактный базовый класс, от которого наследуются другие классы:


резидент

коммунист

партийный

беспартийный

спорстмен


Ниже приведен код проверки товарища:


если не товарищ

верни тамбовский волк --- враг народа


У товарища есть следующие абстрактные методы:


__расстрел__

__go_to_гуллаг__

__создать_донос__

__собрание__ (партийное)


Для того, чтобы взаимодейстовать с kgb-db, товарищу необходим партийный билет (auth token).


Воронок может доставить до 3х товарищей на stack (карцер).

Донос


Доносы пишутся на Донос Query Language:


выбрать всех товарищей, где донос - истина, иначе расстрел


Существует механизм ускорения ДQL - 5-летки.


Также реализован язык допросов.


Товарищ может выдержать только 1 одновременный допрос.

Установка


Чтобы скачать последние обновления kgb-db на Маркс ОС достаточно использовать Gagarin Version Control:


yura pull kgb-db


Или


yura push


Для публикации изменений.

Тестирование


Для написания своих тестов используют следущие объекты:


белка

стрелка


Их необходимо mockать, также существует соглашение о наименовании их - белок и уголек, так как


Они сгорели


Для тестирования товарищей обычно применяют гулаги.

Сообщество


Проводятся митапы - October Fest, где происходит встреча пользователей с евангелистами и core-разработчиками kgb-db.


Для огромного кол-ва говна поделий, производимых сообществом, был создан специальный зоопарк фреймворков - Артек.


На основе kgb-db написана социальная сеть Пионерская Зорька.


Pioner.js, разработанный сообществом, позволяет на порядок увеличить кол-во доносов, которое может выдержать kgb-db, включен в официальную поставку.