Научная статья на тему 'МОДЕЛЬ ИНФОРМАЦИОННОГО ОБЕСПЕЧЕНИЯ СИСТЕМ УПРАВЛЕНИЯ РЕАЛЬНОГО ВРЕМЕНИ ПРИ РЕШЕНИИ ЗАДАЧ С ШИРОКИМ СПЕКТРОМ ВХОДНЫХ ДАННЫХ'

МОДЕЛЬ ИНФОРМАЦИОННОГО ОБЕСПЕЧЕНИЯ СИСТЕМ УПРАВЛЕНИЯ РЕАЛЬНОГО ВРЕМЕНИ ПРИ РЕШЕНИИ ЗАДАЧ С ШИРОКИМ СПЕКТРОМ ВХОДНЫХ ДАННЫХ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
25
8
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ТЕОРИЯ МАССОВОГО ОБСЛУЖИВАНИЯ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Дудаков Николай Сергеевич, Макаров Кирилл Владимирович, Путято Сергей Анатольевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

MODEL OF REAL-TIME INFORMATION SYSTEMS FOR PROBLEMS WITH A WIDE RANGE OF INPUT DATA

The purpose of this article is database modelling for real-time special-purpose systems. It is shown that the use of the all-purpose client-server databases for solving the air force and air defense tasks leads to poor query performance. In some cases, the use of more simple distributed databases allows reducing the query time by 90%, but the amount of data does not allow using them as a single solution. Given the limitations of the scientific and methodological methods for evaluating the effectiveness of the database, the article offers a method of modeling the database, which allows to parametrize data and evaluate database performance. Database modelling helps to carry out the management structure of the database. Database modeling is made by mathematical methods of queuing theory, the DBMS performance criteria are based on the average execution time of queries to the database. This article provides a method for constructing an optimal database structure when using a distributed inhomogeneous database for processing of data with a wide range of characteristics. Restrictions in optimization problem are based on database load. The optimization problem is reduced to the Boolean satisfiability problem - the problem of determining if there exists an interpretation that satisfies a given Boolean formula. The variation of the branch and bound algorithm is used to solve the SAT-problem. It is shown that the design of real-time database management system based on database modeling techniques can significantly increase the performance of data processing. This article provides a model of a database management system as a queuing system. It is shown that the application of optimal control database structure allows you to double the capacity in dealing with real-time heterogeneous tasks.

Текст научной работы на тему «МОДЕЛЬ ИНФОРМАЦИОННОГО ОБЕСПЕЧЕНИЯ СИСТЕМ УПРАВЛЕНИЯ РЕАЛЬНОГО ВРЕМЕНИ ПРИ РЕШЕНИИ ЗАДАЧ С ШИРОКИМ СПЕКТРОМ ВХОДНЫХ ДАННЫХ»

Труды МАИ. Выпуск № 94

http://trudymai.ru/

УДК 623.618.3

Модель информационного обеспечения систем управления реального времени при решении задач с широким спектром входных данных

Дудаков Н.С*., Макаров К.В.**, Путято С.А.***

Группа компаний «РТИ», ул. 8 Марта,10, стр. 1, Москва, 127083, Россия *e-mail: nikolay.dudakov@gmail.com **e-mail: kmakarov@oaorti.ru ***e-mail: sputyato@oaorti.ru

Аннотация

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

Ключевые слова: системы управления базами данных, автоматизированные системы управления, теория массового обслуживания.

Введение

При проектировании современных информационных систем одним из наиболее важных моментов является управление доступом, хранением и использованием информации. С увеличением объемов информации и сложности

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

Проектирование и исследование баз данных представляет собой динамично развивающуюся область разработки программного обеспечения. Вопросы разработки и проектирования СУБД широко представлены в научной и прикладной литературе, как в классических работах (К. Дж. Дейт, Э. Кодд, Т. Коннелли) [1], так и в материалах по современным реализациям СУБД (Oracle, DB2, PostgreSQL, Линтер).

В большинстве современных проектов в качестве универсальной СУБД используется клиент-серверная объектно-реляционная промышленная СУБД PostgreSQL. Зачастую, PostgreSQL удовлетворяет поставленным при проектировании требованиям, тем не менее, при высокой нагрузке, время выполнения ряда запросов может быть уменьшено на 90% заменой промышленной СУБД на более простую и, в ряде случаев, быструю локальную базу данных (БД). В то же время, возможностей простых и быстрых локальных БД не достаточно для выполнения всех функциональных требований.

Для сравнения производительности баз данных при определенной нагрузке построена зависимость времени выполнения запросов на чтение для промышленной клиент-серверной СУБД, сервер которой расположен локально и удаленно соответственно, а также для движка БД SQLite - простого и производительного локального хранилища данных (Рис.1):

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

