Введение к работе
Актуальность темы
Проблема представления и обработки изменяющейся с течением времени (эволюционирующей) информации актуальна в различных областях теории вычислительной техники, начиная с задач искусственного интеллекта и заканчивая базами данных и параллельными вычислениями [б]
Базы данных и программные системы редко сохраняют свой первоначальный дизайн в процессе использования И хотя оценки различаются, большинство исследователей согласны, что не менее 50% усилий программисты затрачивают на внесение изменений в систему после ее ввода в эксплуатацию [5], и чем большее количество прикладных программ написано и чем большие объемы данных подверглись изменениям, тем труднее задача модификации системы. Более того, модификации работающих систем, требующие изменения структуры данных, весьма часто встречаются на практике [12, 13]. Как следствие, внесение изменений в схему базы данных - явление типичное, хотя и весьма хлопотное. Поддержка таких изменений актуальна как для производителей СУБД, так и для пользователей.
Системы поддержки эволюции схем и контроля версий схемы возникли как средства для сохранения данных, внесенных в систему, схема которой изменилась впоследствии [11]. Формальное определения термина "эволюция схемы" дано в главе 1 диссертации, неформально же эволюция схемы - это способность системы управления базой данных отражать изменения, происходящие в реальном мире, путем изменения схемы. Во многих системах под этим свойством также подразумевается способность сохранять предыдущие состояния схемы данных. Такая возможность необходима, если данные, сохраненные в базе при некоторой схеме данных, не устаревают, несмотря на изменения в схеме [10].
Интерес к эволюционирующим базам данных возник преимущественно в двух отраслях исследований. Во-первых, как логическое продолжение
РОС. НАдиОНАЛЬНАЯ
БИ-Г, ПОТЕКА
С. ііе гербу рг
»аорк
работ в области темпоральных моделей данных (temporal data modeling) и темпоральных баз данных (temporal databases), и, во-вторых, в рамках объектно-ориентированной парадигмы, особенно при разработке архитектур автоматизированного проектирования (CAD) и других систем в области инжиниринга [11].
Вопросы, связанные с эволюцией схем реляционных и объектно-ориентированных баз данных, хорошо исследованы. Однако, множество источников информации значительно шире Одним из таких источников является Ве5. В Веб доступно много информации, которая обладает некоторой определенной структурой (например, электронный каталог товаров) и возможность использования структурированных запросов для таких ресурсов могла бы быть очень полезной. Эти соображения стимулируют исследования в области организации доступа к такой информации, на которую принято ссылаться как на слабоструктурированную информацию [1].
Основным источником слабоструктурированной информации долгое время являлись автоматически сгенерированные HTML-страницы (например, списка рассылки или электронного каталога). С появлением в середине 90-х годов языка XML [15] и XML-QL [16], стало возможным говорить об XML-базах данных, а как следствие об их схемах и эволюции этих схем.
Цели работы
Целью работы является разработка аксиоматической модели описания схем слабоструктурированных данных, позволяющей определять не только логическую структуру данных, но и их семантику, а также правила внесения изменений в схему данных.
Основные результаты
В работе получены следующие основные результаты:
Разработана аксиоматическая модель описания схем
слабоструктурированных данных. Данная модель позволяет определить не только логическую структуру данных, но и их семантику в терминах существенных множеств, что позволяет заметно облегчить разработку и сопровождение XML-баз данных.
Предложена классификация изменений, вносимых в схему данных, и способ выражения этих изменений в терминах аксиоматической модели Использование данной классификации позволяет автоматически производить проверку целостности схемы при внесении в нее изменений и модифицировать схему данных, сохраняя их семантику.
Предложен метод генерации XSL-скриптов для автоматического обновления XML-документов, чтобы они соответствовали измененной схеме данных.
Предложен метод автоматизированного сравнения схем, заданных в терминах разработанной аксиоматической модели. Описанный в главе 4 диссертации, алгоритм построения последовательности изменений, трансформирующих одну схему данных в другую, позволяет легко объединять различные XML-базы данных в единую систему.
Разработана и реализована в виде прототипа система поддержки эволюции схем XML-данных, позволяющая не только создавать и модифицировать схемы как в терминах XSD, так и графически, но и автоматически распространять эти изменения на реальные документы.
Научная новизна
Исследования в области эволюции схем данных начались одновременно с появлением промышленных СУБД. И если в начале они носили скорее теоретический характер, то существенное увеличение количества структурированной информации и динамика ее изменений привели к
тому, что вопросы эволюции стали одним из ключевых аспектов теории баз данных. Однако, подавляющее большинство работ в в этой области относится либо к реляционным, либо к объектно-ориентированным базам данных. Исследования, посвященные слабоструктурированным данным и XML, лишь начали появляться в последнее время и посвящены в основном вопросам работы с часто изменяющимся или устаревающим контентом, в то время как вопросы эволюции схем остаются за кадром. В данной работе предложен подход к решению этих вопросов.
Практическая и теоретическая ценность
Разработана аксиоматическая модель описания схем
слабоструктурированных данных и прототип системы, позволяющие существенно упростить разработку и сопровождение XML-баз данных.
Предложена классификация изменений, вносимых в схему данных и ее проекция на разаработанную аксиоматическую модель.
Апробация работы
Результаты работы докладывались
на Третьей всероссийской научной конференции RCDL'2001 "Электронные библиотеки" (Петрозаводск, Россия, Октябрь 2001)
на семинаре Второй международной конференции ISTA'2003 (Харьков, Украина, Июнь, 2003) \
на семинаре Московской секции ACM SIGMOD (Москва, ноябрь, 2003)
на семинарах группы теории баз данных при лаборатории исследования операций НИММ
Предложенная технология была реализована в виде прототипа системы поддержки эволюции XML-схем EvoXSD, доступного по адресу http-.//meta math exe.
Публикации
Основные результаты диссертации изложены в 3-х работах, перечисленных в конце автореферата.
Структура и объем диссертации