1.66M
Category: databasedatabase

NewSQL. Свежий взгляд на реляционные СУБД

1.

NewSQL
Свежий взгляд на реляционные СУБД.

2.

Agenda
1.
2.
3.
4.
5.
Введение в NewSQL
Архитектура
Недостатки
Заключение
Q&A

3.

NewSQL = SQL + NoSQL
NewSQL (англ. новый SQL) — класс реляционных СУБД,
возникших на рубеже 2000-х и 2010-х годов,
стремящихся совместить в себе преимущества
масштабируемости и производительности NoSQL и
ACID-гарантии RDBMS.
Термин NewSQL предложен в 2011 году аналитиком 451
Group Мэтью Аслетом.

4.

ACID
Атомарность
Консистентность
Изолированность
Надежность

5.

Traditional dbms overheads

6.

OLTP & OLAP
OLTP-система - это общая система обработки данных на современных продуктах. Классическими
примерами OLTP-систем являются ввод заказов, розничные продажи и системы финансовых
транзакций.
OLTP обычно противопоставляется OLAP (онлайн-аналитическая обработка), которая, как правило,
характеризуется гораздо более сложными запросами, в меньшем объеме, для целей бизнесаналитики или отчетности, а не для обработки транзакций. В то время как OLTP-системы
обрабатывают все виды запросов (чтение, вставка, обновление и удаление), OLAP обычно
оптимизируется только для чтения и может даже не поддерживать другие виды запросов.
OLTP придерживаются принципов нормализации, OLAP - денормализации.

7.

OLTP vs. OLAP

8.

Welcome NewSQL
Технические характеристики решений NewSQL
1.
SQL как основной механизм для взаимодействия.
2.
ACID поддержка транзакций.
3.
Механизм управления без применения блокировок, таким образом
считывающие данные в реальном времени не будут находится в
противоречии с записывающими, что исключает конфликт.
4.
Архитектура, обеспечивающая намного выше производительность узла,
чем доступный из традиционных решений RDBMS.
5.
Удобное масштабирование, способное управлять большим количеством
узлов, не перенося узкие места.

9.

NewSQL 3 Types
Новые базы данных
Новый движок базы данных
Объединение в кластеры

10.

VoltDB
VoltDB — инновационная открытая СУБД, которая развивается под руководством
Майкла Стоунбрейкера, одного из основателей проектов Ingres и PostgreSQL.
СУБД VoltDB поддерживает горизонтальное масштабирование и ориентирована на
обработку транзакций в реальном времени (OLTP).
VoltDB позволяет достичь уровня производительности NoSQL-систем, сохранив
при этом поддержку выполнения запросов на языке SQL и гарантированную
транзакционную целостность данных (ACID, атомарность и изолированность
транзакций).

11.

VoltDB Scaling Model

12.

MemSQL
MemSQL очень похожа на VoltDB. Тоже in-memory СУБД, только написана на C++.
Первый публичный релиз состоялся в июне 2012 года.
Ключевой особенностью MemSQL является компиляция запросов. Любой SQL
запрос (все DML и некоторые DDL) превращается в код на C++ (SELECT * FROM TEST
превращается в две сотни строк чего-то нечитаемого). Этот код компилируется
обычным GCC в разделяемую библиотеку, которая подключается к серверу.

13.

MemSQL Scaling Model

14.

NuoDB
Создатели NuoDB решили сделать развертывание кластера в облаке
приятным и необременительным занятием.
Это проприетарная СУБД, написанная преимущественно на Java.

15.

NuoDB Architecture

16.

FoundationDB
FoundationDB — это распределенная NoSQL база данных с ACIDтранзакциями уровня Serializable, хранящая отсортированные пары
ключ-значение (ordered key-value store).

17.

FoundationDb Diagram

18.

Final
Мощно
Быстро
Сложно
Дорого
Cloud наступает на пятки
English     Русский Rules