Методы хранения XML в реляционных базах данных

Автор: Пользователь скрыл имя, 01 Мая 2012 в 17:05, курсовая работа

Описание работы

Цель данной работы – исследовать способы хранения XML в базах данных, выявить их достоинства, недостатки, область применения. Для достижения данной цели необходимо решить следующие задачи:

а) выявить особенности языка XML;

б) определить и проанализировать существующие способы хранения XML;

в) определить область применения способов хранения;

г) определить существующие на практике критерии выбора способа хранения;

д) реализовать один из способов хранения XML в базе данных.

Содержание

Введение

1 ОБЩЕСИСТЕМНЫЙ РАЗДЕЛ

1.1 Языки разметки

1.2 Язык разметки XML

1.2.1 Особенности XML

1.2.2 Синтаксис XML

1.2.3 Структура XML

1.3 Базы данных и системы управления базами данных

1.3.1 Общие понятия о базах данных и системах управления базами данных

1.3.2 Реляционные системы управления базами данных

1.4 Хранение XML

1.4.1 Задача хранения

1.4.2 Документы и данные

1.4.3 Способы хранения XML-документов

1.4.3.1 Хранение в файловой системе

1.4.3.2 Хранение в реляционной базе данных

1.4.3.3 Хранение в БД поддерживающей XML

1.4.3.4 Хранение в специализированных xml-серверах (истинных БД)

1.4.4 Критерии выбора способа хранения

1.5 Обзор готовых продуктов

2 СПЕЦИАЛЬНЫЙ РАЗДЕЛ

2.1 Постановка задачи

2.2 Выбор способа представления XML в РСУБД

2.3 Разработка схемы базы данных

2.4 Выбор средств реализации

2.4.1 Выбор системы управления базами данных

2.4.2 Выбор языка программирования

2.5 Разработка интерфейсного ПО

2.6 Инструкция по применению

ЗАКЛЮЧЕНИЕ

Список использованных источников

Приложение

Приложение А

Приложение Б

Работа содержит 1 файл

Текст работы.doc

— 927.50 Кб (Скачать)

<?xml version="1.0" encoding="UTF-8"?>

Спецификация требует, чтобы процессоры XML обязательно поддерживали Юникод-кодировки UTF-8 и UTF-16 (UTF-32 не обязателен). Признаются допустимыми, поддерживаются и широко используются (но не обязательны) другие кодировки, основанные на стандарте ISO/IEC 8859, также допустимы другие кодировки, например, русские Windows-1251, KOI-8.

Комментарий может быть размещен в любом месте дерева. XML комментарии размещаются внутри пары тегов <!-- и -->. Два знака дефис (--) не могут быть применены ни в какой части внутри комментария.

 

1.2.3 Структура XML

 

XML-документ состоит из вложенных элементов, некоторые из которых имеют атрибуты и содержимое. Элемент обычно состоит из открывающего и закрывающего тегов, обрамляющих текст и другие элементы. Открывающий тег состоит из имени элемента в угловых скобках, например, «<step>»; закрывающий тег состоит из того же имени в угловых скобках, но перед именем ещё добавляется косая черта, например, «</step>». Содержимым элемента (англ. content) называется всё, что расположено между открывающим и закрывающим тегами, включая текст и другие (вложенные) элементы.

Кроме содержания у элемента могут быть атрибуты — пары имя-значение, добавляемые в открывающий тег после названия элемента. Значения атрибутов всегда заключаются в кавычки (одинарные или двойные), одно и то же имя атрибута не может встречаться дважды в одном элементе. Не рекомендуется использовать разные типы кавычек для значений атрибутов одного тега.

Каждый XML-документ должен содержать в точности один корневой элемент (англ. root element или document element).

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

<foo/>

 

1.3 Базы данных и системы управления базами данных

1.3.1 Общие понятия о базах данных и системах управления базами данных

 

База данных (БД) — организованная в соответствии с определёнными правилами и поддерживаемая в памяти компьютера совокупность данных, характеризующая актуальное состояние некоторой предметной области и используемая для удовлетворения информационных потребностей пользователей [19]. Иными словами база данных представляет собой внутренний механизм хранения и обработки данных.

База данных обладает следующими отличительными признаками:

а)          база данных хранится и обрабатывается в вычислительной системе. Таким образом, любые внекомпьютерные хранилища информации (архивы, библиотеки, картотеки и т. п.) базами данных не являются;

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

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

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

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

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

