пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

I семестр:
» Базы данных

Нереляционные СУБД. Основные черты, разновидности.

NoSQL — термин, обозначающий ряд подходов, направленных на реализацию хранилищ баз данных, имеющих существенные отличия от моделей, используемых в традиционных реляционных СУБД. Применяется к базам данных, в которых делается попытка решить проблемы масштабируемости и доступности за счёт атомарности и согласованности данных.

Стоит еще раз подчеркнуть, что термин “NoSQL” имеет абсолютно стихийное происхождение и не имеет общепризнанного определения или научного учреждения за спиной. Это название скорее характеризует вектор развития ИТ в сторону от реляционных баз данных. Расшифровывается как Not Only SQL, хотя есть сторонники и прямого определения No SQL.
Общих характеристик для всех NoSQL немного, так как под лэйблом NoSQL сейчас скрывается множество разнородных систем.
1. Не используется SQL Имеется в виду ANSI SQL DML, так как многие базы пытаются использовать query languages похожие на общеизвестный любимый синтаксис, но полностью его реализовать не удалось никому.
2. Неструктурированные (schemaless)  Смысл таков, что в NoSQL базах в отличие от реляционных структура данных не регламентирована (или слабо типизированна) — в отдельной строке или документе можно добавить произвольное поле без предварительного декларативного изменения структуры всей таблицы. В силу отсутствия схемы, колонки не объявляются декларативно и могут меняться/добавляться во время пользовательской сессии работы с базой. Это позволяет в частности использовать динамические колонки для реализации списков. У неструктурированной схемы есть свои недостатки — отсутствие всевозможных ограничений со стороны базы (not null, unique, check constraint и т.д.).
3. Представление данных в виде агрегатов(совокупность элементов, образующих систему или ее часть) (aggregates). В отличие от реляционной модели, которая сохраняет логическую бизнес-сущность приложения в различные физические таблицы в целях нормализации, NoSQL хранилища оперируют с этими сущностями как с целостными объектами:
4. Слабые ACID свойства(Атомарность, Согласованность, Изолированность, Надежность). 
5. Распределенные системы, без совместно используемых ресурсов (share nothing). С лавинообразным ростом информации в мире и необходимости ее обрабатывать за разумное время встала проблема вертикальной масштабируемости. Единственный выход из ситуации — горизонтальное масштабирование, когда несколько независимых серверов соединяются быстрой сетью и каждый владеет/обрабатывает только часть данных и/или только часть запросов на чтение-обновление.

С точки зрения моделей данных системы баз данных NoSQL можно разделить на следующие основные классы:

  • базы данных «ключ-значение», основанные напрямую на парах ключей и значений;
  • Project Voldemort, Dynamo, Redis, Scalaris
  • базы данных с колоночным хранением, в которых с одним ключом связан набор колонок значений, имеющих имена, и таким образом, имитируется табличная организация;
  • BigTable, HyperTable, Cassandra
  • документные базы данных, в которых разрешены иерархические структуры, основанные на вложенных парах «ключ-значение», то есть, значением любой пары может становиться последовательность пар ключ значение.
  • CouchDB, MongoDB

27.01.2014; 21:36
хиты: 100
рейтинг:0
Точные науки
информатика
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь