Файл: Способы представления данных в информационных системах (Общие понятия и определения).pdf
Добавлен: 27.04.2023
Просмотров: 302
Скачиваний: 2
СОДЕРЖАНИЕ
2 БАЗЫ ДАННЫХ КАК ОСНОВНОЙ ВИД ПРЕДСТАВЛЕНИЯ ИНФОРМАЦИИ В ИС
2.1 Трехуровневое представление данных в ИС
2.3 Объектно-ориентрованные БД
3 ТЕХНОЛОГИИ ВЗАИМОДЕЙСТВИЯ С ДАННЫМИ В БД
4 ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ НА ПРИМЕРЕ ИС В КОНКРЕТНОЙ ПРИКЛАДНОЙ ОБЛАСТИ
4.1 Словесная постановка задачи
4.2 Анализ предметной области, информационные единицы и особенности представления информации
4.3 Выделение сущностей и определение атрибутов
2 БАЗЫ ДАННЫХ КАК ОСНОВНОЙ ВИД ПРЕДСТАВЛЕНИЯ ИНФОРМАЦИИ В ИС
Информация стала фактором, определяющим эффективность любой какой сфере деятельности человека. Поэтому и возникла необходимость в применении наиболее перспективных компьютерных технологий для работы с информации разного типа. Современной формой информационных систем является банки данных, в состав которых входят вычислительная система, одна или несколько баз данных (БД), система управления базами данных и набор прикладных программ (ПП).
В БД используются классические модели данных: иерархическая, сетевая, реляционная и объектно-ориентированная. Иерархическая модель является удобной для работы с иерархически упорядоченной информацией и громоздкая для информации из сложными логическими связями. Сетевая модель - это представление данных в виде произвольного графа. Преимуществом сетевой и иерархической моделей является их эффективность реализации по затратам памяти. Недостатком сетевой модели данных является сложность схемы БД. Реляционную модель предложил американский математик Кодд, который доказал, что любая совокупность данных предметной области может быть подана взаимосвязанными между собой математическими отношениями. Объектно-ориентировочные БД объединяют в себе две модели данных, реляционную и сетевую, используются при создании больших БД со сложными структурами данных.
2.1 Трехуровневое представление данных в ИС
Как было сказано выше, ядром современных информационных систем являются базы данных – специально организованные информационные массивы, накопление и обработка которых, по сути, являются центральной задачей функционирования информационных систем.
Этап проектирования данных является сегодня отдельным этапом в жизненном цикле проектирования ИС. Этап предполагает
‑ концептуальное проектирование информационной модели предметной области ИС и структур данных;
‑ разработка даталогической модели данных;
‑ физическая реализация БД, с учетом особенностей конкретно выбранного формата БД и технологий СУБД.
Концептуальное описание выполняется с использованием естественного языка, математических формул, таблиц, графиков и других средств, понятных всем людям, работающих над проектированием базы данных. Концептуальную модель также называют инфологической моделью данных.
Инфологическая модель понятна людям (разработчикам, программистам, архитекторам, заказчикам, пользователям), но она не достаточно формализована для понимания машиной. По этому следующими этапами являются разработка компьютеро-ориентированных моделей.
Инфологическая модель, описанная на языке описания данных конкретной СУБД, называется даталогической моделью данных.
Последний уровень детализации модели данных – физическая модель, предполагает конкретизированное описание структуры файла (например в реляционной модели – это имя, тип поля, его длина и точность (для числовых полей).
Рисунок 2.1 ‑ Трехуровневое представление данных в ИС
Таким образом, рассматривают три уровня описания базы данных, на каждом из которых ее структура изображается по-разному.
Трехуровневая архитектура (инфологический, даталогический и физический уровни) позволяет обеспечить независимость хранимых данных от использующих их программ.
2.2 Реляционные БД
Реляционная модель данных основана на математическом понятии отношения и представлении отношений в виде таблиц. Модель предложена в начале 70-х лет американским ученым Э.Коддом. В любой реляционной СУБД допускается, что пользователь воспринимает БД как набор таблиц. Это касается только логической структуры БД, т.е. относится к концептуальному и внешнему представлениям. На физическом уровне БД реализуется с помощью разных структур хранения. В табл. 2.1 приведенные элементы реляционной модели. Для однозначной идентификации строк, для связывания таблиц между собой, для ускорения операций над данными применяют ключи. В табл. 2.2 приведенные возможные виды реляционных ключей. Внешний и соответствующий ему потенциальный ключ должны быть определены в одном домене.
Таблица 2.1 – Элементы реляционной модели
|
Элемент реляционной модели |
Форма представления |
|
Отношение |
Таблица |
|
Кортеж |
Строка таблицы |
|
Атрибут |
Заголовок столбца таблицы |
|
Ключ |
Совокупность атрибутов, которые уникально определяют каждую строку таблицы, или выполняют функции связывания таблиц, или позволяют ускорить операции над таблицами |
|
Домен |
Множество значений атрибута |
|
Схема отношения |
Строка заголовков столбиков таблиц идентифицирующих связи между сущностями |
Таблица 2.2 – Реляционные ключи
|
Название |
Пояснение |
|
Потенциальный ключ (CandidateKey) |
Минимальная подмножество атрибутов отношение, которые единственным образом идентифицируют кортеж данного отношение |
|
Первичный ключ (Primary Key) |
Потенциальный ключ, который выбран для уникальной идентификации кортежей отношение |
|
Вторичный ключ (Secondary Key) |
Ключ, каждому значению которого может отвечать более чем один экземпляр индексированных данных |
|
Внешний ключ (Foreign Key) |
Совокупность атрибутов отношения, значение которых является одновременно и значениями первичного или потенциального ключа другого отношение |
Задача группирования атрибутов в отношение при условии, что набор возможных отношений заранее не фиксирован, допускает большое количество вариантов схем отношений: аналитический подход - все данные собрать в одну таблицу; семантический подход - данные собирать в несколько таблиц по смыслу. Рациональные варианты должны отвечать следующим требованиям:
- все таблицы должны иметь один первичный ключ;
- первичные ключи, которые выбраны для отношений, должны быть минимальными;
- выбранный состав отношений базы должен быть минимальным (отличается минимальной чрезмерностью атрибутов);
- не должно быть проблем при выполнении операций включения, модификации и удаление данных в базе; перестройка набора отношений при введении новых типов данных должна быть минимальной;
- время ответа на разные запросы к БД должно быть минимальным.
Нормализация – это процедура определения того, какие атрибуты связаны в отношении. Одна из главных задач при разработке реляционной БД – объединение в одном отношении тех атрибутов, которые связаны между собой (между которыми есть функциональные зависимости). Нормализация представляет собой поэтапный процесс замены совокупности отношений другой совокупностью (схемой), в которой отношение имеют простую и регулярную структуру. Результатом нормализации есть логическая модель БД.
Процесс проектирования БД с использованием декомпозиции представляет собой процесс последовательной нормализации схем отношений, при этом каждая следующая итерация отвечает нормальной форме более высокого уровня и имеет лучшие свойства в сравнении с предыдущей (рис. 2.2).
Рисунок 2.2 – Соотношение нормальных форм
2.3 Объектно-ориентрованные БД
Основные определения
В начале 1980-х годов начались первые исследования и разработка концепций объектно-ориентированных баз данных.
Объектно-ориентированные базы данных ‑ базы данных, в которых информация представлена в виде объектов, как в объектно-ориентированных языках программирования.
Причиной появления систем объектно-ориентированных баз данных была потребность в более адекватном представлении и моделировании сущностей реального мира, поскольку ООБД обеспечивают гораздо более развитую модель данных, чем традиционные реляционные базы данных. Парадигма ООБД основывается на ряде базовых понятий, как объект, идентификатор объекта, класс, наследование, перегрузка и отложено связки. Любой объект при своем создании получает генерируемый системой уникальный идентификатор, который связан с объектом в все время его существования и не изменяется при изменении состояния объекта. каждый объект имеет состояние и поведение.
1. Состояние объекта ‑ набор значений его атрибутов.
2. Значение атрибута объекта ‑ это тоже определенный объект или множество объектов.
3. Поведение объекта ‑ набор методов (программный код), оперирующих над состоянием объекта.
Основные трудности объектно-ориентированного моделирования данных является следствием того, что такого развитого математического аппарата, на который могла бы опираться общая объектно-ориентированная модель данных, не существует.
Декларируемые возможности ООБД
Обязательные возможности ООБД:
1. Поддержка сложных объектов
Механизм сложных объектов позволяет объекта иметь атрибут, могут тоже быть объектами. Атрибутами могут быть массивы, списки, хеш таблицы и тому подобное.
2. Идентификация объектов
Каждая сущность в базе данных имеет уникальный идентификатор OID. Он есть свойством объекта отличает его от других объектов и существует в течение всего жизненного цикла объекта. Идентификатор объекта должен быть независимым от значений его атрибутов
3. Инкапсуляция
Объектно-ориентированная модель представления данных навязывает инкапсуляции и сокрытие информации. Это означает, что состояние объекта может скрываться для запрета доступа к внутренней логики работы объекта.
4. Поддержка структур и классов
В ООП структура объединяет общие характеристики набора сущностей.
5. Наследование и полиморфизм
Наследование ‑ одно из базовых понятий в объектно-ориентированном программировании. Связано с тем, что класс может иметь класса-наследника, который имеет те же свойства, что и базовый класс, но также и иметь новые свойства.
6. Вычислительная полнота
SQL (как основной язык реляционных БД) не имеет всех возможностей обычных языков программирования. Языки типа Pascal, C, C# или Java можно назвать вычислительно полными, так как они используют все вычислительные возможности компьютера. SQL можно назвать реляционно полным, так как в нем реализована вся логика реляционной алгебры. Так, любой код, написанный на SQL, можно переписать на C ++, но далеко не любой код на C ++ можно переписать на SQL.
Поэтому большинство программ, использующих реляционные базы данных, включают использование встроенных SQL-запросов в рамках обычной языка программирования.
Это означает, что язык манипулирования данными должен быть языком программирования общего назначения.
7. Параллелизм
8. Восстановление
9. Специальная система запросов
10. Возможность добавления новых типов данных
Набор типов данных должен быть расширяемым. Пользователь должен иметь средства создания новых типов данных на основе набора определенных системных типов. Более того, между способами использования системных и пользовательских типов данных не должно быть никаких различий.
Сравнение концепций ООБД и реляционных БД
Соотношение между базовыми понятиями ООБД и РБД показаны в табл. 2.3
Таблица 2.3 – Соотношения между базовыми понятиями
|
ООБД |
Реляционная БД |
|
Объект |
Строка таблицы |
|
Поле |
Столбик таблицы |
|
Иерархия классов |
Схема данных БД |
|
Наследование |
Один из видов соотношения «1 к 1», когда основной ключ таблицы-наследника одновременно является внешним ключом на основной ключ таблицы -предка |
|
Метод |
Частично реализуется встроенными процедурами и триггерами |
|
Полиморфизм |
- |
|
Инкапсуляция |
- |
В таблице 2.3 указаны соотношения между базовыми понятиями, используются в объектно-ориентированных и реляционных базах данных.
Преимущества и недостатки ООСУБД
Преимущества ООСУБД: