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

кандидата технических наук
Лучинин, Захар Сергеевич
город
Санкт-Петербург
год
2015
специальность ВАК РФ
05.13.12
Автореферат по информатике, вычислительной технике и управлению на тему «Модель и методы поддержки ограничений целостности в документо-ориентированных базах данных»

Автореферат диссертации по теме "Модель и методы поддержки ограничений целостности в документо-ориентированных базах данных"

На правах рукописи

Лучинин Захар Сергеевич

МОДЕЛЬ И МЕТОДЫ ПОДДЕРЖКИ ОГРАНИЧЕНИИ ЦЕЛОСТНОСТИ В ДОКУМЕНТО-ОРИЕНТИРОВАННЫХ БАЗАХ ДАННЫХ

05.13.12 - Системы автоматизации проектирования (приборостроение)

Автореферат диссертации на соискание ученой степени кандидата технических наук

005569510

2 7 МАП т

Санкт-Петербург - 2015

005569510

Работа выполнена на кафедре информационно-вычислительных систем Поволжского государственного технологического университета.

Научный руководитель:

Официальные оппоненты:

доктор технических наук, профессор Сидоркина Ирина Геннадьевна

Филатова Наталья Николаевна, доктор технических наук, профессор кафедры Автоматизации технологических процессов ФГБОУ ВПО «Тверской государственный технический университет»;

Лячек Юлий Теодосович, кандидат технических наук, профессор кафедры САПР Санкт-Петербургского государственного электротехнического университета «ЛЭТИ» им. В.И. Ульянова (Ленина) (СПбГЭТУ)

Ведущая ФГБОУ ВПО «Казанский национальный

организация: исследовательский технический университет

им. А. Н. Туполева - КАИ»

Защита состоится «17» июня 2015 года в 15 ч.50 мин. на заседании диссертационного совета Д 212.227.05 Санкт-Петербургского национального исследовательского университета информационных технологий, механики и оптики по адресу: 197101, Санкт-Петербург, Кронверкский пр., д. 49, ауд. 285.

С диссертацией можно ознакомиться в библиотеке Санкт-Петербургского национального исследовательского университета информационных технологий, механики и оптики по адресу: 197101, Санкт-Петербург, Кронверкский пр., д. 49 и на сайте fppo.ifmo.ru. Автореферат разослан «[Ъ » цисюЯ 2015 года.

Ученый секретарь $

диссертационного совета Д 212.227.05, / /

кандидат технических наук, доцент Л! // В. И. Поляков

ОБЩАЯ ХАРАКТЕРИСТИКА ДИССЕРТАЦИИ

Аетуальность темы диссертационного исследования. При создании сложных устройств возникает потребность хранения детального описания устройств, требований и сопутствующей информации. Чем сложнее устройство, тем больше уникальных характеристик необходимо хранить для успешной реализации устройства. Следствием является потребность в управлении большим объемом слабоструктурированных данных. Реляционные базы данных не предназначены для хранения и обработки большого объема слабоструктурированных данных. Именно поэтому используются нереляционные базы данных, которые нацелены на разработку базы данных (БД) без задания схемы и линейной масштабируемости.

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

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

Сложность реализации системы защиты целостности информации в ДОБД обусловлена отсутствием точной структуры данных, распределением базы данных более чем на одном сервере и высокими требованиями к производительности. В процессе исследования для решения поставленных в работе задач использовались научные труды, относящиеся к обработке больших объемов слабоструктурированных данных в распределенных БД под авторством зарубежных ученых Дж. Фрая, Б. Тальхайма, Д. Грея, а также и отечественных исследователей С.Д. Кузнецова и М.Р. Когаловского.

В диссертационной работе предложено семантическое расширение модели документо-ориентированной базы данных для декларативного представления

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

Объектом исследования являются методы разработки программного обеспечения для поддержки целостности данных в документо-ориентированных системах управления базами данных.

Предметом исследования являются модели данных документо-ориентированных баз данных для систем автоматизации проектирования.

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

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

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

Задачи исследования. Для достижения поставленной цели в работе решаются следующие задачи:

1) анализ представления слабоструктурированной информации в процедурах САПР приборостроения;

