ИНФОРМАЦИОННЫЕ
СИСТЕМЫ В ЭКОНОМИКЕ
БАЗЫ ДАННЫХ
Современные технологии
проектирования
информационной модели
и базы данных
Основные понятия и
определения :
информационная база (ИБ);
банк данных;
компоненты банка данных:
•
•
база данных (БД);
система управления базами данных DBMS
(СУБД);
фонд данных.
Информационная база (ИБ)
Основная часть внутримашинного
информационного обеспечения. ИБ –
определенным способом организованная
совокупность данных, хранимых в памяти
вычислительной системы в виде реляционных
таблиц или файлов, с помощью которых
удовлетворяются информационные потребности
управленческих процессов и решаемых задач.
Реляционная таблица содержит строки (записи,
кортежи) и столбцы (поля, атрибуты).
Банк данных
Система программных, языковых,
организационных и технических средств,
предназначенных для централизованного
накопления и коллективного
использования.
База данных (БД)
Именованная совокупность данных,
отображающая состояние объектов
и их отношений в рассматриваемой
предметной области.
БД помогает систематизировать
и хранить информацию, облегчает доступ
к данным, поиск и предоставление
необходимых сведений.
Система управления базами
данных DBMS (СУБД)
Выступает как совокупность языковых и
программных средств, предназначенных
для управления данными по единым
правилам. СУБД, как правило, допускает
совместное использование БД многими
пользователями.
Фонд данных
Всю совокупность данных, хранящихся в
банке данных, называют фондом данных,
состоящим из БД и архивов. Основанием
для этого разбиения является режим
использования данных. Одни и те же
данные в разные моменты времени могут
входить как в БД, так и в архивы.
Свойства базы данных
целостность;
согласованность;
восстанавливаемость;
безопасность.
Целостность
База данных обладает свойством
целостности, если она удовлетворяет
некоторым определенным ограничениям
значений данных и сохраняет это
свойство при всех модификациях
(замена, добавление, удаление) данных.
Согласованность
База данных обладает свойством
согласованности по отношению к
некоторой совокупности пользователей,
если в любой момент времени БД
реагирует на их запросы одинаковым
образом (т.е. все пользователи получают
одинаковый ответ).
Восстанавливаемость
– это запроектированная возможность
восстановления целостности БД после
любого сбоя системы.
Безопасность
Защита данных от преднамеренного или
непреднамеренного доступа,
модификации или разрушения.
Централизованное управление данными
осуществляемое средствами, входящими в
состав СУБД, обеспечивает:
сокращение избыточности в хранимых данных;
устранение несовместимости в хранимых
данных многими приложениями;
совместное использование хранимых данных,
что достигается необходимой интеграцией
данных;
целостность данных, которая достигается с
помощью процедур, предотвращающих
внесение в БД неверных данных и ее
восстановление после отказов системы;
лучший учет противоречивых требований к
использованию БД в различных приложениях с
соответствующим структурированием БД.
Администратор базы данных – несет
ответственность за проектирование и общее
управление БД, решает вопросы, связанные с
размещением БД в памяти, выбором стратегии
доступа и ограничением доступа к данным,
организует загрузку, ведение и
восстановление БД.
Принципы проектирования БД
Используются два основных вида
информационных моделей предметной
области объекта информатизации – типа
«объект – свойство» и типа «сущность –
связь».
Проектирование информационной модели типа
«объект – свойство» начинается с
предварительной структуризации предметной
области: объекты реального мира подвергаются
классификации, фиксируется совокупность
объектов, подлежащих отображению в
информационной системе.
Для каждого типа объектов фиксируется
совокупность подлежащих отображению в БД
атрибутов (объектный подход к проектированию
БД). Для каждого типа объектов фиксируется
совокупность свойств, посредством которых
будут описываться конкретные объекты этого
типа в БД, виды отношений (взаимосвязей)
между этими объектами.
Объект – то, о чем должна накапливаться
информация в информационной системе (ИС).
Выбор объектов зависит от назначения ИС.
Каждый объект в конкретный момент времени
характеризуется определенным состоянием.
Это состояние описывается с помощью
ограниченного набора свойств и связей
(отношений) с другими объектами. Свойства
объекта могут не зависеть от его связей
(объектных отношений) с другими объектами,
т.е. являются локальными.
Связь между объектами в зависимости от типа
входящих в нее объектов характеризуется
кардинальным числом
n = 2, 3, …, N.
Альтернативой объектному представлению
является модель типа «сущность – связь».
Модель такого типа – неформальная
модель предметной области, которая также
используется на этапе инфологического
проектирования БД.
Основное назначение неформальной
модели «сущность – связь» –
семантическое описание предметной
области и представление информации для
обоснования выбора видов моделей и
структур данных, которые в дальнейшем
будут использованы в системе.
В модели используются три основных
конструктивных элемента:
сущность;
атрибут;
связь.
Информация о предметной области
объединяется с помощью графических
диаграмм.
Сущность – это собирательное понятие,
некоторая абстракция реально
существующего объекта, процесса или
явления, о котором необходимо хранить
информацию в системе. В качестве
сущностей в моделях предметной области
рассматриваются материальные
(предприятие, изделие, сотрудники и т.д.) и
нематериальные (описание некоторого
явления применяемых в системе структур
данных, реферат научных статей и т.д.)
объекты реальной действительности.
В моделях предметной области типа
«сущность – связь» каждая рассматриваемая
конкретная сущность является узловой
точкой сбора информации о ней. Тип
сущности определяет набор однородных
объектов, экземпляр сущности – конкретный
объект в наборе. Для идентификации
конкретных экземпляров сущности в
некотором типе используются специальные
атрибуты – идентификаторы.
Это может быть один или несколько
атрибутов, знания о которых позволяют
однозначно отличать один экземпляр
сущности от другого.
Атрибут – это поименованная характеристика
сущности, которая принимает значение из
некоторого множества значений (домена).
Основное назначение атрибута – описание
свойства сущности, а также идентификация
экземпляров сущностей. Атрибут можно
использовать и для представления связей
(отношений) между сущностями, поскольку связь
(отношение) характеризует именно объекты,
между которыми она существует.
Домен можно рассматривать как подмножество
значений некоторого типа данных имеющих
определенный смысл. Свойства домена :
имеет уникальное имя (в пределах БД);
определен на некотором простом типе данных
или на другом домене;
может иметь некоторое логическое условие,
позволяющее описать подмножество данных,
допустимых для данного домена;
несет определенную смысловую нагрузку.
Если тип данных можно считать множеством
всех возможных значений данного типа, то
домен напоминает подмножество в этом
множестве.
Связи выступают в модели в качестве
средства, с помощью которого
представляются отношения между
сущностями, имеющими место в
предметной области.
Уровни представления данных
Существует три уровня абстракции для
определения структуры БД:
концептуальный (с позиции
администратора предприятия);
реализации (с позиции прикладного
программиста);
физический (с позиции системного
программиста или конечного
пользователя).
Структура данных на концептуальном уровне
называется концептуальной схемой или
информационной структурой.
Концептуальная структура или схема состоит
из:
основных элементарных данных
проблемной области, называемых сущностями;
элементарных данных, описывающих
сущности и называемых атрибутами;
ассоциаций между элементами
элементарных данных, называемых связями
(отношениями).
Фазы жизненного цикла БД
анализа и проектирования:
физическое проектирование;
формирование и анализ требований;
концептуальное проектирование;
проектирование реализации;
реализации и функционирования:
реализация БД;
модификация и адаптация.
Представление реализации состоит из
логических записей, составляющих их
элементов данных и взаимосвязей
записей.
Наиболее часто применяются три
модели данных:
иерархическая;
сетевая;
реляционная.
Иерархическая модель данных
представляет информационные отображения
объектов реального мира – сущности и их
связи в виде ориентированного графа или
дерева. К основным понятиям иерархической
структуры относятся уровень, элемент или
узел и связь.
Узел - это совокупность атрибутов,
описывающих некоторый объект. На схеме
иерархического дерева узлы представляются
вершинами графа. Каждый узел на более
низком уровне связан только с одним узлом,
находящимся на более высоком уровне.
Иерархическое дерево имеет только одну
вершину (корень дерева), не подчиненную
никакой другой вершине и находящуюся на
самом верхнем (первом) уровне. Зависимые
(подчиненные) узлы находятся на втором,
третьем и так далее уровнях. Количество
деревьев в базе данных определяется
числом корневых записей.
Иерархическая модель
Уровень 1
Уровень 2
Уровень 3
Сетевая модель организации данных
является расширением иерархической
модели.
В иерархических структурах записьпотомок должна иметь только одного
предка.
В сетевой структуре данных потомок
может иметь любое число предков.
Сетевая модель
Реляционная модель данных состоит
из набора простых файлов или таблиц,
называемых отношениями, которые в
свою очередь включают чертежи
(экземпляры записей) и атрибуты
(элементарные типы), значения которых
выбираются из простого домена.
Реляционная модель
Таблица 1
Связь 1
Таблица 2
Связь 2
Таблица 3
Термины реляционной модели
Отношение
Двумерная таблица, содержащая некоторые
данные
Схема
отношения
Строка заголовков столбцов таблицы
(заголовок таблицы)
Кортеж
Строка таблицы, запись
Сущность
Описание свойств объекта
Атрибут
Столбец, поле
Домен
Множество допустимых значений атрибута
Первичный ключ Уникальный идентификатор
Кардинальность Количество строк
Степень
Количество столбцов
Реляционная база данных состоит из
набора связанных между собой таблиц.
Данные организованы в этих таблицах
таким образом, чтобы обеспечить
объединение разнородной информации,
исключить ее дублирование, а также
предоставить оперативный доступ к
имеющимся сведениям и эффективное
сопровождение БД в целом.
Основным критерием эффективности
работы с реляционной моделью данных
является отсутствие избыточности
данных.
Это означает, что данные будут
сохранены два раза и больше только в
том случае, если это действительно
необходимо для управления БД.
На практике это означает, что для
каждой логической взаимосвязи
(категории) данных создается отдельная
таблица. Использование нескольких
небольших таблиц имеет
преимущественную возможность более
быстрого обновления данных с меньшей
вероятностью ошибок. Кроме того,
изменить структуру данных в таблице или
расширить БД путем добавления
дополнительных таблиц значительно
проще.
Индексы и ключи
Индекс – это упорядоченный в алфавитном или
цифровом порядке список содержимого столбцов или
группы столбцов в таблице. Таблицы могут иметь
большое количество строк, и, поскольку строки задаются
в любом произвольном порядке, поиск их по значению
какого-либо из полей может занять достаточно много
времени. Индексы предназначены для решения этой
проблемы и для объединения всех значений в группы из
одной или нескольких строк, отличных друг от друга.
Индексы можно создавать по множеству полей. Если
указано более одного поля для создания единственного
индекса, данные упорядочиваются по значениям первого
поля, по которому осуществляется индексирование.
Внутри получившихся групп осуществляется
упорядочение по значениям второго поля.
Ключом отношения называется
совокупность его атрибутов, однозначно
идентифицирующих каждый из кортежей
отношения.
Иными словами, множество атрибутов
К, являющееся ключом отношения,
обладает свойством уникальности.
Следующее свойство ключа —
неизбыточность. То есть никакое из
собственных подмножеств множества К
не обладает свойством уникальности.
Ограничения для первичного ключа –
недопустимо применение пустых значений
(NULL-значений).
Когда все значения одного из полей таблицы
должны быть представлены в поле другой
таблицы, это означает, что поле ссылается или
является
ссылкой
на
таблицу.
Это
свидетельствует о наличии прямой связи между
значениями двух полей.
Когда поле таблицы ссылается на другое
поле (в другой таблице), оно называется
внешним ключом.
Поля, на которые он ссылается, называются
родительским ключом.
Внешний ключ, как и первичный, может быть
определен на любом количестве полей,
которые все вместе рассматриваются как
единое целое. Внешний ключ и родительский
ключ, на который он ссылается, должны быть
определены на одинаковом множестве полей.
Если поле является внешним ключом, то оно
связано с таблицей, на которую ссылается, т.е.
каждое значение в том поле непосредственно
связано со значением в другом поле. Каждая
строка внешнего поля ссылается на одну строку
родительского ключа. Это означает, что
система находится в состоянии целостности.
Один
из
эффектов
поддержки
ограничений
внешнего
ключа
–
исключение значений для поля (полей)
внешнего ключа, не представленных в
данный момент в родительском ключе.
Любое значение родительского ключа,
на который есть ссылка внешнего ключа,
не может быть удалено или изменено.
Основы реляционной алгебры
Пусть имеются множества А и В. Отношение
А к В указывает на связь между отдельными
элементами этих множеств.
Множества могут соответствовать атрибутам
или типам записей. Связи могут быть
функциональными, т.е. удовлетворяющими
определению
математической
функции.
Кардинальные числа связей используются для
определения типа отображения между парами
множеств. Существуют отображения: «один–к–
одному»
(1:1),
«один–ко–многим»
(1:М),
«многие–ко–многим» (М:N).
Примеры связей кардинальности М:N
Для всех функциональных связей справедливо, что
атрибут (или сущность), который является областью
определения, однозначно определяет атрибут (или
сущность) области значений.
Говорят,
что
атрибут
области
определения
однозначно определяет атрибут области значений, или
иначе – последний зависит от первого. Это приводит к
понятию функциональной зависимости в теории баз
данных.
В теории реляционных баз данных были выделены
некоторые свойства функциональных зависимостей и
сформулированы в виде аксиом. Эти аксиомы
называются также правилами вывода, т.к. используя их,
можно
вывести
или
получить
из
известных
функциональных зависимостей ряд других.
Нормализация
Нормализация устраняет нежелательные
функциональные зависимости.
Формально процесс нормализации делится
на пять шагов или этапов от первой
нормальной формы до пятой.
Выполнение каждого последующего этапа
возможно лишь в том случае, если
предыдущий этап завершился успешно.
Последние две формы обычно
пропускаются, т.к. для применения в
проектировании типичных баз данных они
являются слишком узкоспециализированными.
Атрибут, входящий в ключ, называется
первичным, в противном случае он
называется не первичным.
Функциональная зависимость А В
называется
полной
функциональной
зависимостью, если В зависит от всей
группы атрибутов А, а не от ее части
(подмножества).
Первая нормальная форма (1НФ)
Отношения находятся в первой нормальной форме, если
значение всех его атрибутов атомарные, т.е. значение атрибутов
не должно быть множеством или повторяющейся группой.
Для того чтобы таблица соответствовала первой нормальной
форме, каждый столбец этой таблицы должен быть полностью
атомарным и не содержать повторяющихся групп. Например,
столбец «Адрес», содержащий не только название улицы, но и
название города, страны и почтовый индекс, атомарным не
является. Такие столбцы нужно разбивать на несколько
столбцов, для того чтобы таблица полностью соответствовала
первой нормальной форме.
Повторяющаяся группа – это столбцы, которые повторяются в
пределах одной и той же строки для хранения значения одного и
того же атрибута. Использование повторяющихся групп является
плохой практикой, т.к. неоправданно расходуется дисковое
пространство и не все элементы заполнены.
Вторая нормальная форма (2НФ)
Отношение находится во второй нормальной
форме, если оно находится в 1НФ и каждый не
первичный атрибут функционально полно
зависит от ключа (ключей).
Для того чтобы таблица соответствовала
второй нормальной форме, каждый из ее
столбцов должен зависеть от первичного ключа
или от каждого атрибута первичного ключа,
если такой атрибут состоит из нескольких
столбцов. Это означает, что все неключевые
столбцы должны однозначно определяться с
помощью первичного ключа таблицы.
Третья нормальная форма (3НФ)
В таблице, соответствующей третьей
нормальной форме, каждый столбец должен
полностью зависеть только от первичного
ключа, и все неключевые столбцы не должны
зависеть друг от друга.
Иными словами, неключевые столбцы
таблицы, соответствующей третьей нормальной
форме, должны не только однозначно
определяться первичным ключом, но и не
зависеть друг от друга.
Основные этапы
проектирования БД:
общее проектирование и определение целей создания;
определение необходимых таблиц и полей;
определение полей с уникальными значениями в каждой
записи;
определение связей между таблицами;
усовершенствование структуры;
ввод данных;
разработка системы запросов к таблицам базы данных и
при необходимости их интеграция в схему данных;
конструирование экранных форм для работы с данным;
конструирование отчетов;
средства макропрограммирования;
разработка программных приложений для MS Access.