Лекция №3
Название лекции: Концептуальная схема и её модели данных.
План:
1. Значение концептуальной схемы. Язык описания концептуальных схем.
2. Модели, которые используются для описания концептуальных схем:
2.1. Иерархическая модель;
2.2. Сетевая модель;
2.3. Реляционная модель;
2.4. СУБД, использующих другие модели.
1. Значение концептуальной схемы. Язык описания концептуальных схем.
Выбор концептуальной схемы является центральным пунктом в разработке баз данных. Концептуальные схемы оказывают существенное влияние на способы описания схем уровня представлений и физических схем.
Для определения базы данных на концептуальном уровне СУБД предоставляет так называемый язык определения данных (DDL - data definition language). Этот язык позволяет записать концептуальную схему в терминах некоторой модели данных. В качестве модели данных может быть выбрана, например, модель объектов/отношений. Преимущество и недостатки этой модели рассмотрены выше. Основными понятиями этой модели являются понятия объект, атрибуты (свойства), отношения (связи).
Приведенный выше пример БД аэропорта является фактически концептуальной схемой БД в терминах модели объекты/отношения.
В нашей стране не распространены СУБД, поддерживающие эту модель. Но преимущества модели, обусловленные тесной семантической связью с предметной областью, позволяет с высокой вероятностью построить качественную схему БД. Ясно, что для реализации такой схемы необходимо отобразить схему объект/отношение на модели, которые используются в выбранной СУБД.
2. Модели, которые используются для описания концептуальных схем:
В настоящее время хорошо разработаны и описаны три основных модели, которые используются в системах БД:
Иерархическая модель. Моделью данных здесь является древовидный граф, т.е. связанный, ориентированный граф без циклов, у которого имеется только одна вершина, из которой дуги только выходят и ни одна дуга не входит. Эта вершина называется корнем дерева. Вершина, в которую дуги только входят, называется листом. Все остальные вершины - корни. Вершина, для некоторой вершины А, называется родительской, если из родительской вершины начинается дуга и заканчивается в А. Братья это множество вершин имеющих одного родителя.
Типичным представителем СУБД, в которой реализована иерархическая модель, является СУБД IMS фирмы IBM (INFORMATION MANGMENT SYSTEM) середина 60-х годов. Эта СУБД официально считается вообще первой реализованной СУБД. Распространение этого типа СУБД объясняется простотой и наглядностью используемой модели, которая широко распространена в различных областях деятельности человека и в природе (государство, армия, предприятия, стая и т.д.). Недостатком этой СУБД является сложность реализация связей n:n(многие к многим).
Сетевая модель. Это модель ориентированных графов, вершинами которых является множество однородных объектов, а дугами – ассоциации (связи). Ясно, что модель объект/отношение является примером сетевой модели.
Теоретические основы модели разработаны независимой ассоциацией CODASYL, как обобщение иерархической модели и опыта эксплуатации информационных систем. Ассоциация образованна в конце 50–х годов и финансировалась Пентагоном с целью разработки алгоритмического языка, ориентированного на экономические задачи (COBOL – Common Bisnes Oriented language). Разработчикам этого языка принадлежит ряд пионерских решений в области разработки алгоритмических языков и в частности языков для обработки информации. Это:
- прозрачность текста программы для неспециалиста (синтаксис близкий к обычному языку, длинные идентификаторы, выражения и операции типа «умножить количество на цену получая сумму» {как совокупность разных типов});
- понятие структуры (как тип в языке программирования);
- стандартизация и упрощение методов доступа к файлу.
Язык COBOL считается прототипом (предшественником) СУБД. В конце 60-х годов в рамках CODASYL была организованна рабочая группа по базам данных (Data Base Task Group - DBTG), отчеты которой за 1969...75 годы являются основной теорией БД и в частности сетевых БД. Так DBTG предложило ввести три уровня абстракции, этот подход был позже стандартизован институтом стандартов US (ANSI) и известен как архитектура ANSI/SPARC. Большинство теоретических разработок группы DBTG были стандартизованы.
Известны несколько СУБД сетевой структуры: CA-IDMS/BD компания Computer Associates International Inc, в СССР – ИНЕС.
Реляционная модель. Базируется на теоретико - множественном понятии отношения. Модель разработана американским математиком Коддом (Codd), сотрудником фирмы IBM и опубликована в 1970 г. В настоящее время является наиболее полно разработанной основой теории БД. В настоящем курсе будет рассмотрена теория реляционных БД.
Примеры реляционных СУБД: DB/2 фирмы IBM, ORACLE корпорация Oracle, SYBASE компания Sybase Inc. К реляционным относятся свободно распространяемые СУБД : MySQL и PostgreSQL.
Из СУБД, использующих другие модели, следует упомянуть, прежде всего, СУБД с использованием инвертированных файлов (инвертированных списков).
В настоящее время ведутся в направлении так называемых «постреляционных» СУБД. Назовем некоторые из них:
- дедуктивные СУБД;
- экспертные СУБД;
- расширяемые СУБД;
- объектно-ориентированные СУБД;
- семантические СУБД;
- универсальные реляционные СУБД.