б) аспект манипуляции: методы манипулирования данными;

в) аспект целостности: методы описания и поддержки целостности базы данных.

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

Модель данных — это абстрактное, логическое определение объектов, операторов и прочих элементов, в совокупности составляющих абстрактную машину доступа к данным, с которой взаимодействует пользователь. Эти объекты позволяют моделировать структуру данных, а операторы — поведение данных.

В зависимости от модели данных все БД и СУБД делятся на:

             иерархические;

             сетевые;

             объектно-ориентированные;

             реляционные.

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

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

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

Объектно-ориентированная база данных (ООБД) — база данных, в которой данные оформлены в виде моделей объектов, включающих прикладные программы, которые управляются внешними событиями [22]. Результатом совмещения возможностей (особенностей) баз данных и возможностей объектно-ориентированных языков программирования являются Объектно-ориентированные системы управления базами данных (ООСУБД). ООСУБД позволяет работать с объектами баз данных также, как с объектами в программировании в ООП.

Реляционная база данных — база данных, основанная на реляционной модели данных.

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

а)          структурный аспект (составляющая) — данные в базе данных представляют собой набор отношений;

б)          аспект (составляющая) целостности — отношения (таблицы) отвечают определенным условиям целостности. РМД поддерживает декларативные ограничения целостности уровня домена (типа данных), уровня отношения и уровня базы данных;

в)          аспект (составляющая) обработки (манипулирования) — РМД поддерживает операторы манипулирования отношениями (реляционная алгебра, реляционное исчисление).

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

Термин «реляционный» означает, что теория основана на математическом понятии отношение (relation). В качестве неформального синонима термину «отношение» часто встречается слово таблица. Особенностями реляционной модели данных являются:

             модель является логической, то есть отношения являются логическими (абстрактными), а не физическими (хранимыми) структурами;

             для реляционных баз данных верен информационный принцип: всё информационное наполнение базы данных представлено одним и только одним способом, а именно — явным заданием значений атрибутов в кортежах отношений; в частности, нет никаких указателей (адресов), связывающих одно значение с другим;

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

 

1.3.2 Реляционные системы управления базами данных

 

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

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

Реляционная модель ориентирована на организацию данных в виде двумерных таблиц. Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:

             каждый элемент таблицы — один элемент данных;

             все ячейки в столбце таблицы однородные, то есть все элементы в столбце имеют одинаковый тип (числовой, символьный и т. д.);

             каждый столбец имеет уникальное имя;

             одинаковые строки в таблице отсутствуют;

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

 

 

Базовыми понятиями реляционных СУБД являются:

             атрибут;

             отношение;

             кортеж.

Отношение — фундаментальное понятие реляционной модели данных. По этой причине модель и называется реляционной (от английского relation — отношение).

N-арным отношением R, или отношением R степени n, называют подмножество декартового произведения множеств (множество, элементами которого являются все возможные упорядоченные пары элементов исходных двух множеств), не обязательно различных. Исходные множества называют в модели доменами (в СУБД используется понятие тип данных).

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

Над отношениями в реляционной модели определены следующие операции:

             объединение — тело нового отношения является объединением тел старых;

             пересечение — тело нового отношения является пересечением тел старых;

             вычитание — тело нового отношения получено вычитанием тел старых;

             проекция — частный случай пересечения;

             декартово произведение — тело нового отношения является декартовым произведением тел старых;

             выборка — из исходного отношения выбираются лишь те кортежи, которые удовлетворяют новым доменам (заданным в условиях выборки);

             соединение — выборка над декартовым произведением;

             деление — частное — совпадающие части кортежей делимого, перед которыми стоит делитель.

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

 

1.4 Хранение XML

1.4.1 Задача хранения

             

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

             должна быть возможность хранить большие объемы информации;

             информация должна быть доступна в любой момент времени;

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

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

             должна быть возможность обращаться к конкретному узлу XML-документа так же, как и к целому документу.

 


1.4.2 Документы и данные             

 

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

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

Дата-центричные документы характеризуются строго регулярной структурой, мелкой зернистостью данных (то есть, самый маленький кусочек данных находится на уровне PCDATA-элементов или атрибутов), они отличаются отсутствием или малым количеством смешанного содержимого. Порядок, в котором следуют соседние элементы или секции PCDATA, обычно не имеет значения.

Информация о работе Методы хранения XML в реляционных базах данных