СУБД Cache
книга

СУБД Cache : работа с объектами

Автор: Илья Труб

Форматы: PDF

Издательство: Диалог-МИФИ

Год: 2006

Место издания: Москва

ISBN: 5-86404-205-6

Страниц: 471

Артикул: 20070

Возрастная маркировка: 16+

Электронная книга
100

Краткая аннотация книги "СУБД Cache"

Темой книги является проектирование и разработка объектно-реляционных баз данных на основе хранения и управления метаданными с практической реализацией на постреляционной СУБД Cache. Изложены основы языка Cache Object Script и технологии Cache Server Pages. Показано, как использование объектных возможностей СУБД Cache и технологии CSP позволяет пользователю с помощью стандартного Web-интерфейса не только производить обычные выборки данных, но и самому заниматься объектным проектированием, т. е. вводить, модифицировать и удалять не только данные, но и метаданные, например, описать новый класс, новый атрибут, новую связь, а также способ хранения данных. Рассмотрены вопросы поддержки целостности данных при изменении метаданных, а также проблемы реализации темпоральности данных. Теоретически и экспериментально сравниваются две модели данных – хранение объектов каждого класса в отдельной таблице (предметно-ориентированная модель) и хранение полей данных всех объектов в одной таблице (универсальная модель). Рассмотрены реализации объектного и полнотекстового поиска в базе данных для каждого способа хранения. Показано, что возможность интерактивного проектирования метаданных позволяет разработать программную оболочку, пригодную для реализации любой объектно-реляционной базы данных, безотносительно к предметной области, как то: в технике, экономике, образовании, медицине и других сферах человеческой деятельности. Книга адресована студентам старших курсов специальностей, связанных с информационными технологиями и специалистам в области проектирования и разработки баз данных.

Содержание книги "СУБД Cache"


Предисловие
Для кого написана эта книга
Краткий обзор книги
О стиле программирования
Благодарности
Часть I. ПРОЕКТИРОВАНИЕ ОБЪЕКТНОЙ МОДЕЛИ: ТЕОРЕТИЧЕСКИЕ ОСНОВЫ
Глава 1. Основные используемые понятия
1.1. Класс и объект
1.2. Простой тип
1.3. Сложный тип. Сходства и различия с классом
1.4. Связи между объектами классов
1.5. Параметр типа или связи
1.6. Состояния, события, жизненный цикл
1.7. Ядро и контуры
1.8. Классификация в объектной модели. Группировки классов
Глава 2. Метаданные
2.1. Для чего нужны метаданные
2.2. Архитектура метаданных
2.3. Метаклассы: что может включать описание класса или сложного типа
2.4. Метаатрибуты: что может включать описание атрибута
2.5. Метасвязи: что может включать описание связи
Глава 3. Две модели хранения данных
3.1. Предметно-ориентированная модель данных
3.2. Универсальная модель данных
3.3. Сравнение моделей: за и против
Глава 4. Объектно-ориентированные СУБД
4.1. Объектно-ориентированные СУБД в сравнении с реляционными
4.2. СУБД Cache
Часть II. СУБД CACHE: ОСНОВЫ ПРОГРАММИРОВАНИЯ
Глава 5. Некоторые особенности работы с объектами
5.1. Классификация объектов по типу хранения
5.2. Идентификация объектов
5.3. Свойства атрибутов
5.4. Манипуляции с объектами
5.5. Индексы
Глава 6. Некоторые элементы языка Cache Object Script
6.1. Элементарные типы данных
6.2. Оператор косвенности
6.3. Списки и массивы
6.4. Обработка ошибок
6.5. Многомерные массивы и глобалы
6.6. Функции обработки строк
Задание для самостоятельной работы
Глава 7. Метаклассы Cache
7.1. Класс ClassDefinition
7.2. Класс PropertyDefinition
7.3. Программная модификация и компиляция класса через метакласс
7.4. Другие метаклассы
Глава 8. Объектный и реляционный доступ к данным
8.1. Соответствие объектных и реляционных понятий
8.2. Атрибуты классов и столбцы таблиц
8.3. Атрибуты-объекты, атрибуты-массивы и атрибуты-списки
Задания для самостоятельной работы
Глава 9. SQL-запросы в Cache
9.1. Встроенный SQL
9.2. Динамический SQL
Глава 10. Некоторые особенности технологии CSP
10.1. Cache и Web-интерфейс
10.2. Объект %CSP.Request: как принимать значения из Web-формы
10.3. Объект %CSP.session: как хранить сеансовые данные
Часть III. РЕПОЗИТОРИЙ ОБЪЕКТОВ: РЕАЛИЗАЦИЯ
Глава 11. Реализация собственных метаклассов
11.1. Метаклассов Cache недостаточно
11.2. Метакласс mObj – описание класса
11.3. Класс mAttr – описание атрибута класса
11.4. Классы mTypeSimple и mTypeComplex – описание простого и сложного типа
11.5. Класс mParam – описание параметра
11.6. Класс mRelation – описание связи между объектами классов
Задания для самостоятельной работы
Глава 12. Реализация хранения данных
12.1. Предметно-ориентированная модель: объекты хранятся в обычных классах Cache
12.2. Универсальная модель: класс ALL для хранения всех объектов
12.3. Связь между двумя моделями хранения данных
12.4. Класс dRelation для хранения связей между объектами классов
Задания для самостоятельной работы
Глава 13. Изменения метаданных и поддержка целостности данных
13.1. Понятия "мягкого" и "жесткого" удаления метаданных
13.2. Изменения в описании класса и атрибута
13.3. Изменения в описании связи
13.4. Изменения в описании параметра
Глава 14. Информационная обработка встроенных сложных типов
14.1. Зацикливание вложенных сложных типов
14.2. Добавление в глобал новых узлов: новый атрибут
14.3. Удаление узлов из глобала: удаление атрибута
14.4. Удаление узлов из глобала: удаление типа
14.5. Подсчет реальных данных
Задания для самостоятельной работы
Глава 15. Работаем с классами
15.1. Cоздание
15.2. Корректировка
15.3. Мягкое и жесткое удаление
15.4. Восстановление
Задания для самостоятельной работы
Глава 16. Работаем со сложными и простыми типами
16.1. Создание сложного типа
16.2. Корректировка сложного типа
16.3. Мягкое и жесткое удаление сложного типа
16.4. Восстановление сложного типа
16.5. Создание простого типа
16.6. Удаление простого типа
Задания для самостоятельной работы
Глава 17. Работаем с атрибутами
17.1. Создание
17.2. Корректировка
17.3. Мягкое и жесткое удаление
17.4. Восстановление
Задания для самостоятельной работы
Глава 18. Работаем с параметрами
18.1. Функции контроля
18.2. Создание параметра
18.3. Корректировка параметра
18.4. Удаление параметра
Задания для самостоятельной работы
Глава 19. Работаем с метасвязями
19.1. Создание описания связи
19.2. Корректировка описания связи
19.3. Удаление и восстановление описания связи
19.4. Параметры метасвязей
Задания для самостоятельной работы
Глава 20. Просмотр метаданных
20.1. Общая схема гипертекстовых ссылок
20.2. Уровень класса
20.3. Уровень атрибута
20.4. Уровень связи
Задания для самостоятельной работы
Глава 21. Раскрутка объекта и рекурсивные функции
21.1. Пустая форма для создания объекта
21.2. Сравнение объектов
21.3. Прием и обработка данных при создании объекта
21.4. Рекурсивные функции для модификации объекта
21.5. Рекурсивная функция мягкого удаления объекта
21.6. Рекурсивные функции жесткого удаления объекта
21.7. Рекурсивная функция восстановления объекта
21.8. Рекурсивная функция вывода объекта через предметную модель
21.9. Рекурсивная функция вывода объекта через универсальную модель
Задания для самостоятельной работы
Глава 22. Работаем с объектами классов
22.1. Создание
22.2. Корректировка
22.3. Мягкое и жесткое удаление
22.4. Восстановление
22.5. Установление связи между объектами
22.6. Разрыв связи между объектами
22.7. Просмотр объекта с помощью предметно-ориентированной модели
22.8. Просмотр объекта с помощью универсальной модели
Задания для самостоятельной работы
Глава 23. Реализация запросов к базе данных
23.1. Общее состояние проблемы
23.2. Поисковый запрос для предметно-ориентированной модели хранения
23.3. Поисковый запрос для универсальной модели хранения
23.4. Интерфейс объектного запроса: каким ему быть
Задания для самостоятельной работы
Глава 24. Реализация полнотекстового поиска в базе данных
24.1. Предметно-ориентированная модель хранения
24.2. Универсальная модель хранения
24.3. Полнотекстовый поиск в метаописаниях
Задания для самостоятельной работы
Глава 25. Темпоральность объектов
25.1. Темпоральность в широком смысле. Что можно под этим понимать
25.2. Журнал истории как многомерная структура данных
25.3. Реализация восстановления объекта на дату
25.4. Модель дампов объекта. Оптимизация
25.5. Последний штрих
Задания для самостоятельной работы
Глава 26. Несколько слов о наследовании
Заключение
Приложение А. Инсталляция CSP-шлюза на сервере Apache
Приложение Б. Инсталляция CSP-шлюза на сервере IIS (Internet Information Server)
Список литературы и интернет-источников
Дополнительные источники

