1 Теория проектирования базы данных 1.1 Основные понятия баз данных Часто для успешного функционирования различным организациям требуется развитая информационная система, реализующая автоматизированный процесс сбора, манипулирования и обработки данных.
Современной формой информационных систем являются банки данных, имеющие в своем составе:
вычислительную систему;
систему управления базами данных (СУБД);
одну или несколько баз данных (БД);
набор прикладных программ (приложений БД).
База данных (БД) обеспечивает хранение информации, а также удобный и быстрый доступ к данным. Она представляет собой совокупность данных различного характера, организованных по определенным правилам. Информация в БД должна быть:
непротиворечивой;
не избыточной;
целостной.
Система управления базой данных (СУБД) - это совокупность языковых и программных средств, предназначенных для создания, ведения и использования БД. По характеру применения СУБД разделяют на персональные и многопользовательские.
Персональные СУБД обеспечивают возможность создания локальных БД, работающих на одном компьютере. К персональным СУБД относятся Paradox, dBase, FoxPro, Access и др. 1.2 Информационные, реляционные модели баз данных Типы информационных моделей
Решать любую задачу, в том числе и информационную, можно различными способами. Для оценки вариантов проектируемых баз данных разрабатывают информационные модели. Разработка информационных моделей пока не имеет четких формализованных правил, поэтому эта задача, также как и процесс традиционного программирования, является «искусством» и зависит от квалификации разработчиков. Тем не менее существуют основные принципы создания информационных моделей для оценки оптимальности проектируемых баз данных.
Информационная модель данных предусматривает три уровня описания системы: концептуальный, логический, физический, а соответственно — три типа информационных моделей.
Концептуальные модели данных
Концептуальный уровень описания базы данных (концептуальная модель) представляет собой информационные объекты и их взаимосвязи без указания способов описания и хранения данных.
В данном определении информационными объектами будем называть классы объектов, сведения о которых хранятся в таблицах базы данных. Как правило, в таблице базы данных содержатся сведения об объектах одного класса.
Классом называют множество объектов, характеризующихся одинаковым набором признаков.
Данные об информационных объектах одного класса могут находиться в одной или нескольких таблицах.
Данные об информационных объектах разных классов должны находиться в разных таблицах.
Конечной задачей разработки концептуальной модели является установление оптимального состава таблиц базы данных.
Изложенные в предыдущих подразделах методы формирования состава таблиц базы данных на основе принципов нормализации в конечном итоге определяют концептуальную модель базы данных.
Логические модели данных
Логический уровень описания базы данных (логическая модель) отражает логические связи между таблицами.
Физические модели данных
Физический уровень описания реляционной базы данных (физические модели) характеризуют способы обработки и хранения информации. В теории и практике разработки баз данных и систем управления базами данных разделяют два подхода к построению физических моделей данных.
Первый подход не связан с конкретной СУБД и предполагает описание физических свойств данных каждой таблицы — физические модели таблиц базы данных.
Второй подход к разработке физической модели связан с разработкой архитектуры, организации и хранения данных в конкретной СУБД — физические модели хранения данных.
Разработчик базы данных может не знать архитектуру прикладной программной системы, с помощью которой он создает свою информационную систему, но при этом он должен проработать физические модели для каждой таблицы.
Физические модели таблиц базы данных. Физическая модель таблицы базы данных предполагает описание свойств каждого поля таблицы.
Таким образом, разработка физической модели проекта таблицы базы данных сводится к описанию характеристик каждого поля. Приведем обязательные характеристики полей таблиц базы данных.
Имя поля — некоторый минимальный набор символов, предназначенный для поиска данных в таблице. В каждой прикладной программной системе для разработки баз данных существуют свои грамматические правила для формирования имен полей. В общем случае не допускается начинать имя поля с символа пробела, выбрать в качестве символов знаки препинания.
Подпись поля идентифицируется с названием признака объекта, значения которого будут храниться в ячейках поля. Подпись поля будет находиться в заголовке таблицы. В современных СУБД не существует каких-либо ограничений на формирование подписи поля.
Тип данных — обозначение типа данных в соответствии с конкретной программной системой.
Количество символов — предполагаемое количество символов, которые будут храниться в ячейках поля.
Точность — число знаков после запятой в числовых полях.
Ключ — указание, что данное поле является ключевым. Данный состав свойств является минимально необходимым для описания данных, хранимых в таблице.
Физические модели хранения данных. Физические модели хранения данных определяют методы размещения данных в памяти компьютера или на соответствующих носителях информации, а также способы хранения и доступа к этим данным. Исторически первыми системами хранения и доступа были файловые структуры и системы управления файлами (СУФ). Фактически файловые структуры хранения информации являлись и являются основой операционных систем. В системах управления базами данных использование файловых систем хранения информации оказалось не эффективным потому, что пользователю требовалась информация в виде отдельных данных, а не содержание всего файла. Поэтому в современных СУБД перешли от файловых структур к непосредственному размещению данных на внешних носителях — устройствах внешней памяти. Однако механизмы управления, применяемые в файловых системах, во многом перешли и в новые системы организации данных во внешней памяти, называемые чаще страничными системами хранения информации. |