Разработчики: | Симоненко Дмитрий |
Дата последнего релиза: | 2016/08/17 |
Технологии: | СУБД |
Содержание[Свернуть] |
Sophia - встраиваемая СУБД, работающая по принципу «ключ - значение». Действует в виде разделяемой библиотеки.
2016: Sophia 2.2
17 августа 2016 года состоялся релиз СУБД Sophia 2.2.
Основные изменения в Sophia 2.2 - схема хранения и архитектура хранения.
Схема хранения базируется на построчном размещении, при котором каждая строка включает ряд полей произвольного типа [1]. Подобный подход позволяет снизить накладные расходы при размещении данных в хранилище, например, числа и метадданые могут хранится в более компактном представлении непосредственно в строках (rows). Кроме того, схема позволят организовать работу со вторичными индексами. Что касается новой архитектуры хранения, то её основной особенностью является обеспечение постоянной производительности операций чтения, записи и сканирования диапазонов, не зависящей от размера хранилища (O(1)).Рустам Фаррахов, ГК InfoWatch: Безопасность данных — уже не про документы, а про результат
2015: Sophia 2.1
СУБД ориентирована на очень большую скорость записи и чтения при работе с данными небольшого и среднего размера. Данные сохраняются на диске с использованием лог-подобного хранилища, работающего в режиме постоянного пополнения (append-only). В отличие от других лог-подобных хранилищ, метод хранения в Sophia не ограничивается высокой скоростью записи, но оптимизирован для обеспечения высокой скорости произвольного чтения данных и выборки диапазонов значений.
Особенности
- Соответствие требованиям ACID.
- Движок MVCC (Multi-Version Concurrency Control) для мультидоступа к БД.
- Чистый режим постоянной дозаписи (append-only).
- Поддержка множественных БД.
- Многопоточность в движке и клиентском доступе.
- Мультиоперационные транзакции.
- Поддержка сериализованных представлений.
- Асинхронное горячее резервирование.
- Консистентные указатели.
- Снапшоты.
- Простой API со стабильным форматом.
- Проста в интеграции.
- Расширяется посредством FFI.
- Распространяется под лицензией BSD в виде небольшой библиотеки на языке Си без каких-либо зависимостей.
Начиная с версии 2.1 СУБД Sophia позиционируется как гибридное RAM/Disk-хранилище, использующее для хранения, как ОЗУ так и диск, позволяющее автоматически разделять "горячие" и "холодные" данные (обновлённые и не изменившиеся).
Поддерживаемые технологии
- Дисковое хранение - для хранения используется жесткий диск или флэш-память. Запись кэшируется в памяти для последующего сброса на диск.
- Анти-кэширование - оперативная память становится основным хранилищем. Холодные данные читаются с диска или Flash-памяти.
- Постоянное кэширование - второе хранилище используется в паре как LRU-кэш в оперативной или Flash-памяти для горячих данных. Холодные и горячие данные дублируются в основном хранилище.
- Постоянное хранение в памяти - данные хранятся в оперативной памяти и постоянно сохраняются на диске. Поддерживается сжатие данных в памяти.
В выпуске 2.1 добавлены:
- режим LRU для вытеснения старых данных из кэша,
- возможность раздельного сжатия "горячих" и "холодных" данных,
- реализация фильтра приблизительной выборки (AMQ, Approximate Member Query),
- поддержка снапшотов для быстрого восстановления после сбоя,
- реорганизация операций UPSERT (добавить-или-модифицировать),
- режим интеграции других СУБД с Write-Ahead Log,
- дополнительные метрики для мониторинга производительности.
Подрядчики-лидеры по количеству проектов
SAP CIS (САП СНГ) (38)
Softline (Софтлайн) (35)
РДТЕХ (33)
BeringPro (БерингПойнт) ранее BearingPoint Russia (28)
ФОРС - Центр разработки (25)
Другие (751)
Nexign (Нэксайн) ранее Петер-Сервис (1)
Синимекс (Cinimex) (1)
Форсайт (1)
R-Style Softlab (Эр-Стайл Софтлаб) (1)
Эркер (1)
Другие (20)
Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров
Oracle (44, 179)
SAP SE (6, 178)
Microsoft (23, 142)
PostgreSQL Global Development Group (14, 134)
Постгрес профессиональный (ППГ, Postgres Professional) (6, 43)
Другие (266, 262)
PostgreSQL Global Development Group (4, 9)
Постгрес профессиональный (ППГ, Postgres Professional) (2, 6)
VK Tech (ранее VK Цифровые технологии, ВК Цифровые технологии и Mail.ru Цифровые технологии) (2, 3)
Arenadata (Аренадата Софтвер) (3, 2)
Oracle (2, 2)
Другие (9, 9)
PostgreSQL Global Development Group (3, 13)
Постгрес профессиональный (ППГ, Postgres Professional) (1, 6)
Apache Software Foundation (ASF) (3, 4)
Arenadata (Аренадата Софтвер) (3, 4)
Тантор Лабс (Tantor Labs) (2, 3)
Другие (8, 10)
PostgreSQL Global Development Group (4, 13)
Arenadata (Аренадата Софтвер) (3, 9)
VMware (2, 9)
Постгрес профессиональный (ППГ, Postgres Professional) (2, 6)
TData (ТДата) (2, 4)
Другие (7, 12)
Распределение систем по количеству проектов, не включая партнерские решения
Oracle Database - 106
Microsoft SQL Server - 104
SAP NetWeaver Business Warehouse (SAP BW/4HANA) - 103
PostgreSQL СУБД - 83
SAP HANA (High Performance Analytic Appliance) - 72
Другие 392
Postgres Pro СУБД - 5
ADB - Arenadata DB - 2
PostgreSQL СУБД - 2
Tarantool Платформа in‑memory вычислений - 2
Oracle Database - 2
Другие 13
Postgres Pro СУБД - 6
PostgreSQL СУБД - 4
Tantor СУБД - 3
Apache Kafka - 2
ADB - Arenadata DB - 2
Другие 10
ADB - Arenadata DB - 8
PostgreSQL СУБД - 6
Postgres Pro СУБД - 4
RT.Warehouse СУБД - 3
RT.WideStore СУБД - 3
Другие 14