Оценка эффективности СУБД при решении задач с широким спектром

входных данных

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

области, актуальным является использование распределенных неоднородных СУБД [2] (РН СУБД): подбор распределения данных, с учетом их характеристик, по частям РН СУБД позволит обрабатывать их с большей эффективностью. Недостатком применения РН СУБД, очевидно, является снижение надежности системы в целом и необходимость поддержки ссылочной целостности всей системы.

Для описания процесса обработки запросов в СУБД в работе предлагается провести математическое моделирование СУБД, для чего использовать аппарат теории массового обслуживания (ТМО). Математическое моделирование распределенных систем широко используется, в частности, при проектировании систем специального назначения [3].

При описании модели, хранимую информацию удобно представлять в виде объектов, объекты группируются в классы данных, каждый объект принадлежит единственному классу.

Для формальной постановки задачи вводятся следующие обозначения:

" Е Л\; = 1.Л" - класс данных;

Е М.:' = П7 - компонент РН СУБД.

Исходя из аппарата ТМО, система, состоящая из выбранного хранилища и

потока запросов группы классов, рассматривается, как система массового

обслуживания (СМО), обрабатывающая случайный поток заявок. СМО

рассматривается, как система с бесконечным ожиданием, т.к., отбрасывание

устаревших пакетов осуществляется на уровне подключаемых служб и приложений.

Поступление информации от большого числа источников сложно предсказуемо, на

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

Согласно классическим работам (теорема Пальма, предельная теорема Хинчина) [4], «реальный» поток данных с достаточным приближением описывается, как пуассоновский, число событий к на временном интервале ^0 распределено с вероятностью:

(1)

где А > 0 - интенсивность потока событий.

При рассмотрении времени обработки запросов, тип входящей заявки можно считать случайным - дискретной случайной величиной с вероятностью получения заявки класса^-, определяемой следующим образом:

(2)

В соответствии с аддитивностью пуассоновского потока, считается, что в систему поступает один поток с интенсивностью Л = ± и случайным, дискретно распределенным временем обслуживания Ь, функция распределения (Ф.Р.) которого В(1:) - ступенчатая функция.

Для описания системы предлагается использовать «элемент принадлежности» класса к хранилищу:

где обозначение п] т1 определяет обработку объектов класса ^ в

компоненте

Далее, для связанных классов (выполнение запроса к классу пц требует предварительного выполнения запроса Щ2) можно полагать реальное время

выполнения заявки:

(4)

Для запросов на чтение, которые в большинстве современных баз данных являются неконкурентными между собой, вводится отдельная величина - время выполнения запроса типа П1 на чтение. Тогда, учитывая одновременную возможность выполнения запросов на чтение, для каждого хранилища рассматривается запрос отдельного типа с интенсивностью:

N

^N + 1 — 7

X

(5)

1=1

и временем обработки заявки:

N

—У

N/-1

^Хц

(6)

1=1

Рассматривая описанную модель, искомой величиной является среднее время

ожидания заявки:

где Ъ(2) - второй момент времени обслуживания, время обработки заявок дискретная случайная величина с Ф.Р.

N

N

(8)

1=0

1=0

Соответственно, «реальное» (ожидаемое) время выполнения заявки т

ьи = о^ + ь^х,

(9)

Линейная зависимость величин Ъш+1 и Ь|± ох переменных х,/ позволяет

использовать модель без ограничения общности.

Для оценки точности модели проводилось сравнение времени ожидания выполнения запросов для движка БД БрЬйе (Рис.2):

Рис.2 Точность моделирования при повышении интенсивности запросов

Построенные зависимости времени ожидания выполнения запросов при росте интенсивности нагрузки показывают, что модель является адекватной и применимой даже при конкурентном доступе к БД.

Рассматривая распределение % = данных по РН СУБД,

критерием эффективности для одного хранилища предлагается считать среднее время ожидания выполнения запроса,

(10)

Для системы хранилищ, критерий построен на основе полного времени пребывания заявки в системе:

М N

Ом +

(11)

Критерий позволяет учесть загрузку всех хранилищ соответственно обрабатываемым наборам классов и динамику поступления входящих заявок.

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

Задачу поиска оптимального разбиения хранимых данных ставится следующим образом: необходимо найти минимум критерия J (10) на множестве

всевозможных распределений X при ограничениях, обеспечивающих отсутствие

накопления очереди при обработке запросов и обработку каждого класса единственным хранилищем:

