Слайд 1Лекция 14
Постреляционные, объектные модели данных. Технологии интеграции распределенных данных
на основе XML
Слайд 2Ограничения нормализации
Требование атомарности значений атрибута
Запрет внутренней структуры атрибута
Слайд 3Не первая нормальная форма (НФ2)
(Множеств. атрибут как вложенная таблица)
Слайд 4Пример фрагмента постреляционной БД
Слайд 5Пример структуры в СУБД Postgres
CREATE TYPE TMarks AS (Дисциплина INTEGER,
Семестр INTEGER,
Оценка INTEGER)
CREATE TYPE TDiscip AS (Дисциплина INTEGER, Семестр
INTEGER)
CREATE TABLE Персона (
ID INTEGER PRIMARY KEY, ФИО CHARACTER VARYING(50),
Домашний_адрес CHARACTER VARYING(100), Телефон CHARACTER VARYING(20),
)
CREATE TABLE Преподаватель (
Кафедра INTEGER, Должность CHARACTER VARYING(20),
ДП TDiscip ARRAY[]
) Персона
CREATE TABLE Студент (
Номер_группы CHARACTER VARYING(10),
Оценки TMarks ARRAY[]
) Персона
CREATE TYPE TPrep AS (Преподаватель INTEGER, Семестр INTEGER)
CREATE TABLE Дисциплина (
ID INTEGER PRIMARY KEY, Наименование CHARACTER VARYING(50),
Ведет TPrep ARRAY[]
)
Слайд 6Достоинства и недостатки постреляционной модели данных
Достоинства:
более естественное описание предметной области
меньшие
трудозатраты
Недостатки:
повышенные требования к вычислительным ресурсам
Слайд 7Базовые понятия ОО подхода
Класс (тип)
Объект (экземпляр)
Атрибут (данные)
Метод (функция)
Слайд 8Базовые механизмы ОО подхода
Инкапсуляция (атрибутов и методов в объекте)
Наследование (свойств
родительского класса)
Полиморфизм (одноименные методы класса)
Абстракция (спецификация интерфейсов взаимодействия объектов)
Слайд 9Уровни ОО моделирования
Анализ (модель предметной области)
Проектирование (концептуальная модель системы)
Реализация (спецификация
системы с учетом языка программирования)
Слайд 10Универсальный язык моделирования (UML)
Виды диаграмм:
вариантов использования (use-case);
классов (class);
объектов (object);
взаимодействия (interaction):
последовательности
(sequence);
кооперативных (collaboration);
пакетов (package);
состояний (statechart);
деятельностей (activity);
размещения (deployment).
Слайд 11ОО модель уровня анализа
(задача «Сессия»)
Слайд 12ОО модель уровня проектирования (задача «Сессия»)
Слайд 13Способы реализации ОО подхода в СУБД
«Интерфейсный» (классы-интерфейсы для доступа к
таблицам и записям) – MS SQL Server
Смешанный (объектно-реляционный) – Oracle
Database
«Чистый» - Cache’
Слайд 14Достоинства и недостатки ОО подхода
Достоинства:
близость ОО концепции к восприятию мира,
свойственному человеку;
потенциально большее быстродействие систем;
отсутствие деления системы на базу данных
и программу;
упрощение описания (предметной области, системы).
Недостатки:
громоздкость описания ОО модели;
сложность перехода (смены парадигмы);
специфические проблемы (идентификация объектов, формализация языков запросов и т.п.).
Слайд 15Технологии XML
XML (Extensible Markup Language) - язык разметки, описывающий
класс объектов данных, называемых XML- документами
Объектная модель документа (DOM) -
представление структуры и содержания документа в виде совокупности узлов, каждый из которых имеет свои свойства
Языки определения XML-документов - DTD и XML-схемы
Спецификация Namespaces - средства уточняющие обозначения к именам элементов и ссылкам
Языки указателей (XPointer), ссылок (XLink), запросов (XQuery)
Язык стилей и преобразований (XSL, XSLT)
Слайд 16Синтаксис XML
В XML все элементы должны иметь закрывающий тэг
В
тэгах XML учитывается регистр
Элементы XML должны быть правильно вложены друг
в друга
Этот текст пишется полужирным курсивом
XML-документы должны иметь единственный корневой элемент
Значения атрибутов всегда должны быть заключены в кавычки
Все пробелы являются значимыми
В XML есть несколько зарезервированных символов (<, >, &, “, ‘), которые используются только как элементы синтаксиса XML
Слайд 17XML-документ = пролог + тело
Пролог: объявление XML и объявление типа
документа
Тело XML-документа :
элементы и
атрибуты
секции CDATA
директивы анализатора
комментарии
спецсимволы
текстовые данные
Слайд 18Элемент данных - структурная единица XML-документа
rose
.....
Атрибуты
- определяют собственные характеристики элемента:
Название = "значение"
#ff08ff
RGB="false">white
Слайд 19Сущности и специальные символы
< > "
$ (десятичная форма записи),
(шестнадцатеричная форма записи)
"
then
Слайд 20XML и реляционная модель данных
Таблица Customers
CustID Name Phone
1001 Иванов И.И. 5111222
1002 Петров П.П. 5222111
1) в
атрибутной форме
Phone='5222111'/>
2) в элементной форме
1001
Иванов И.И.
5111222
1002
Петров П.П.
5222111
3) в смешанной форме
Иванов И.И.
5111222
Петров П.П.
5222111
Слайд 21Представление связей с помощью XML
Таблица Order
OrderNo Date
Customer
1235 01/01/2001 1001
1236 07/07/2007 1002
Таблица Item
ItemNo OrderNo
ProductID Price Quantity
1 1235 1432 12.99 2
2 1235 1678 11.49 1
3 1236 1432 12.99 3