2) анализ существующих способов поддержки целостности информации в различных информационных сферах с целью формирования новых принципов поддержки целостности для документо-ориентированных баз данных;

3) исследование моделей и структур хранения данных, отвечающих требованиям обработки больших объемов слабоструктурированных данных в САПР приборостроения;

4) разработка модели данных, отражающей ограничения целостности, при обработке данных в цикле проектирования и представлении в документо-ориентированной базе данных;

5) разработка алгоритмов поддержки ограничений целостности предметной области и ограничений ссылочной целостности в слабоструктурированных структурах данных;

6) разработка методов поддержки ограничений целостности данных в до-кументо-ориентированных базах данных;

7) разработка структуры данных для хранения семантической информации, представляющей ограничения целостности данных, накладываемые в процессе эксплуатации базы данных;

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

Научная новизна. В процессе диссертационного исследования получены следующие результаты, характеризующиеся научной новизной:

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

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

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

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

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

Результаты, выносимые на защиту:

1) расширенная модель базы данных с поддержкой семантических ограничений целостности;

2) метод поддержки ограничений ссылочной целостности для документо-ориентированных СУБД;

3) метод поддержки ограничений целостности предметной области для документо-ориентированной СУБД;

4) структура данных для представления семантической информации слабоструктурированных данных документо-ориентированной БД;

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

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

Программное обеспечение зарегистрировано в Реестре программ для ЭВМ Федеральной службы по интеллектуальной собственности (свидетельство № 2014662856; дата государственной регистрации в Реестре программ для ЭВМ 10 декабря 2014 г.).

Апробация результатов работы. Основные положения и результаты диссертационной работы докладывались и обсуждались:

• на всероссийской научно-практической конференции «Информационные технологии в профессиональной деятельности и научной работе», 27-28 апреля 2012 г., 26-27 апреля 2013г., 27-28 июня 2014г., Йошкар-Ола;

• на Международной интернет-олимпиаде по информатике и программированию, 29 мая 2012 г., Йошкар-Ола;

• на 9 всероссийской научно-технической конференции «Информационные технологии в электронике и электротехнике», 5-7 июня 2014 г., Чебоксары;

• на конгрессе по интеллектуальным системам и информационным технологиям «IS&IT44», 2-8 сентября 2014 г., Дивноморское, Россия;

Результаты диссертационной работы были апробированы и внедрены в ООО «ТРЭВЕЛ ЛАЙН ПРО», ООО «ТРЭВЕЛ ЛАЙН СИСТЕМС», а также в учебный процесс в ФГБОУ ВПО «Поволжский государственный технологический университет».

Публикации. По материалам диссертации опубликовано 11 работ, в том числе 3 - в рецензируемых журналах, включенных в перечень ВАК.

Соответствие паспорту научной специальности. Указанная область исследования соответствует паспорту специальностей 05.13.12, а именно пункту 1 - «Методология автоматизированного проектирования в технике, включая постановку, формализацию и типизацию проектных процедур и процессов проектирования, вопросы выбора методов и средств для применения в САПР», а также пункту 7 - «Разработка научных основ построения средств автоматизации документирования, безбумажного документооборота, процессов работы электронных архивов технической документации, взаимодействия с изготовителем и потребителем изделий».

Структура и объем работы. Диссертационная работа состоит из введения, четырех глав с выводами, заключения, списка использованной литературы. Общий объем 121 страница машинописного текста. Диссертация содержит 29 рисунков, 3 таблицы и приложения.

КРАТКОЕ СОДЕРЖАНИЕ РАБОТЫ

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

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

Представлены исследования в области поддержки ограничений целостности в моделях данных и способах их хранения. Изложены представления ела-

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

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

Применение семантической информации об ограничениях целостности данных к документо-ориентированной БД позволило:

• повысить уровень понимания связанности структур и объектов базы данных;

• гарантировать целостность данных по ссылкам и на соответствие правилам предметной области;

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

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

1) поддержка существования взаимосвязанных объектов и связей между ними на уровне БД;

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

