Дело-ориентированная бд
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
README.md
_config.yml

README.md

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, включен в официальную поставку.

Основано на идеях

Текст написал и составил @stleon