Концептуальное моделирование данных. СУБД. Абстракция
Концептуальное моделирование данных

Если мы не умеем считывать данные, то можно сказать, что у нас их нет. Пусть в базе хранятся символы: 1835АНОХИНАН385851961, где 4 бита – табельный номер; 8 бит – Ф.И.О.; 5 бит – телефон; 4 бита – год рождения.
Набор данных - модель предметного мира, заместитель предметной области.
База данных (БД) – информационная модель некой предметной области.
Модель должна быть:
  1. Непротиворечивой;
  2. Адекватной;
  3. Полной (отвечать требованиям конкретной задачи).
БД предназначена для описания некоторого факта предметной области.
Данные – условно это некоторое формализованное описание, производимое с помощью какого-либо кода, факта из реального мира.
Интерпретация данных – определение смысла данных, структуры, разъяснения кода. Чтобы интерпретировать данные, необходимо:
  1. Указать объект, который описывает эти данные;
  2. Указать свойства этого объекта.
Сотрудник: 1835АНОХИНАН385851961, где 13-17 биты указывают телефон сотрудника, сами данные – описание значения свойств некоторого объекта.

Данные + Интерпретация = Информация

Модель данных – средство, позволяющее интерпретировать данные, хранящиеся в БД. Модель описывается диаграммой «сущность – связь».
Знание – способность получать на основании одних данных другие.
Единица информации – тройка, состоящая из:
  1. Объекта;
  2. Свойства;
  3. Значения.
(Пр.: температура воздуха +35°C).
Разновидности элементов информации

Элемент (единица) информации должен быть простым (неделимым). Иначе это составной элемент информации. (Пр.: Телефон абонента 48439 38585);
Элементы могут быть:
  1. Статическими: объект, свойство, значение. (Пр.: температура воздуха +10°С);
  2. Динамическими: объект, свойство, значение, время. (Пр.: температура воздуха +10°С в 9:00 22.02.08).
В статическом элементе информации хранится некий «срез» информации по времени. В динамическом элементе хранятся все состояния атрибута, которые существовали или существуют на данный момент.
Модель данных. Состоит из 3 частей:
  1. Структура данных (их интерпретация, описание каждого атрибута). Семантическая и синтаксическая интерпретация данных, хранящихся в БД;
  2. Ограничение целостности (триггер целостности). Набор правил, обеспечивающий защиту от неверных данных.
  3. Перечень операций над данными.
Средства управления БД

Для создания и описания структур данных существуют специальные средства:
  1. CASE-средства. Графические пакеты, которые позволяют представить графические структуры. Для того чтобы компьютер смог понять эту БД, ее нужно описать на языке описания данных (ЯОД, или же DDL – Data Definition Language, является подмножеством SQL). Сначала структура данных проектируется в CASE-средствах, затем описывается на ЯОД вручную, либо автоматически.
  2. Триггеры целостности в БД можно представить с помощью:
    1. DDL;
    2. встроенных процедур.
    Кроме триггерной целостности существуют 2 понятия:
    1. Хранимые процедуры;
    2. Представления.
  3. Операции над данными. Осуществляется через язык манипулирования данными (ЯМД, т.е. DML - Data Manipulation Language). Он позволяет менять содержимое БД.
Наполнение модели данными идет сразу после ее создания.
Функции СУБД
  1. Управление данными во внешней памяти. Происходит либо средствами ОС, либо средствами самой СУБД;
  2. Управление буферами оперативной памяти;
  3. Управление транзакциями;
    Транзакция - это участок кода, набор операций, который воспринимается СУБД как единое целое.
    Пока система не завершила транзакцию, база находится в старом состоянии. Если транзакция не завершилась и возникла ошибка, то выполняется откат (rollback). Если транзакция завершена успешно (commit), то старое состояние БД удаляется и база переходит в текущее состояние.
  4. Журнализация - функция СУБД, которая сохраняет информацию, необходимую для восстановления базы данных в случае логических или физических сбоев.
    Все изменения БД вносятся сначала в специальный файл (журнал). Затем при сохранении или закрытии БД этот файл записывается на диск (применяются изменения).
    Еще одно средство защиты БД - архивирование (создание архивных копий).
  5. Поддержка языков БД.
    Основные языки: SDL (Simple Declarative Language) (DDL) + DML = SQL.
Структура данных

Мы всегда обращаемся к данным с разных точек зрения. Как и в реальной жизни, здесь мы манипулируем абстракциями.
Существует 2 типа абстракции:
  1. Обобщение;
  2. Агрегация.
Абстракция позволяет частное заменить общим понятием.
Обобщение – вид абстракции, в ходе которого объекты объединяются на основании общего для них свойства.
Одноуровневое обобщение
Одноуровневое обобщение
Многоуровневое обобщение (двухуровневое)
Многоуровневое обобщение
Класс – результат обобщения объектов. Объект всегда наследует свойства класса. Все нижние уровни обладают свойствами верхнего уровня. Свойства всегда наследуются по пути, который приводит к самому верхнему уровню.
Обратный процесс обобщения называется экземпляризацией.
Агрегация – синтез объекта из составных частей. Объединение нескольких объектов в один, обладающий свойством целостности. Процесс агрегирования многоуровневый.
Пример: Стул: спинка, сиденье, рама, крепёж, заглушки. Общего свойства у этих объектов нет, но они вместе объединены в стул. Свойство целостности – на стуле можно сидеть.
Целостность – система обладает свойствами, не присущие её составляющим (это в теории систем; в БД имеет другой смысл).
Пример
Автомобиль как результат агрегации (является частью (is part of)) – двигатель, трансмиссия, …
Автомобиль как результат обобщения (является (is a)) – грузовой, легковой, автобус, …


Ctrl  Предыдущая  •  Следующая  Ctrl
Сайт управляется системой uCoz