3) обеспечение поддержки на уровне БД корректных модификаций редактируемой модели предметной области в процессе ее эксплуатации;

4) проверка запросов к БД на корректность изменения данных и соответствие пользовательским ограничениям.

Во второй главе представлена расширенная модель базы данных для представления семантической информации в документо-ориентированных базах данных САПР приборостроения, которая позволяет анализировать пользовательские запросы на нарушения целостности данных. Обосновано представление связей между объектами предметной области в виде семантически значимых отображений, что позволяет формализовать их в предложенной модели данных. Определен объект предметной области в виде документа со статической и динамической структурой для формирования статических ограничений на структуру документа и ограничений на значения атрибутов.

Первым этапом проектирования базы данных является логическое проектирование. При проектировании модели предметная область (ПрО) представля-

ется с использованием таких понятий, как объект, связь, свойство объекта, свойство связи.

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

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

Для определения отношений между документами, введено понятие связь, базирующееся на понятии «кратность связи» теории графов. Кратность связи — количество возможных экземпляров некоторого типа документов, которые могут быть связаны с одним экземпляром другого типа документов. Каждая связь задается с помощью диапазона значений х...у или конкретным значением. Такую связь между объектами можно определить семантически значимым отображением. Семантически значимое отображение - это некоторый семантически значимый закон <р, по которому каждому объекту предметной области можно поставить в соответствие ноль или более объектов.

Объект х в таком случае рассматривается как прообраз объекта у при отображении <р (обозначение * = ^"'(у)). Вся совокупность прообразов объекта у при отображении <р называется областью ^-прообразов объекта у (обозначение {<Р~ (у)}), а количество элементов совокупности ее мощностью.

На основании понятия мощность сформулированы правила, определяющие существование объектов и связей между ними в базе данных:

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

Правило 2. Ассоциативное отношение, которое не является зависимым, может существовать в базе данных, только если существуют все экземпляры документов, участвующие в ассоциации.

Правило 3. Зависимое ассоциативное отношение может существовать в базе данных, только если существуют все исходные ассоциации.

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

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

М: = <Х, Р>, (2.1)

где X - непустое множество, являющееся носителем модели; Р - множество предикатов (ограничений), заданных на множестве X.

Такой подход предполагает, что в информационном пространстве моделируемой предметной области зафиксирована терминологическая лексико-семантическая система понятий.

Для описания и различия элементов, с помощью которых строится логическая модель документо-ориентированной базы данных, введен некоторый фиксированный алфавит V. Для указания факта, что элемент не принадлежит (или неизвестен в данный момент времени) алфавиту, вводится специальный символ П. Через V* обозначим множество всех непустых слов в алфавите V. Тогда из этого множества V* можно выделить следующие конечные множества:

• множество имен документов - О. В дальнейшем под именем документа будет пониматься сам документ;

• множество имен типов документов - О. Под именем типа документа будет пониматься сам тип документа;

• множество имен атрибутов документа - А. Под именем атрибута будет пониматься атрибут;

• множество имен связей - Я. Под именем связи будет пониматься связь.

• множество имен типов связей - И. Под именем типа связи будет пониматься класс связи;

• множество имен свойств связей -ЯР. Под именем свойства связи будет пониматься свойство связи;

• множество имен ограничений целостности - Р. Под именем ограничения будет пониматься само ограничение.

Формально документ о предложенной модели можно описать в виде формулы

оЬу := <о, <(аь с^) | <1! е О,),..., (а„, с1„) | с!п е Оп)>,

р((а„ с!,),..., (а„, с1„))>, (2.2)

где о — тип документа;

<(а,, с!,) | (1, е О,), ..., (а,,, с!„) | с1„ 6 Б„)> - набор атрибутов а,,...,а,„ где ^ е А, I = 1,...,п) - свойства объекта, а с1ь...Д, - их значения соответственно;

