350 руб
Журнал «Динамика сложных систем - XXI век» №2 за 2022 г.
Статья в номере:
Оценка времени выполнения поисковых запросов в NoSQL и объектно-реляционной базах данных
Тип статьи: научная статья
DOI: 10.18127/j19997493-202202-05
УДК: 004.657
Авторы:

Е.А. Елисеева1, Б.С. Горячкин2, М.В. Виноградова3, М.В. Черненький4

1–3 Московский государственный технический университет им. Н.Э. Баумана (Москва, Россия)
 

Аннотация:

Постановка проблемы. Для оценивания времени выполнения запросов к кластерным базам данных (БД): Neo4J, MongoDB, Cassandra, PostgreSQL был проведен эксперимент на операционной системе Ubuntu, работающей на базе virtual box на windows с разворачиваем кластера БД на нескольких серверах, где сервер-мастер (master) выполнял операции на запись данных и передавал сформированные изменения другим серверам, а реплики (slave) производили чтение информации из БД, оптимизируя нагрузку между серверами.

Цель. Исследовать производительность систем управления базами данных (СУБД), оцениваемую по времени выполнения запросов к кластерным БД; на основе полученных данных сформировать аналитические зависимости.

Результаты. Экспериментальная БД содержала три сущности: пользователь (User), права пользователя (UserPermit) и научные статьи (ScientificArticles). Сущности заполнялись строками в диапазоне от 1 до 300000 значений. Для определения времени выполнения запросов были выбраны два вида запроса на вставку данных (простая и сложная), а также два вида запросов на чтение данных (1 – простая и 2 – сложная). В запросе № 1 (простая вставка) с небольшим числом данных (до 1000 строк) наиболее производительна оказалась СУБД Cassandra. При добавлении больших объемов данных (более 1000 строк) лучшие результаты показала СУБД MongoDB. В запросе № 2 (простое чтение) до 1000 строк выиграла СУБД MongoDB, а при чтении более 1000 строк данных первенство взяла СУБД PostgreSQL. В запросе № 3 (сложная вставка) СУБД Cassandra и MongoDB показали схожие результаты с запросом № 1. Однако в отличие от простой вставки, в сложной добавлялась не одна строка данных в сущность User, а четыре с повторяющимся полем user_permit при выполнении одного запроса. В запросе № 4 (сложное чтение) происходила выборка данных по всем полям с запросами к таблицам User, UserPermit и ScientificArticles и отбор пользователей по адресу и последующее получение от таких пользователей всех прав доступа и научных статей. В итоге при большой выборке выявить явного лидера оказалось затруднительно, но при сокращении числа строк до 100 СУБД Cassandra демонстрировала лучшее время запроса.

По запросам на сложное чтение и вставку данных были сформированы аналитические зависимости, которые также были экспериментально проверены и подтверждены с погрешностью от 0,16 до 32%.

Практическая значимость. В результате данного исследования выработаны рекомендации по выбору СУБД для организации хранилища информационных материалов на основе времен выполнения запросов к ним.

Страницы: 44-51
Для цитирования

Елисеева Е.А., Горячкин Б.С., Виноградова М.В., Черненький М.В. Оценка времени выполнения поисковых запросов в NoSQL и объектно-реляционной базах данных // Динамика сложных систем. 2022. Т. 23. № 2. С. 44−51. DOI: 10.18127/j19997493-202202-05

Список источников
  1. Горячкин Б.С. Эргономический анализ систем обработки информации и управления // Вестник евразийской науки. 2017.
    Т. 9. № 3. C. 72.
  2. Орлов С.А. Технологии разработки программного обеспечения. СПб.: Питер. 2002.
  3. Виноградова М.В., Белоусова В.И. Унифицированный процесс разработки программного обеспечения. М.: МГТУ им. Н.Э. Баумана. 2015.
  4. Виноградова М.В., Анисимов Н.А. Установка и настройка кластера Hadoop на базе контейнерной виртуализации LXC // Инженерный вестник. 2015. № 4.
  5. Григорьев Ю.А., Плутенко А.Д., Плужникова О.Ю. Реляционные базы данных и системы NoSQL. Амурский гос. ун-т. 2018.
  6. Григорьев Ю.А. Оценка времени выполнения SQL-запросов к базам данных // Машиностроение и компьютерные технологиb. 2012. № 01.
  7. Григорьев Ю.А., Ермаков Е.Ю. Анализ времени выполнения запроса в параллельном колоночном хранилище данных // Инженерный журнал: наука и инновации. 2013. № 11 (23).
  8. Ермаков Е.Ю. Математическая модель времени выполнения запроса в параллельном колоночном хранилище данных и пример ее использования // Современные информационные технологии и ИТ-образование. 2013. № 9.
  9. Григорьев Ю.А., Ермаков Е.Ю. Сравнение процессов обработки запроса к одной таблице в параллельной строчной и колоночной системе баз данных // Инженерный журнал: наука и инновации. 2012. № 3 (3).
  10. Ермаков Е.Ю. Математическая модель времени выполнения запроса в параллельном колоночном хранилище данных и пример ее использования // Современные информационные технологии и ИТ-образование. 2013. № 9.
  11. Григорьев Ю.А., Плужников В.Л. Алгоритм выбора архитектуры параллельной системы баз данных по критерию стоимости // Машиностроение и компьютерные технологии. 2011. № 12.
  12. Данилов А.М., Гарькина И.А. Интерполяция, аппроксимация, оптимизация: анализ и синтез сложных систем. Пенза: ПГУАС. 2014.
  13. Онлайн калькуляторы PLANETCALC. URL: https://planetcalc.ru/5992/? (дата обращения: 01.04.2022).
Дата поступления: 6.04.2022
Одобрена после рецензирования: 14.04.2022
Принята к публикации: 23.05.2022