Задача оптимизации, поставленная в работе, является задачей псевдо-булева программирования. В качестве метода решения задачи предлагается сведение исходной нелинейной задачи к дробно-линейной путём замены каждого попарного произведения переменных хи]2*хЩ4 на новую переменную иЩ2»]4 е (ОД) с добавлением дополнительных ограничений [5]. Далее, частично линеаризованная задача сводится к широко известной проблеме выполнимости булевых формул (БАТ-задача). Суть преобразований при решении задачи оптимизации сводится к получению решения, удовлетворяющего ограничениям (построение приемлемого решения) и итерационному добавлению нового ограничения для отсечения найденного решения.

Также, вариантом решения задачи оптимизации может быть поиск локального оптимального значения критерия (10) при начальном приближении, соответствующем минимуму загрузки компонент СУБД:

(12)

Линейная зависимость выражения (13) от переменных обеспечивает быстрый поиск начального приближения, корреляция загрузки (13) и критерия (10) - быструю сходимость к минимуму критерия.

Сведение задачи оптимизации к задаче выполнимости булевых формул широко распространено вследствие развитого математического аппарата решения SAT-задач. Так, например, задачи кластеризации легко могут быть представлены, как задачи псевдо-булева программирования с соответствующим решением [6]. На настоящий момент применяются два основных типа алгоритмов для решения SAT-задачи: алгоритмы локального поиска, работа которых состоит в модификации некоторого начального приближения до выполняющего набора переменных, и DPLL-алгоритмы (Алгоритм Дэвиса-Патнема-Логемана-Лавленда), которые выполняют поиск в глубину по дереву всевозможных наборов. Программно реализуемые алгоритмы, в основном, сочетают практически более быстрые алгоритмы локального поиска с возможностями DPLL-алгоритмов по упрощению и сокращению размера формул. Несмотря на высокую теоретическую сложность алгоритмов, программы SAT-solvers достаточно эффективны на практике: согласно результатам ежегодно проводимого соревнования, программы за приемлемое время решают задачи, состоящие из порядка 104 переменных и 5-104 ограничений.

Практическая реализация распределения данных с использованием современных реляционных СУБД PostgreSQL [7] и БД SQLite показывает значительный прирост производительности: по сравнению с использованием только клиент-серверной СУБД PostgreSQL (Рис.3):

Рис.3 Среднее время выполнения запросов при повышении нагрузки

Построенные зависимости показывают, что оптимальное распределение классов данных значительно уменьшает среднее время выполнения запросов и позволяет вдвое увеличить нагрузку без потери производительности.

Заключение

В работе рассматривалась задача проектирования СУБД для высоконагруженных систем. Вследствие разнородности решаемых задач и существенной зависимости производительности СУБД от характеристик хранимых данных, предлагается использование РН СУБД.

Разработана математическая модель РН СУБД на основе аппарата ТМО, позволяющая количественно охарактеризовать эффективность СУБД с точки зрения производительности и учитывающая неконкурентные и связанные запросы к СУБД.

Согласно полученным экспериментальным данным, модель является точной и адекватной даже при значительной интенсивности запросов.

Поставлена задача оптимизации структуры РН СУБД путем поиска оптимального разбиения хранимых данных по частям РН СУБД. Предложен метод решения задачи оптимизации, как задачи псевдо-булева программирования, на основе сведения к задаче булевой выполнимости.

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

Работа выполнена при поддержке гранта Президента РФ

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

(№ НШ-6831.2016.8)

Библиографический список

1. Кузнецов С.Д. Основы современных баз данных. - М.: Изд-во «Интернет-университет информационных технологий», 2005. - 488 с.

2. Дейт К. Дж. Введение в системы баз данных. - М.: Вильямс, 2001. 1328 с.

3. Кондрашин М.А., Арсенов О.Ю., Козлов И.В. Применение технологии виртуализации и облачных вычислений при построении сложных распределенных моделирующих систем // Труды МАИ. 2016. № 89. ЦКЬ: http://trudymai.ru/published.php?ID=73411

4. Клейнрок Л. Теория массового обслуживания - М.: Машиностроение, 1979. -432 с.

5. Boros E., Peter L. Hammer. Pseudo-Boolean Optimization // Discrete Applied Mathematics. 2002. Vol. 123, pp. 155-225.

6. Калашников В.Б. Сравнительный анализ алгоритмов обнаружения объектов с неизвестной поляризационной матрицей рассеяния методов математического моделирования // Труды МАИ. 2016. № 89. URL: http: //trudymai .ru/published.php?ID=73368

7. Муравьев С.К., Дворянкин С.В., Насенков И.И. СУБД: проблема выбора // Открытые системы. СУБД. 2015. № 1. С. 22-24.

i Надоели баннеры? Вы всегда можете отключить рекламу.