НьюSQL
NewSQL — это класс реляционными систем управления базами данных , которые стремятся обеспечить масштабируемость систем NoSQL для рабочих нагрузок онлайн-обработки транзакций (OLTP) при сохранении гарантий ACID традиционной системы баз данных. [1] [2] [3] [4]
Многие корпоративные системы , обрабатывающие важные данные (например, финансовые системы и системы обработки заказов), слишком велики для обычных реляционных баз данных, но предъявляют требования к транзакциям и согласованности, которые непрактичны для систем NoSQL. [5] [6] Единственными вариантами, доступными ранее для этих организаций, были либо покупка более мощных компьютеров, либо разработка специального промежуточного программного обеспечения , распределяющего запросы через обычные СУБД . Оба подхода связаны с высокими затратами на инфраструктуру и/или разработку. Системы NewSQL пытаются урегулировать конфликты.
История [ править ]
Этот термин был впервые использован аналитиком 451 Group Мэтью Аслеттом в исследовательской работе 2011 года, в которой обсуждалось появление нового поколения систем управления базами данных. [5] Одной из первых систем NewSQL была H-Store система параллельных баз данных . [7] [8]
Приложения [ править ]
Типичные приложения характеризуются большими объемами транзакций OLTP . OLTP-транзакции;
- недолговечны (т. е. отсутствие зависаний пользователей)
- касаться небольших объемов данных за транзакцию
- используйте индексированный поиск (без сканирования таблиц)
- иметь небольшое количество форм (небольшое количество запросов с разными аргументами). [9]
Однако некоторые поддерживают приложения гибридной транзакционной/аналитической обработки (HTAP). Такие системы повышают производительность и масштабируемость за счет исключения тяжеловесного восстановления или управления параллелизмом . [10]
Список баз данных NewSQL [ править ]
- Апач Трафодион
- Кластрикс
- ТараканДБ
- Коучбейс
- Google-гаечный ключ
- Кластер MySQL
- НуоБД
- Пивотал GemFire XD
- SingleStore ранее назывался MemSQL.
- Активные пространства TIBCO
- ТиБД
- ТокуДБ
- TransLattice Эластичная база данных
- ВольтДБ
- ЮгабайтДБ
- SequoiaDB
- Сюрреалдб
Особенности [ править ]
Две общие отличительные особенности решений баз данных NewSQL заключаются в том, что они поддерживают онлайн-масштабируемость баз данных NoSQL и реляционную модель данных (включая согласованность ACID) с использованием SQL в качестве основного интерфейса. [11]
Системы NewSQL можно условно разделить на три категории: [2] [12]
Новые архитектуры [ править ]
Системы NewSQL используют различные внутренние архитектуры. В некоторых системах используется кластер узлов без общего доступа , в котором каждый узел управляет подмножеством данных. Они включают в себя такие компоненты, как управление распределенным параллелизмом , управление потоками и распределенную обработку запросов.
SQL-движки [ править ]
Вторая категория — это оптимизированные механизмы хранения для SQL . Эти системы предоставляют тот же программный интерфейс, что и SQL, но масштабируются лучше, чем встроенные механизмы.
Прозрачный шардинг [ править ]
Эти системы автоматически разделяют базы данных на несколько узлов, используя Raft или Paxos алгоритм консенсуса .
См. также [ править ]
- Обработка транзакций
- Раздел (база данных)
- Архитектура распределенной реляционной базы данных
- Распределенный SQL
Ссылки [ править ]
- ^ Аслетт, Мэтью (2011). «Как поставщики баз данных отреагируют на NoSQL и NewSQL?» (PDF) . 451 Group (опубликовано 4 апреля 2011 г.) . Проверено 22 февраля 2020 г.
- ↑ Перейти обратно: Перейти обратно: а б Павел, Андрей; Аслетт, Мэтью (2016). «Что действительно нового в NewSQL?» (PDF) . SIGMOD Запись . Проверено 22 февраля 2020 г.
- ^ Стоунбрейкер, Майкл (16 июня 2011 г.). «NewSQL: альтернатива NoSQL и старому SQL для новых OLTP-приложений» . Сообщения блога ACM . Проверено 22 февраля 2020 г.
- ^ Хофф, Тодд (24 сентября 2012 г.). «Самое удивительное открытие Google Spanner: NoSQL отсутствует, а NewSQL присутствует» . Проверено 22 февраля 2020 г.
- ↑ Перейти обратно: Перейти обратно: а б Аслетт, Мэтью (6 апреля 2011 г.). «О чем мы говорим, когда говорим о NewSQL» . 451 Группа . Проверено 22 февраля 2020 г.
- ^ Ллойд, Алекс (2012). «Строительный гаечный ключ» (PDF) . Berlin Buzzwords (опубликовано 5 июня 2012 г.) . Проверено 22 февраля 2020 г.
- ^ Аслетт, Мэтью (4 марта 2008 г.). «Является ли H-Store будущим систем управления базами данных?» . Проверено 22 февраля 2020 г.
- ^ Монаш, Курт (20 февраля 2008 г.). «H-Store: Полное уничтожение старого порядка СУБД?» . ЗДНет . Проверено 22 февраля 2020 г.
- ^ Стоунбрейкер, Майкл ; и др. (2007). «Конец архитектурной эры (пришло время полностью переписать)» (PDF) . VLDB '07: Материалы 33-й международной конференции по очень большим базам данных . Вена, Австрия . Проверено 22 февраля 2020 г.
- ^ Стоунбрейкер, Майкл; Кеттелл, Р. (2011). «10 правил масштабируемой производительности в хранилищах данных с простым управлением». Коммуникации АКМ . 54 (6): 72. дои : 10.1145/1953122.1953144 .
- ^ Кеттелл, Р. (2011). «Масштабируемые хранилища данных SQL и NoSQL» (PDF) . Запись ACM SIGMOD . 39 (4): 12–27. CiteSeerX 10.1.1.692.2621 . дои : 10.1145/1978915.1978919 . S2CID 3357124 . Проверено 22 февраля 2020 г.
- ^ Венкатеш, Прасанна (30 января 2012 г.). «NewSQL — новый способ обработки больших данных» . Проверено 22 февраля 2020 г.