home airplane power

NitrosBase

ВЫСОКОПРОИЗВОДИТЕЛЬНАЯ УНИВЕРСАЛЬНАЯ БАЗА ДАННЫХ

1 Мультимодельность

NitrosBase позволяет выполнять SQL, графовые и документо-ориентированные запросы к одним и тем же данным.

2 Высокая производительность


Запросы

3 Масштабируемость

Высокопроизводительный кластер NitrosBase:

  • Поддержка sharding и sharing
  • Репликация мастер-мастер – параллельные операции записи на всех узлах
  • Распределенные запросы на всех видах данных, включая быструю обработку распределенных JOIN запросов.

4 Высокая доступность и отказоустойчивость

Fault-tolerance сервер позволяет выполнять запросы без задержек при падении одного из узлов кластера.

5 Поддержка транзакций

  • Полная ACID-совместимость транзакций
  • Несколько уровней изолированности транзакций
  • Несколько механизмов реализации, включая блокировки до уровня записей и механизм MVCC
  • Высокопроизводительные распределенные транзакции

Вниманию пользователей NitrosBase RDF Storage и NitrosBase GraphDB


NitrosBase Multimodel DB является новой высокопроизводительной мультимодельной СУБД.

Архитектура NitrosBase Multimodel DB разработана для полной поддержки реляционной модели данных и языка SQL. Вместе с тем, NitrosBase Multimodel DB обеспечивает уникально высокую производительность при обработке не только реляционных, но и графовых и документных данных.


Поддержка NitrosBase RDF Storage и NitrosBase GraphDB будет продолжаться.

По всем вопросам, связанным с переходом на NitrosBase Multimodel DB, обращайтесь в нашу службу технической поддержки, и мы обязательно вам поможем.


NitrosBase - мультимодельная СУБД

NitrosBase позволяет создавать единое хранилище для реляционных данных, графов и JSON документов. Над этими данными Вы можете выполнять SQL, graph-it и JSON запросы.

Реляционная модель

Базовая модель NitrosBase - реляционная. Данные представлены в табличном виде.
Язык запросов - SQL (см. "Поддержка SQL")


Схема

Запросы

SQL запрос

select 
  model, year, name 
from
  car join person on
  car.owner = person.id

Работа с графами

Для представления графовых данных используются специализированные структуры для представления ребер графа. Узлами графа являются записи в реляционных таблицах. Реляционные связи Foreign Key -> Primary Key автоматически видны в виде ребер графа. Промежуточные таблицы для связей многие ко многим также видны как ребра графа.

Специальные структуры для представления ребер графа существенно ускоряют обработку графовых запросов а также SQL JOIN запросов, использующих связи FK->PK и промежуточные таблицы.


Запросы

Для работы с графами предназначен специалированный графовый язык graph-it. Но поскольку граф может быть виден как реляционные данные - то для простых запросов к графовым данным также может использоваться язык SQL.

graph-it запрос

v(car)
  .get(model, year)
  .out(owner).get(name)
  .select(model, year, name)

SQL запрос

select 
  model, year, name 
from
  car join person on
  car.owner = person.id


JSON документы

JSON данные автоматически представляются в виде записей и связей, отражающих вложенность объектов или связи между объектами.


JSON документ

{
    "type": "car",
    "id": 1,
    "model": "Chevrolet",
    "owner": {
      "type": "person",
      "id": 1,
      "name": "John",
      "city": "London",
      "friends": [ 2, 3 ]
    }
}

При добавлении этого документа он автоматически представляется в реляциоонм виде как набор записей в разных таблицах, а также как часть графа.


Запросы

Для обработки данных, полученных в виде JSON, можно использовать те же SQL и graph-it запросы, представленные выше.

Roadmap

Ближайшие ключевые шаги развития:

  • Высокопроизводительные и надёжные механизмы транзакций - весна-лето 2020
  • Хранимые процедуры, функции и триггеры - лето-осень 2020

Также в течение 2020 года предполагается:

  • Развитие поддержки SQL для обеспечения совместимости по языку с MS SQL
  • Дальнейшая оптимизация запросов
  • Развитие системы администрирования и мониторинга
  • Развитие ODBC драйвера, и разработка дополнительных драйверов и интерфейсов

lorem

Исследования осуществляются
компанией NitrosData
при грантовой поддержке
фонда Сколково.

Связаться с нами

Техническая поддержка: support@nitrosbase.com

© 2017-2020 NitrosData

Наш вебсайт использует cookies для наилучшего представления нашего сайта. При дальнейшем использовании нашего сайта без изменения настроек вашего браузера, вы соглашаетесь с использованием cookies. Для получения дополнительной информации по cookies, пожалуйста ознакомьтесь с нашей политикой конфиденциальности. Согласен