Все отзывы о книге СУБД Cache : работа с объектами

Чтобы оставить отзыв, зарегистрируйтесь или войдите

Отрывок из книги СУБД Cache : работа с объектами

Глава 1. Основные используемые понятия 13 Например, в [19] сказано: "Все объекты, имеющие одни и те же атрибуты и одинаковые методы, собирательно называются классом". Однако представ-ление о классе именно как об описательном шаблоне, а не о множестве объ-ектов более точно. Для совокупности объектов в настоящее время стал усто-явшимся другой термин – "экстент класса". В прикладных информационных системах понятие объекта обычно трак-туется более прагматично – как реальная сущность, являющаяся неотъемле-мой составной частью автоматизируемых бизнес-процессов. Это правильно, это точка зрения проектировщика. Но совершенно с иной точки зрения смот-рят на понятие класса языки объектно-ориентированного программирования, и она тоже правильна. Основной тезис: класс расширяет язык программиро-вания новыми типами данных. Конструкция класса позволяет расширить стандартный набор типов данных собственными типами. Например, новый тип данных в С++ можно задать с помощью перечисления (enum), объедине-ния (union) и структуры (struct), но главной синтаксической конструкцией, обеспечивающей наибольшую гибкость представления данных и функцио-нальность работы с ними, является все-таки класс. Если мы описали класс Complex (комплексное число) или Matrix (матрица), то в дальнейшем можем объявлять переменные типа Complex или Matrix и пользоваться ими в про-грамме наравне с переменными любых встроенных типов. А объект класса рассматривается как переменная, относящаяся к этому новому типу. Так же, как и для стандартных типов, для объектов можно объявлять скалярные пе-ременные, массивы, указатели, массивы указателей, выделять и освобождать память. Переменные этого типа могут быть, в свою очередь, атрибутами дру-гих классов, передаваться в качестве параметров функций и возвращаться ими как результат. Итак, класс может выступать в двух совершенно различных ипостасях – это, с одной стороны, сущность, имеющая аналог в предметной области и взаимодействующая с другими сущностями, с другой – это ти...