Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Понятие базы и банка данных.docx
Скачиваний:
22
Добавлен:
22.09.2019
Размер:
83.52 Кб
Скачать

Классификация баз данных.

По технологии хранения различают централизованные и распределённые базы данных.

  1. Централизованные БД размещаются в памяти одной вычислительной машины.

  2. Распределённая БД состоит из нескольких частей, хранимых на различных ПК.

По способу доступа к данным различают БД, организованные как файл-сервер и клиент-сервер.

  1. В системе файл-сервер одна из вычислительных машин является хранилищем централизованной базы данных. По запросу клиента к нему пересылаются файлы БД, затем на ПК клиента производятся все процессы обработки информации. ПК клиентов называются рабочими станциями .

Недостатки системы файл-сервер: к серверу одновременно обращается несколько клиентов или пользователей. Каждому из них по сети полностью передаётся файл базы данных с большим объёмом информации. Это резко снижает производительность труда работы с системой и снижается надёжность работы системы.

  1. В системе клиент-сервер центральная машина не только хранит базу данных, но и выполняет обработку данных. Клиент по сети посылает запрос на центральный ПК, по этому запросу сервер выполняет все процессы обработки информации и клиенту отсылаются только результаты обработки данных .

Преимущества системы клиент-сервер: по сети предаются только результаты обработки данных по запросам клиентов, поэтому резко снижается нагрузка на сеть и увеличивается возможность подключения к БД большего числа пользователей. Раз можно подключить большее количество пользователей, то увеличивается производительность работы системы. Централизованная обработка и хранение данных на сервере повышает надёжность работы системы.

Информационная модель данных, её состав (концептуальная, логическая и физическая модели).

Прежде чем приступить к созданию информационной системы разработчик должен придумать такую организацию БД, которая будет отвечать следующим требованиям:

  1. Полное соответствие требованиям пользователей.

  2. Обеспечение минимального времени получения достоверной информации пользователем.

  3. Потребность минимально возможной памяти на дисковом пространстве ПК.

Начальным этапом разработки любой информационной системы является анализ предметной области.

Предметная область — некоторая совокупность реальных объектов, которые подлежат изучению с целью организации управления и автоматизации. Примерами объектов предметной области могут служить: ПК, программные продукты, их пользователи. Каждый из них обладает определённым набором свойств (атрибутами): ПК характеризуется названием фирмы-производителя, идентификатором модели, объёмом оперативной памяти и так далее.

Информационно-логическая модель — совокупность информационных объектов предметной области и связей между ними.

Информационная модель данных предусматривает три уровня описания системы: концептуальная, логическая, физическая. Процесс проектирования информационной модели данных можно представить с помощью схемы.

Концептуальный уровень описания БД (концептуальная модель) представляет информационные объекты и их взаимосвязи без указания способов описания и хранения данных. Пример: рассмотрим интернет-магазин. У магазина есть товары, которые поставляются поставщиками и покупаются покупателями (три объекта (товар, поставщик, покупатель), две связи) (рис. 1.4).

Между объектами предметной области могут существовать связи: обязательные и факультативные (необязательные). Пример: отдел кадров на предприятии. Один объект — сотрудник, второй объект — должность. Связь обязательная, так как мы не можем принять сотрудника на работу без должности.

В тоже время связь замещается между объектами сотрудник и должность, является фа культативной, так как могут существовать вакантные должности.

Совокупность объектов предметной области и связей между ними характеризует структуру предметной области. Множество объектов предметной области, их атрибуты и связи между ними могут изменяться во времени: добавляться новые или исключаться из рассмотрения некоторые объекты.

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

Логический уровень описания БД (логическая модель) отражает логические связи между атрибутами объектов вне зависимости от их содержания и среды хранения. Логическая модель данных описывает понятие предметной области, их взаимосвязь и ограничения на данные , накладываемые предметной областью. Пример: есть три объекта — сотрудник, отдел, проект. Примеры связей между объектами: «сотрудник числится ровно в одном отделе», «сотрудник может выполнять несколько проектов», «над одним проектом может работать несколько сотрудников». Ограничения : возраст сотрудника не менее 16 лет и не более 60 лет. Логическая модель является прототипом будущей БД без привязки к конкретной СУБД. Логическая модель данных может быть иерархической , сетевой и реляционной .

  1. Сетевая модель используют для описания модель-ориентированных графов.

  1. Иерархической моделью являются совокупностью «деревьев».

  2. Реляционная модель используют представление данных в виде таблиц и теоретико-множественных отношений.

