Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

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 заключаются в том, что они поддерживают онлайн-масштабируемость баз данных NoSQL и реляционную модель данных (включая согласованность ACID) с использованием SQL в качестве основного интерфейса. [11]

Системы NewSQL можно условно разделить на три категории: [2] [12]

Новые архитектуры [ править ]

Системы NewSQL используют различные внутренние архитектуры. Некоторые системы используют кластер без совместного использования узлов, в которой каждый узел управляет подмножеством данных. Они включают такие компоненты, как управление распределенным параллелизмом, управление потоком данных и распределенная обработка запросов.

Механизмы SQL [ править ]

Вторая категория - это оптимизированные механизмы хранения для SQL . Эти системы предоставляют тот же программный интерфейс, что и SQL, но масштабируются лучше, чем встроенные механизмы.

Прозрачный сегмент [ править ]

Эти системы автоматически разделяют базы данных между несколькими узлами с помощью алгоритма консенсуса Raft или Paxos .

См. Также [ править ]

  • Обработка транзакции
  • Раздел (база данных)
  • Архитектура распределенной реляционной базы данных
  • Распределенный SQL

Ссылки [ править ]

  1. ^ Aslett, Мэтью (2011). "Как будут реагировать существующие базы данных на NoSQL и NewSQL?" (PDF) . 451 Group (опубликовано 4 апреля 2011 г.) . Проверено 22 февраля 2020 года .
  2. ^ a b Павел, Андрей; Аслетт, Мэтью (2016). "Что на самом деле нового в NewSQL?" (PDF) . Запись SIGMOD . Проверено 22 февраля 2020 года .
  3. ^ Stonebraker, Майкл (16 июня 2011). «NewSQL: альтернатива NoSQL и старому SQL для новых приложений OLTP» . Сообщения в блоге ACM . Проверено 22 февраля 2020 года .
  4. Хофф, Тодд (24 сентября 2012 г.). «Самое удивительное открытие Google Spanner: NoSQL уже нет, а NewSQL уже есть» . Проверено 22 февраля 2020 года .
  5. ^ a b Аслетт, Мэтью (6 апреля 2011 г.). «О чем мы говорим, когда говорим о NewSQL» . 451 Group . Проверено 22 февраля 2020 года .
  6. ^ Ллойд, Алекс (2012). "Строительный гаечный ключ" (PDF) . Берлинские словечки (опубликовано 5 июня 2012 г.) . Проверено 22 февраля 2020 года .
  7. ^ Aslett, Мэтью (4 марта 2008). «Является ли H-Store будущим систем управления базами данных?» . Проверено 22 февраля 2020 года .
  8. Monash, Curt (20 февраля 2008 г.). "H-Store: Полное разрушение старого порядка СУБД?" . ZDNet . Проверено 22 февраля 2020 года .
  9. ^ Stonebraker, Майкл ; и другие. (2007). «Конец архитектурной эры (время полностью переписать)» (PDF) . VLDB '07: Материалы 33-й международной конференции по очень большим базам данных . Вена, Австрия . Проверено 22 февраля 2020 года .
  10. ^ Stonebraker, Майкл; Кеттелл, Р. (2011). «10 правил масштабируемой производительности в хранилищах данных« простых операций »» . Коммуникации ACM . 54 (6): 72. DOI : 10.1145 / 1953122.1953144 .
  11. ^ Кеттел, R. (2011). «Масштабируемые хранилища данных SQL и NoSQL» (PDF) . ACM SIGMOD Запись . 39 (4): 12–27. CiteSeerX 10.1.1.692.2621 . DOI : 10.1145 / 1978915.1978919 . S2CID 3357124 . Проверено 22 февраля 2020 года .   
  12. Венкатеш, Прасанна (30 января 2012 г.). «NewSQL - новый способ работы с большими данными» . Проверено 22 февраля 2020 года .