р ((а,, (11),...,(а„, с!п)) - предикат над значениями атрибутов объекта р = р £ Р;

Упрощая описание структуры документа, получим, что объект о1у можно выразить так:

о1у := <о, {(а,),-, (а„)}, р(а^...,а„)>, (2.3)

где о - тип документа, о 6 О;

а,,... ,а„ - множество атрибутов для каждого документа такого типа объектов; а; е А, ¡=1,..., п;

Р(аь— А) - структура ограничений значений свойств документов, входящих в тип.

В результате, вводя понятия вероятности появления атрибута в документе, получаем

:= <о, {(а,, с,),..., (а„, с„)}, р(а;,...,а„)>, (2.4)

где о -типа документа, о е О;

а1,... ,а„ - атрибуты документов, составляющих данный тип документа;

С1,-.. ,сп - вероятность наличия атрибута у произвольного объекта 'о' из класса 'о'; с; е [0,1].

На основании вероятностей сь...,с„ выводится неформальное понятие семантической близости. Под семантической близостью документов будем понимать функцию, характеризующую степень смысловой близости этих объектов (или их частей), которую задает проектировщик предметной области.

Под связью г будет пониматься особый вид объектов следующего вида:

г:=<г,аьЯР>, (2.5)

где г - имя связи: г е Я; % - атрибут, участвующий в связи; ЯР - свойство связи, которое раскрывает его кратность.

Определено понятие части документа через связи:

к:=<г1,...,г!>, (2.6)

Тогда любой составной документ я определяется посредством частей его составляющих

ц:=<К, {грч}>, (2.10)

где К - множество частей {кь...,кп}, из которых состоит объект; {грч} - множество ограничений частей внутри объекта.

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

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

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

• требования по эксплуатации. К данным требованиям относятся организация взаимодействия, минимизация временного отклика, надежность и простота использования;

• требования к администрированию данных - простота настройки, простота перемещения и доработки.

На основании требований системы автоматизации проектирования к скорости обработки большого объема данных предложена топология БД, изображён-

нал на рисунке 1, которая отвечает запросам по скорости обработки данных и критериям отказоустойчивости БД.

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

Результат выполнения запроса

Запрос к БД

Основной сервер

//!! \\

Запрос к набору данных / Результат выполнения запроса

N

Вторичный сервер

у

""•Л

Вторичный дублер

Вторичный сервер

Вторичный

дублер V____

Вторичный | сервер 1

I! 11 11"

Потоки системной нформации для дублирования данных

I

Вторичный дублер

Рис. 1. Топология базы данных для систем автоматизации проектирования

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

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

Для определения набора ссылок, которые будут добавлены в случае выполнения запроса типа INSERT или удалены в случае выполнения запроса типа DELETE, происходит их извлечение из запроса. Для определения набора ссылок, которые будут добавлены или удалены в случае выполнения запроса типа UPDATE, происходит эмуляция изменений. Извлеченные ссылки анализируются на изменение мощности связей документов. На основании данного анализа делается вывод о допустимости выполнения запроса.

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

2.

^Получить запрос к БД J 1

Разбор запроса на лексемы

Переслать запрос СУБД на выполнение

Тнп запроса UPDATE, INSERT, DELETE

JE

Получить ссылки из

запроса +

Тип запроса INSERT

Проверить наличие сущностей в БД по ссылкам

Все ссылки актуальны?

Сделать запрос к БД для получения изменяемых сущностей

Получить ссылки из полученных

записей +

Пересчет мощностей изменяемых связен

о

Переслать запрос к

БД

Нарушается ссылочная целостность при

выполнении запроса?

Фиксация изменений мощностей связей

Запоод завершило успехом?

Вернуть пользователю ответ от БД

Вернуть пользователю сообщение с ошибкой

L.

Рис. 2. Блок схема метода поддержки ограничений ссылочной целостности в распределенной документо-ориентированной БД для САПР приборостроения

При работе с большими объемами данных актуальным является скорость обработки запросов, которая в первую очередь зависит от поиска необходимой семантической информации. Предложена структура данных, которая отвечает требованиям скорости и позволяет определить наличие зависимостей между документами. Данная структура представляет В-дерево, листом которого является пара ключ-значение. Ключом является уникальный идентификатор документа в коллекции, а значением является мощность связей. Такой подход к хранению информации позволяет сделать вывод о существовании ссылок на документ и изменении мощности связей документа всего за О (log п) операций.

Переслать запрос к ЕД

Вернуть пользователю ответ от БД

Рис. 3. Блок схема метода поддержки ограничений целостности предметной области в распределенной документо-ориентированной БД для САПР приборостроения

Для поддержки ограничений целостности предметной области в системах автоматизированного проектирования разработан метод, поддерживающий работоспособность в предложенной распределенной топологии БД.Данный метод основан на алгоритмах, используемых для поддержки ссылочной целостности; блок-схема метода представлена на рисунке 3. Анализу подвержены запросы типа INSERT и UPDATE, так как они могут изменить состояние существующего объекта или добавить новый объект в БД, который не будет отвечать правилам целостности.

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

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

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

Рис. 4. Диаграмма компонентов программного модуля целостности

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

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

Функциональный блок принятия решений является основным программным компонентом, который отвечает за принятие решения о возможности выполнения запроса к БД. В задачи данного блока входят анализ запроса для выявления необходимости его проверки на корректность, а также поддержка ограничений целостности предметной области и ссылочной целостности на основании данных, полученных из блока хранения метаинформации. Основная задача функционального блок хранения метаинформации заключается в обработке запросов на получение или изменение семантической информации об ограничениях целостности. Функциональный блок хранения метаинформации предоставляет интерфейс для обмена элементарными сообщениями с блоком принятия решений и инкапсулирует логику хранения данных. Предоставляется интерфейс доступа к данным для редактирования правил ограничений целостности администратором. Функциональный блок ведения транзакций гарантирует корректность метаданных. С помощью данного блока запрос к БД и получение ответа от нее можно рассматривать как транзакцию. Это позволяет в случае непреднамеренного завершения работы модуля целостности восстановить корректное состояние семантической информации.

Система автоматизированного проектирования

I

-Отправить запрос к БД-

Получить сущности, которые изменяет исходный зз-рос ^------Набор сущностей---------—

а.п. ■

_/

Запрос изменяет состояние БД

Проверка нарушения целостности

I Нарушает -Ошибка-----

Не нарушая-

—Переслать запрос к БД— - -Результат выполнения- -

Фиксация изменений - Результат выполнения —

Запрос не изменж г состояние БД

-Результат выполнения---

-Переслать запрос к БД— • -Результат выполнения—

Рис. 5.

Диаграмма взаимодействия системы автоматизированного проектирования с СУБД через модуль целостности

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

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

Экспериментальное сравнение производилось на реляционной базе данных MSSQL' 11 и документо-ориентированной MongoDB с разработанным модулем целостности, суммарное количество записей в каждой БД на момент эксперимента было более 350.000.000. Топология БД состояла из четырех вторичных серверов, для параллельной обработки данных.

На рисунке 6 представлена зависимость времени выполнения запроса, добавляющего новую запись при определенном количестве ссылок в ней. Ссылочная целостность в реляционной СУБД MS SQL поддерживалась с помощью внешних ключей, установленных на уровне таблицы, а в документо-ориентированной СУБД MongoDB - с помощью разработанного модуля целостности. Необходимо отметить, что на график добавлена СУБД MongoDB без модуля целостности для сравнения производительности с модулем и без него.

19000 5 18000 5 17000 » 16000 8 15000

с 14000 «

2 1зооо

t 12000

гжг.

3 5 7 9

Количество ссылок в записи

■ MongoDB <— •

MongoDB + МЦ

MS SQL

Рис. 6. График зависимости количества добавленных записей в секунду от количества ссылок

Результаты эксперимента подтверждают, что разработанный модуль целостности отвечает требованиям скорости обработки слабоструктурированных данных. Количество обработанных запросов больше, чем у реляционной СУБД, на 3500, т.е. на 35%. На основании данной информации можно утверждать о преимуществе предложенного модуля целостности.

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

ОСНОВНЫЕ РЕЗУЛЬТАТЫ И ВЫВОДЫ

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

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

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

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

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

ОСНОВНОЕ СОДЕРЖАНИЕ ДИССЕРТАЦИИ ОТРАЖЕНО В СЛЕДУЮЩИХ РАБОТАХ АВТОРА

I. Статьи из журналов списка ВАК

1. Лучинин, З.С. Проектирование логической модели данных слабоструктурированной нереляционной документо-ориентированной базы данных / З.С. Лучинин, И.Г. Сидоркина // Вестник Чувашского университета. - Чебоксары: ЧГУ им. И.Н. Ульянова, 2014. - № 2. - С. 103-107.

2. Лучинин, З.С. Формализация семантики в документо-ориентированных базах данных / З.С. Лучинин, И.Г. Сидоркина // Вестник Поволжского государственного технологического университета. Серия «Радиотехнические и инфо-коммуникационные системы». - Йошкар-Ола, 2014. - № 3. - С. 57-65.

3. Лучинин, З.С. Математическая модель документо-ориентированной базы данных с отражением ограничений целостности / З.С. Лучинин, И.Г. Сидоркина // Вестник Чувашского университета. - Чебоксары: ЧГУ им. И.Н. Ульянова, 2015. -№ 1,- С. 174-180.

II. Зарегистрированные программные продукты

4. Лучинин З.С., Сидоркина И.Г. Модуль ссылочной целостности для доку-менто-ориентированных баз данных, версия 1.0 // ГР от 08.09.2014г -№ 2014662856

III. Прочие публикации

5. Лучинин, З.С. Масштабирование базы данных документо-ориентированной СУБД / З.С. Лучинин // Информационные технологии в профессиональной деятельности и научной работе: сборник материалов Всероссийской научно-практической конференции с международным участием: в 2 ч. - Йошкар-Ола: МарГТУ, 2012. - Ч. 2. - С. 83-85.

6. Luchinin, Z. LSM tree as an effective data structure for document-oriented database / Z. Luchinin, I. Sidorkina // Interactive Systems: Problems of Human - Computer Interaction: collection of scientific papers. - Ulyanovsk: USTU, 2013. - P. 174-176.

7. Лучинин, З.С. Структура данных для документо-ориентированных баз данных / З.С. Лучинин // Программные системы и вычислительные методы. - 2013. - № 3. - С. 230-232.

8. Лучинин, З.С. Метод ссылочной целостности документо-ориентированных баз данных / З.С. Лучинин // NB: Кибернетика и программирование. - 2014. - № 1. -С. 17-22.

9. Лучинин, З.С. Формирование ссылочной целостности в документо-ориентированных базах данных / З.С. Лучинин, И.Г. Сидоркина // Информационные технологии в электронике и электроэнергетике: материалы 9-й Всерос. науч.-техн. конф. - Чебоксары: Изд-во Чуваш, ун-та, 2014. - С. 339-341.

10. Лучинин, З.С. Семантическое расширение документо-ориентированной базы данных для формирования ссылочной целостности / З.С. Лучинин, И.Г. Сидоркина // Труды конгресса по интеллектуальным системам и информационным технологиям «IS&IT44»: в4т. -М.: Физматлит, 2011.-Т. 1.-С. 476-480.

11. Лучинин, З.С. Модуль поддержки ограничений целостности в документо-ориентированных базах данных / З.С. Лучинин, И.Г. Сидоркина // Информационные технологии в профессиональной деятельности и научной работе. - Йошкар-Ола, 2014.-С. 56-59.

12. Лучинин, З.С. Особенности автоматизированной разработки когнитивного объекта / З.С. Лучинин [и др.] // Академический форум корпорации ЕСМ: сборник тезисов участников конференции / факультет ВМК МГУ имени М.В. Ломоносова. -М.: МАКС Пресс, 2014. - С. 36-41.

Подписано в печать 21.04.2015. Формат 60*84/16. Бумага офсетная. Печать офсетная. Усл. печ. л. 1,0. Тираж 100 экз. Заказ № 5588. Редакционно-издательский центр ГИТУ. 424006 Йошкар-Ола, ул. Панфилова, 17