МБЛН 01? соммишелткж Б((ШРМБШ: Iss. 1 (141). 2018
ДудаковН.С.,
инженер-программист, ОАО «Концерн «Системпром»
РАЗРАБОТКА СИСТЕМЫ УПРАВЛЕНИЯ ХРАНЕНИЕМ ДАННЫХ АСУ ВКО
В работе рассматриваются вопросы проектирования системы хранения данных для АСУ ВКО. Предложена методика оценки и повышения эффективности систем хранения данных. Разработан прототип системы, предназначенной для обработки разнородныхданных.
В настоящее время невозможно переоценить важность автоматизированных систем управления (АСУ) во всех аспектах информационной деятельности. Одной из важнейших сфер применения АСУ является процесс управления вооруженными силами (ВС), обеспечивающими безопасность государства. В свою очередь, анализ современных вооруженных конфликтов показывает особую значимость авиации и противовоздушной (противоракетной) обороны.
Создание современной эффективной систе-мывоздушно-космическойобороныневозможно без автоматизации процессов управления войсками, силами и средствами ВКО во всех звеньях системы управления. Превосходство в получении развединформации, в скорости и эффективности управления способно обеспечить победу даже уступающей противнику по численности и огневым средствам армии. Таким образом, особое значение в настоящее время приобретают вопросы надежного и эффективного управления войсками.
В настоящее время, АСУ войсками, силами и средствами ВКО находятся на этапе развития, проходящем в условиях ужесточения требований к оперативности, непрерывности, устойчивости и скрытности управления войсками ВКО, ограниченного финансирования разработок средств автоматизации, появления и разработки новых огневых и информационных средств авиации, ЗРВ, РТВ, обладающих более широкими воз-
можностями, чем существующие средства. Его отличительными чертами являются активное развитие и внедрение в АСУ новых информационных и телекоммуникационных технологий, высокие темпы совершенствования элементной базы средств автоматизации и связи [1].
При проектировании АСУ ВКО одним из наиболее важных моментов является управление доступом, хранением и использованием информации. Функциональная и эффективная работа современных АСУ невозможна без специализированных средств хранения и обработки информации. С увеличением объемов информации и сложности производимых вычислений возрастают требования к базам данных (системам управления хранением данных, СУХД), которые являются ядром современных АСУ.
При работе АСУ доступ к хранимой информации, так или иначе, получают все приложения и модули системы: источники информации, расчетные модули, средства визуализации, и т.д. Интенсивность и характер взаимодействия приложений с СУХД АСУ различны и определяются функциональностью приложений и спецификой хранимых данных.
СУХД (далее, в т.ч., хранилище данных) является централизующим звеном в работе АСУ, от характеристик его работы, отудобствадоступа к данным зависит работа всего комплекса, т.е., при большом количестве обращений к хранилищу именно оно может быть узким местом
комплекса с точки зрения производительности. Эффективность работы хранилища данных зависит от используемых программных средств, осуществляющих доступ к данным, модели данных и производительности используемого оборудования.
На настоящий момент существует большое количество систем управления хранением данных, удовлетворяющихразличным запросам. При этом закрытые код и архитектура коммерческих СУБД не позволяют рассматривать их в качестве хранилища данных АСУВ. Тем не менее, несмотря на развитие и распространенность систем хранения данных, они не лишены недостатков. Так, информационные системы с клиент-серверной архитектурой чрезвычайно зависимы от мощности сервера (серверного кластера) и пропускной способности каналов передачи информации. Клиент-серверная архитектура более удобна для хранения больших объемов редко запрашиваемой информации, так как'частая передача больших объемов данных по сети может быть затруднена. Локально-ориентированные системы частично решают данные проблемы, но появляется необходимость решения ряда задач по синхронизации в клиентских и серверных копиях баз данных, кроме того, при большом количестве хранящихся данных может быть затруднен запрос полной копии базы данных при инициализации клиентских рабочих мест.
Ряд программных решений сочетают в себе возможности приведенных архитектур, осуществляя частичное разделение хранимых данных и располагая часть из них, в том числе, в локальных базах данных [2]. В таких случаях фактором, определяющим производительность системы при фиксированных программных решениях, является алгоритм разделения данных (выделения локальной части). В большинстве подобных систем разделение данных осуществляется по принципу кэширования, т.е., динамического размещения часто запрашиваемых данных в локальных хранилищах. Механизм кэширования позволяет оперировать только частотой запросов и не учитывает характеристики локальных хранилищ данных. В ряде других решений, разделение осуществляется исходя из предметной области и «примерных» свойств частей. Также, достаточно распространенным
подходом является проектирование распределен-ныхбаз данных, прикоторомданныеразделяются между серверами кластера таким образом, что каждый из серверов хранит часть данных и таблицу размещения всех данных хранилища, осуществляя передачу запросов частей данных соответствующим серверам и последующую компиляцию результатов. Однако, при проектировании АСУ ВКО, данный подход не является целесообразным, в виду небольшого количества серверов, требований по резервированию и отсутствия данных объема, существенного для масштабирования.
Основная сложность при разработке систем управления хранением данных состоит в разнородности хранимой информации и, как следствие, сложности построения достаточно универсального внутреннего механизма хранения данных (движка СУХД). Разнородность данных проявляется, например, в значительном различии темпов доступа к информации. В АСУ хранимые данные варьируются от сравнительно редко меняющихся объектов большого объема до меньших, запрашиваемых и изменяемых несколько раз в секунду.
В целом, для каждого готового программного решения, в соответствии с его внутренней архитектурой, существуют данные с «наиболее подходящим» набором свойств, обрабатываемые с наибольшей для данного решения эффективностью и данные с «менее подходящим» набором свойств, обработка которых данным программным решением затруднена. В то же время, учитывая значительную разнородность хранимых данных, жесткие требования и высокая нагрузка современных АСУ не позволяют пренебречь характеристиками обрабатываемых данных за счет производительности того или иного программного решения.
Таким образом, отсутствие универсальной СУБД с открытым кодом, ограничение на мощность и стоимость серверного оборудования приводит к тому, что при проектировании крупной АСУ, предназначенной для обработки разнородных данных, зачастую невозможно обеспечить все требования к системе одним готовым программным решением.
В данной работе предлагается повысить эффективность управления хранением данных при проектировании АСУ за счет разделения
МБЛН 01? соммишслткж Б(.)иГ1]Е>:М/1:БТ«ГТ. Iss. 1 (141). 2018
хранимых данных и использования нескольких взаимодействующих в той или иной степени доработанных программных решений [3].
Соответственно, рассматривая хранимую информацию, как набор классов данных (таблиц в реляционной модели данных), предлагается улучшить эффективность управления хранением данных за счет подбора распределения классов по базам данных. Выбор, в общем случае, нескольких программных решений позволяет совместить преимущества каждой из систем, избегая, по возможности, недостатков за счет наилучшего сопоставления части обрабатываемых данных и хранилища, отвечающего за часть. При этом разбиение предлагается считать неизменным на протяжении работы комплекса.
При проектировании СУХД АСУ, используя данный подход, возникают две задачи — выбор программных решений (хранилищ) и получение оптимального распределения классов данных по хранилищам.
Для решения первой задачи предлагается использовать два хранилища с клиент-серверной и распределенной архитектурой соответственно. С точки зрения предметной области, актуальным является разделение данных по темпам обновления, на более медленную «статическую» (справочные данные, классификационная информация) и более быструю «динамическую» (информация о воздушных объектах) части. Соответственно, на основании обзора современных систем хранения данных, предлагается использовать СУБД Ро81§ге8д1 — мощную реляционную базу данных — для статических данных и систему хранения динамической информации (динамическое хранилище данных — ДХД), основанную на БОЬке — производительной реляционной библиотеке, в качестве основы базы данных для динамической информации. ДХД представляет собой распределенное хранилище данных, эффективное для часто меняющихся данных с приоритетом чтения.
Решение задачи разбиения хранимых данных требует создания методики, включающей в себя математическую модель процесса обработки запросов хранилищем данных (системой из несколькиххранилищ), критерии эффективности отдельного хранилища и совокупной СУХД, а также методы получения оптимального разбиения классов данных по хранилищам.
Одним из возможных подходов кпостроению мат. модели может быть использование математического аппарататеориимассового обслуживания (ТМО) для описания процесса обработки запросов к СУХД. Так, согласно теоретическим и экспериментальным, полученным в работе, данным, поток запросов к хранилищу данных можно описывать, как пуассоновский поток событий [4]. Соответственно, в качестве критерия эффективности предлагается использовать производные от среднего времени ожидания величины:
Критерий эффективности хранилища данных тг-, I = 1, М:
м =
2 (1 Ь)
где суммарная интенсивность потока заявок для ьтого хранилища, Ь мат. ожидание времени обслуживания заявок, аБ дисперсия времени обслуживания заявок.
Критерий эффективности системы из М хранилищ данных:
М N
1=ТКьу + м Х
' з
где Ьу время обслуживания заявки класса пз,у = 1,N рименительно к хранилищу т1 т.е.,
Пу е тг- Ху элемент принадлежности: Ху =
пу е т I 0, Пу £ т1
Данные критерии позволяют оха-
рактеризовать как конкретное хранилище, так и систему из нескольких хранилищ данных, каждое из которых обрабатывает свою часть классов данных.
Также, для выделения более существенных свойств данных в работе предлагается провести рекластеризацию первоначального набора классов, так, чтобы в новом наборе классов каждому классу соответствовал единственный поток запросов с более или менее постоянными характеристиками. Рекластеризация не вносит принципиальных изменений в сущность методики получения оптимального разбиения данных, но положительно сказывается на её точности.
Далее, определение оптимального разбиения хранимых данных является задачей оптимизации критерия / тносительно переменных относящейся к классу нелинейных псевдо-булевых задач. Вариантом решения задачи оптимизации является алгоритм частичной линеаризации, позволяющий перейти кдробно-линейной задаче оптимизации, а также — алгоритм сведения дробно-линейной задачи к задаче булевой выполнимости (¿^Г-задача). >5^Г-задача является широко известной ЛР-полной задачей в теории алгоритмов [5].
Несмотря на высокую теоретическую вычислительную сложность, существует большое количество алгоритмов и приложений, основанных на алгоритмах поиска с возвратом, позволяющих решать £4Г-задачу за приемлемое время даже при количестве переменных порядка 106 [6].
Таким образом, в данной работе предложен подход, позволяющий при разработке СУХД АСУ совместить несколько программных решений — хранилищ данных, при этом повышая эффективность совокупной системы за счет подбора оптимального разбиения данных по используемым хранилищам. Предложена модель описания процесса обработки запросов СУХД, критерии эффективности данного процесса, а также методика получения оптимального разбиения. Данный подход позволяет обрабатывать данные с широким диапазоном характеристик, и СУХД, разработанная в соответствии с данным подходом, является эффективным решением задачи хранения данных при проектировании АСУВКО.
СПИСОК ЛИТЕРАТУРЫ
1. Андреев В.Н., «5 этапов развития АСУ», Военно-космическая оборона, № 2 (57), 2011.
2. Дэйв Энсор, Йен Стивенсон. «Oracle. Проектирование баз данных» K.:BHV, 1999.
3. Дудаков Н.С., Пирогов Н.Е., Шумилов Ю.Ю., «Гибридная система управления хранением данных», Вестник НИЯУ МИФИ №1 2012.
4. Хинчин А.Я. «Работы по математической теории массового обслуживания», Москва, 1963.
5. Беллман Р., Дрейфус С. «Прикладные задачи динамического программирования», Москва, 1965.
6. Matti Jarvisalo, Daniel Le Berre, Olivier Roussel, «The International SAT Solver Compétitions», «www. satcompetition.org».