ТЕХНОЛОГИИ NOSQL ДЛЯ РЕАЛИЗАЦИИ БАЗ ДАННЫХ - Студенческий научный форум

IX Международная студенческая научная конференция Студенческий научный форум - 2017

ТЕХНОЛОГИИ NOSQL ДЛЯ РЕАЛИЗАЦИИ БАЗ ДАННЫХ

Рябова К.М., Маркин Е.И., Артюшина Е.А.
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
На данный момент большинство существующих программных приложений используют базы данных (БД) для своей работы. Все они обрабатывают, читают и записывают определенный набор данных. Как известно, БД предназначены именно для организованного хранения информации и упрощения доступа к ней. Работа с БД осуществляется через системы управления базами данных (СУБД), которые представляют собой специализированное ПО или же наборы библиотек для поддержки различных форматов данных.

Еще в 1970 году была предложена реляционная модель, базировавшаяся на математическом способе структурирования, хранения и использования данных в базе. Основным преимуществом реляционной модели являлось объединение данных в группы; именно реляционная модель позволила хранить информацию в структурированном табличном виде. Схема БД включала в себя описание содержания и структуры таблиц, а также ограничений целостности на уровне таблиц и ссылок между таблицами (рис. 1). Реляционная модель используется на протяжении десятилетий, но и на современном этапе развития IT-технологий по-прежнему остается широко востребованной. Однако имеется возможность только для вертикального масштабирования реляционной БД за счет увеличения мощностей отдельной вычислительной машины. Это является существенным недостатком модели, особенно когда требуется быстрая обработка больших объемов данных различных типов. Попытка решения вышеописанной проблемы привела к появлению технологии баз данных NoSQL.

Рисунок 1 - Пример схемы реляционной БД

Термин «NoSQL» возник в июне 2009 года и был расшифрован как “Not Only SQL” - “не только SQL”. Таким термином обозначают нереляционные БД, в которых нет внутренних связей. БД NoSQL могут использовать различные модели представления данных в зависимости от своего назначения.

Технология NoSQL убирает все ограничения реляционной модели (например, трудоемкость горизонтального масштабирования, недостаток производительности в кластере), а также облегчает способы хранения и доступа к данным. Такие БД используют неструктурированный подход, организуя данные специфических типов за малый промежуток времени и предлагая различные типы доступа к ним (рис. 2).

Рисунок 2 - Пример структуры БД NoSQL

Свое активное применение NoSQL БД нашли в работе с Big Data - «большими данными», т.к. они позволяют хранить сложные динамические структуры без их привязки к строгим схемам, одновременно поддерживая для них высокую скорость записи и чтения. Существует несколько различных моделей и систем управления БД NoSQL, например:

  • хранилище «ключ-значение» - Redis, MemcacheDB и др.;

  • распределенное хранилище (Column-oriented) - Cassandra, HBase и т.д.;

  • документо-ориентированные СУБД - MongoDB, Couchbase и т.д.;

  • БД на основе графов - OrientDB, Neo4J и т.д.

Модель хранилища «ключ-значение» работает с данными типа «ключ-значение». Здесь нет ни структуры, ни связей. После подключения к серверу, приложение может задать ключ и его значение, а в последствии получать эти данные по запросу. Такие СУБД обычно используются для быстрого сохранения информации. Они отличаются высокой скоростью доступа к данным, легко масштабируются. Оптимально использование таких СУБД для хранения сессий, кэш-памяти, счетчиков посещений или просмотров и т.д.

Распределенное хранилище является усовершенствованной версией хранилища «ключ-значение». Представляет собой двумерный массив, где каждый ключ (запись) содержит одну или несколько пар «ключ-значение», привязанных к нему. Модель позволяет хранить и использовать очень большие объемы неструктурированных данных различного типа. Такие БД обычно используются, когда недостаточно простых пар «ключ-значение».

Документо-ориентированные БД поддерживают иерархические структуры с гораздо большей вложенностью, чем «ключ-значение» и распределенные хранилища. Это позволяет описывать сколь угодно сложную структуру документа и записывать его в БД. Но такие базы имеют серьезный недостаток: в случае запроса конкретных полей данного документа в ответ приходит весь документ, что отрицательно сказывается на производительности программных приложений для работы с БД.

БД на основе графов используют древовидные структуры с узлами и связями, соединяющими их. Так же, как и в математике, некоторые операции с данными гораздо удобнее выполнять благодаря связям между ними и их группировке. Такие БД используются в приложениях, где необходимо иметь четко установленные связи. Например, при регистрации в социальной сети хранить связи между «друзьями» гораздо проще в случае использования БД на графах.

Таким образом, можно сделать вывод, что технология NoSQL является эффективной для хранения и обработки больших объемов неструктурированных данных, требующих более высоких скоростей для операций записи и чтения по сравнению с реляционными БД.

Список литературы

1. Дейт, К., Дж. Введение в системы баз данных. 6-е изд. – К.; М., СПб.: «Вильямс», 2015. – 848с.

2. Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. Базы данных: Учебник для высших учебных заведений/Под ред. проф. А.Д. Хомоненко. – СПб.: КОРОНА принт, 2012. – 672с.

3. В.В. Корнеев, А.Ф. Гареев, С.В. Васютин, В.В. Райх Базы данных. Интеллектуальная обработка информации. – М.: Нолидж, 2013. – 496с.

4. Маркин Е.И., Рябова К.М., Артюшина Е.А. Разработка web-приложения с использованием архитектуры «клиент-сервер» // Международный студенческий научный вестник, 2016. – № 3-1. – С. 84-86.

5. Зинченко М.Н., Артюшина Е.А. Реализация OLAP-технологии на базе аналитической платформы Deductor Academic // Современные наукоемкие технологии, 2014. – № 5-2. – С. 88-90.

6. Маркин Е.И., Рябова К.М., Артюшина Е.А. Использование облачных технологий при изучении СУБД MS SQL Server // В сб.: Современные методы и средства обработки пространственно-временных сигналов сборник статей XIV Всероссийской научно-технической конференции. Под ред. И.И. Сальникова, 2016. – С. 89-94.

7. Жулев С.А., Ведюшкина А.Е., Артюшина Е.А. Проблемы использования облачных технологий при изучении СУБД MS SQL Server // Международный студенческий научный вестник, 2015. – № 3-2. – С. 271.

Просмотров работы: 456