Между данными существуют следующие типы связи(рис. 1.7):

  1. Один к одному.

  2. Один ко многим.

  3. Многие к одному.

  4. Многие к многим.

Физический уровень описания БД (физическая модель) предусматривает принятие решения о способах реализации модели на основе конкретной СУБД. На этом уровне осуществляется взаимодействие СУБД с методами доступа ОС с целью размещения данных на запоминающих устройствах, создание индексов, извлечение данных и так далее.

Пусть требуется создать информационную систему (ИС) для ведения учёта заключённых договор со сторонними организациями. Учёт деятельности менеджеров ведётся по следующим показателям:

  1. ФИО менеджера.

  2. Подразделение, в котором работает менеджер.

  3. Фирма, с которой заключён договор.

  4. Номер заключённого договора.

  5. Стоимость заключённого договора.

Всю информацию можно представить в виде таблицы. Пусть работает 3 менеджера — 3 отдела:

ФИО менеджера

Подразделение

Фирма

Номер договора

Стоимость договора, 1000 руб.

Иванов И.И.

Отдел сбыта

Орион

Орион1

100

Петров П.П.

Отдел рекламы

Центавр

Центавр1

200

Кузнецов С.С.

Производственный отдел

Орион

Орион2

300

Петров П.П.

Отдел рекламы

Центавр

Центавр2

150

Петров П.П.

Отдел рекламы

Три кита

Три кита1

500

Кузнецов С.С.

Производственный отдел

Орион

Орион3

1300

Иванов И.И.

Отдел сбыта

Три кита

Три кита2

1000

Предположим, что каждая ячейка таблицы является символьной и содержит 50 символов. Требуемый объём памяти будем оценивать по числу символов, то есть не в байтах и битах, а именно в символах. Требуемый объём будет равен произведению числа ячеек таблицы и числа символов каждой ячейки (оп=чя*чс; чя=чз*чп → оп=чз*чп*чс=7*5*50=1750 символов ).

Разобьём исходную таблицу на две таблицы:

  1. Информация о менеджерах.

Код

ФИО менеджера

Подразделение

1

Иванов И.И.

Отдел сбыта

2

Петров П.П.

Отдел рекламы

3

Кузнецов С.С.

Производственный отдел

  1. Результаты их деятельности.

Код

Фирма

Номер договора

Стоимость договора, 1000 руб.

1

Орион

Орион1

100

2

Центавр

Центавр1

200

3

Орион

Орион2

300

2

Центавр

Центавр2

150

2

Три кита

Три кита1

500

3

Орион

Орион3

1300

1

Три кита

Три кита2

1000

ОП=ОП1+ОП2 (считается объём только символьной информации, поэтому код не включается).

Объём памяти таблицы 1: ОП1=3*2*50=300 символов.

Объём памяти таблицы 2: ОП2=3*7*50=1050 символов.

Тогда ОП=300+1050=1350 символов.

Выделим ещё одну таблицу «Фирмы»:

Код фирмы

Фирма

10

Орион

20

Центавр

30

Три кита

В итоге:

Код

Код фирмы

Номер договора

Стоимость договора, 1000 руб.

1

10

Орион1

100

2

20

Центавр1

200

3

10

Орион2

300

2

20

Центавр2

150

2

30

Три кита1

500

3

10

Орион3

1300

1

30

Три кита2

1000

ОП=ОП1+ОП2+ОП3.

Объём памяти таблицы (менеджеры):

ОП1=3*2*50=300 символов.

Объём памяти таблицы (фирмы):

ОП2=1*3*50=150 символов.

Объём памяти таблицы (работа):

ОП3=2*7*50=700 символов.

Тогда ОП=300+150+700=1150 символов.

Виды логических моделей БД: иерархическая, сетевая, реляционная.

