Объектная модель баз данных
В последние годы все большее признание и развитие получают объектные базы данных (ОБД), толчок к появлению которых дало объектно-ориентированное программирование и использование компьютера для обработки и представления практически всех форм информации, воспринимаемых человеком.
Объектно-ориентированное программирование (ООП), в отличие от структурного, делает акцент не на программные структуры (циклы, условия и т.д.), а на объекты. Объектом называют почти все, что представляет интерес для решения поставленной задачи на компьютере. Это может быть экранное окно, кнопка в окне поле для ввода данных, пользователь программы, сама программа и т.д. Тогда любые действия можно привязать к такому объекту, а также описать, что произойдет с объектом при выполнении опреде6ленных действий (например, при „нажатии“ кнопки). Многократно используемый объект можно сохранить и применять его в различных программах.
Таким образом, при ООП создают необходимые объекты и описывают действия с ними и их реакцию на действия пользователя. Если создан и определен достаточно большой набор объектов, то написание программы будет состоять в том, чтобы включить в нее и связать с собою те или иные объекты, обеспечивающие выполнение необходимых функций [46].
Объект - достаточно крупный блок функционально взаимосвязанных данных, при извлечении которого из ОБД включаются процедуры преобразования и отображения данных по программам, входящих в состав объекта. Типы и структуры данных, из которых состоит объект, могут быть различными у разных объектов и создаваться самим программистом на основе стандартных типов данных используемого языка программирования. Создаваемые и описываемые программистом типы данных получили название абстрактных типов данных.
Таким образом, объектом называется программно связанный набор методов (функций) и свойств, выполняющих одну функциональную задачу. Например, кнопка управления на экране Windows - это объект, который обладает свойствами описывающими его внешний вид и назначение, и набором методов для управления его поведением на экране.
Свойство - это характеристика, с помощью которой описывается внешний вид и работа объекта.
Событие - это действие, которое связанно с объектом. Событие может быть вызвано пользователем (щелчок мышью), инициировано прикладной программой или операционной системой.
Метод - это функция или процедура, управляющая работой объекта при его реакции на событие.
Объекты могут быть как визуальными, т.е. которые можно увидеть на экране дисплея (окно, пиктограмма, текст и т.д.), так и невизуальные (например, программа решения какой-либо функциональной задачи).
Если набор объектов имеет описание (концептуальная модель), указанны свойства и логические связи между объектами (логическая модель) и известно их место нахождения в памяти ЭВМ (физическая модель), то это позволяет извлекать объекты и применять в соответствии с их назначением многими пользователями. Следовательно, организуется объектная база данных.
Создание объектов весьма трудоемкая программистская работа. Поэтому для облегчения труда прикладных программистов системными программистами созданы программы и развиваются системы программирования поддерживающие ООП. В этих системах упорядочены и унифицированы многие процедуры создания объектов, разработаны шаблоны (классы) для описания методов и свойств объектов и т.д.
В настоящее время многие известные фирмы, занимающиеся разработкой программных продуктов, предлагают системы ООП. Например, широко известны такие продукты фирмы Microsoft, как Visual Basic, Visual FoxPro, Access, SQL Server. Такие системы не только упрощают создание объектов, но и позволяют организовать ОБД и предоставляют средства работы с нею. Помимо поддержки ООП и ОБД, перечисленные системы дают возможность создание и манипулирования реляционной БД, что впрочем, является их основным назначением.
Объектные модели данных еще не имеют строгой теоретической основы (как, например, реляционные), что затрудняет их создание и использование. Однако развитие средств мультимедиа, вычислительных сетей и передаче по ним аудио- и видеообъектов, заставляют интенсифицировать поиски в направлениях как создания теории, как и практической реализации надежных систем объектных баз данных.
4.5 ПРОГРАММНО – АППАРАТНЫЙ УРОВЕНЬ ПРОЦЕССА НАКОПЛЕНИЯ ДАННЫХ
Логический (модельный) уровень процесса накопления связан с физическим через программы, осуществляющие создание канонической структуры БД, схемы её хранения и работу с данными. На рис. 4.11 показан состав моделей процесса накопления данных и их связь с программно-аппаратным уровнем.
Каноническая структура БД создается с помощью модели выбора хранимых данных. Формализованное описания БД производится с помощью трех моделей: модели хранения данных (структура БД), модели актуализации данных и модели извлечения данных. На основе этих моделей разрабатываются соответствующие программы: создания канонической структуры БД (ПКС), создания структуры хранения БД (ПС), актуализации (ПА) и извлечения данных (ПИ) [14],[39].
Таким образом, переход к физической модели базы данных, реализуемой и используемой на компьютере, производится с помощью системы программ, позволяющих создать в памяти ЭВМ (на магнитных и оптических дисках) базу хранимых данных и работать с этими данными, т.е. извлекать, изменять, дополнять, уничтожать. Эти программы называются СУБД (системы управления базами данных). На рис.4.11 программы, входящие в СУБД заключены в пунктирный прямоугольник.
Ошибка! Ошибка связи.
Рис. 4.11 Состав моделей и программ процесса накопления
Современная СУБД содержит в своем составе программные средства создания баз данных, средства работы с данными и дополнительные, сервисные средства (рис. 4.12) [49]. С помощью средств создания БД проектировщик, используя язык описания данных (ЯОД), переводит логическую модель БД в физическую структуру, а на языке манипуляции данными (ЯМД) разрабатывает программы, реализующие основные операции с данными (в реляционных БД- это реляционные операции). При проектировании привлекаются визуальные средства, т.е. объекты, и программа-отладчик, с помощью которой соединяются и тестируются отдельные блоки разработанной программы управления конкретной БД.
Средства работы с данными предназначены для пользователя БД. Они позволяют установить удобный (как правило, графический многооконный) интерфейс с пользователем, создать необходимую функциональную конфигурацию экранного представления выводимой и вводимой информации (цвет, размер и количество окон, пиктограммы пользователя и т.д.), производить операции с данными БД, манипулируя текстовыми и графическими экранными объектами.
Дополнительные (сервисные) средства позволяют при проектировании и использовании БД привлечь к работе с БД другие системы. Например, воспользоваться текстом из системы редактирования Word или таблицей из табличной системы Excel, или обратиться к сетевому серверу.
СУБД принципиально различаются по моделям БД, с которыми они работают. Если модель БД реляционная, то нужно использовать реляционную СУБД, если сетевая - сетевую СУБД, и т.д.
Ошибка! Ошибка связи.
Рис. 4.12 Состав СУБД
В технологическом, информационном процессе накопления данных наибольший вес имеют базы данных как независимые от прикладных программ хранилища данных. Однако, это не единственный способ накопления данных. Напомним, что любой вид представления информации, будь то числа, текст, программа, изображение, графический объект или звук, в ЭВМ превращается в двоичные коды - данные. Одной из форм хранения данных на дисках компьютеров, является файловая форма. Она по-прежнему широко распространена и поддерживается всеми современными операционными системами. Файл- это теоретически неограниченный, статистический набор данных, физически расположенный на магнитном или оптическом диске, имеющий уникальное имя и метки начала и конца. Файлы не имеют между собой функциональной связи, но для облегчения их поиска и проведения необходимых операций, таких запись, копирование, переименование, удаление и т.п., они имеют иерархическую логическую организацию, создаваемую операционной системой компьютера. Современные операционные системы (Windows95) представляют пользователю разнообразный набор графических, экранных средств манипуляции файлами.
Данные, полученные в процессе накопления, используются в информационной технологии для процессов обработки и обмена.
Третий важнейший информационный процесс - процесс обмена данными.
ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ
1. Каково назначение и функции процесса накопления?
2. Перечислите состав и определите назначение процедур процесса накопления.
3. Нарисуйте и объясните структурную схему жизненного цикла существования данных.
4. Что такое инфологическая модель предметной области?
5. Дайте формализованное описание модели выбора хранимых данных.
6. Нарисуйте пример информационного графа и объясните его назначение.
7. Чем отличаются матрицы достижимости и смежности?
8. В чем отличие входных, промежуточных и выходных наборов данных? Какие из них подлежат хранению?
9. Что такое каноническая структура информационной базы?
10. Определите понятие „база данных“.
11. Расскажите об основных моделях баз данных.
12. В каком виде воспринимается пользователем реляционная база данных?
13. Приведите примеры структуры реляционной БД.
14. Что такое отношение, атрибут, кортеж, степень отношения, кардинальное число?
15. Определите понятие ключа. Каковы требования к ключам отношений?
16. Каковы правила ценности реляционной БД.
17. Перечислите и объясните традиционные теоретико-множественные операции.
18. Перечислите и объясните специальные реляционные операции.
19. Объясните существо объектно-ориентированного программирования и объектной модели базы данных.
20. Нарисуйте схему состава и взаимосвязей моделей и программ процесса накопления данных.
21. Перечислите и объясните состав средств реализации системы управления базами данных (СУБД).
22. Расскажите о файловой системе хранения данных.