Ядром любой БД является модель данных, с помощью которой могут быть представлены объекты предметной области и взаимосвязи между ними.

Модель данных — совокупность взаимосвязанных структур данных и операций над ними. Логические модели могут бытьиерархические, сетевые и реляционные.

Иерархическая и сетевая модели появились в начале 60-х годов. В начале 70-х годов была предложена реляционная модель сотрудником фирмы IBM американским специалистом в области систем БД Эдгаром Коддом . Иерархическая модель данных строится по принципу иерархии типов объектов, то есть один тип объектов является главным, а остальные, находящиеся на низших уровнях, являются подчинёнными.

Объекты, связанные иерархическими отношениями образуют ориентированный граф или дерево .

Главный тип объектов (узел), расположенный на верхнем уровне дерева является корнем. На следующим уровне располагаются узлы, связанные с этим корнем, затем узлы, связанные с узлами предыдущего уровня и так далее, причём каждый узел может иметь только одного предка. Между главным и подчинёнными объектами устанавливается связь «Один ко многим».

Поиск данных в иерархической модели всегда начинается с корня, затем производится спуск с одного уровня на другой, пока не будет достигнут искомый уровень.

Иерархическая структура должна удовлетворять условиям:

  1. Существует только один корневой узел, которому соответствует корневая запись.

  2. Каждый узел может быть связан с произвольным числом подчинённых узлов

  3. Доступ к подчинённым узлам возможен только через корневой узел.

Достоинства иерархической модели:

  1. Простота описания иерархических структур.

  2. Быстрое выполнение запросов.

Недостатки иерархической модели:

  1. Часто содержит избыточные данные.

  2. Не всегда удобно начинать поиск нужных данных с корня, но других способов перемещения по базе не существует.

Сетевая модель состоит из набора записей и набора связей между этими записями, то есть любой объект может быть главным и подчинённым. Каждый объект может выступать в роли владельца и в роли члена набора. Каждый объект может иметь множественные связи с объектами старших уровней.

Сетевая модель — это граф, с записями в виде узлов графов и наборами связей в виде его рёбер. Это графы произвольной структуры, которые отражают взаимосвязи между данными в этой модели.

Достоинства сетевой модели:

  1. Эффективное использование затрат памяти при манипулировании с данными.

  2. Из-за различных связей можно использовать для решения многих задач.

Недостатки сетевой модели:

  1. Сложность физической реализации.

  2. Ослаблен контроль целостности связей между записей.

В реляционной модели данных объекты и взаимосвязи между ними представляются в виде таблиц. Каждая таблица представляет один объект и состоит из строк (записи) и столбцов (поля). Таблица отражает объект реального мира — сущность. Каждая запись таблицы отражает один конкретный экземпляр объекта — экземпляр сущности.

Таблица представляет двумерный массив и обладает следующими свойствами:

  1. Каждый элемент таблицы соответствует одному элементу данных.

  2. Все столбцы в таблице — однородные, то есть все элементы в столбце имеют одинаковый тип и размер.

  3. Каждый столбец имеет уникальное имя.

  4. Таблица не может иметь менее одного столбца.

  5. Столбцы, расположенные в таблице в соответствии с порядком следования их имён при её создании.

  6. Порядок следования строк в таблице может быть произвольным. Количество строк не ограничено.

  7. Строки не имеют имён.

  8. Не может быть двух одинаковых строк.

В каждой таблице реляционной модели должен быть столбец или совокупность столбцов, значения которых однозначно идентифицируют каждую строку таблицы. Этот столбец или их совокупность называется первичным ключом таблицы . (рис 2.2)

В таблице не должно быть строк, имеющих одно и то же значение первичного ключа. Если таблица удовлетворяет этому требованию, то она называется отношением (relation). В реля ционной модели все таблицы должны быть преобразованы в отношения. Отношения связаны между собой, связи поддерживаются внешними ключами.

Внешний ключ — столбец или совокупность столбцов, значение которого однозначно характеризует отношения первичного ключа другого отношения.

Помимо таблиц в БД могут храниться другие объекты: экранные формы, шаблоны отчётов и прикладные программы.

Достоинства реляционной модели: