Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 4 информатике.doc
Скачиваний:
33
Добавлен:
29.03.2015
Размер:
253.44 Кб
Скачать

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

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

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

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

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

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

Удаленный доступ – это обращение к базе данных, которая хранится на одном из компьютеров, входящих в компьютерную сеть. Удаленный доступ может быть выполнен по принципу файл-сервер или клиент-сервер.

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

Архитектура клиент-сервер предполагает, что сервер, выделенный для хранения централизованной базы данных, дополнительно производит обработку клиентских запросов. Клиенты получают по сети уже обработанные данные. Учитывая широкое распространение баз данных в самых различных областях, в последнее время архитектура клиент-сервер применяется и на одиночных вычислительных системах. В этом случае клиент – программа, которой понадобились данные из базы данных, посылает запрос серверу – программе, управляющей ведением базы данных, на специальном универсальном языке запросов. Сервер пересылает программе данные, являющиеся результатом поиска в базе данных по ее запросу. Этот способ удобен тем, что программа-клиент не обязана содержать все функции поддержания и ведения базы данных, этим занимается сервер. В результате упрощается написание программ-клиентов. Кроме того, к серверу может обращаться любое количество клиентов.

Модели данных.

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

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

Важнейшим понятием реляционных моделей данных является сущность. Сущность – это объект любой природы, данные о котором хранятся в базе данных. Данные о сущности хранятся в двумерных таблицах, которые называются реляционными.

Каждая реляционная таблица должна обладать следующими свойствами:

- один элемент таблицы – один элемент данных;

- все столбцы таблицы содержат однородные по типу данные (целочисленные, числовые, текстовые и так далее);

- каждый столбец имеет уникальное имя;

- число столбцов задается при создании таблицы;

- порядок записей отношений может быть произвольным;

- записи не должны повторяться;

- количество записей отношений не ограничено.

Формальное построение таблиц связано с фундаментальным понятием отношение (термин реляционная исходит от английского слова relation– отношение).

Для заданных произвольных конечных множеств М1, М2, …, МNмножество всевозможных наборов вида (μ1,μ2, …μN), где μ1ЄМ1, μ2ЄМ2, …, μNЄМNназывают их декартовым произведением М1×М2×…×МN. ОтношениемR, определенным на множествах М1, М2, …, МN, называется подмножество декартова произведения М1×М2×…×МN. При этом множества М1, М2, …, МNназываются доменами отношения, а элементы декартова произведения – кортежами отношения. ЧислоNопределяет степень отношения, количество кортежей – его мощность.

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

Рассмотрим пример реляционной таблицы:

Первичным ключом отношения называется поле или группа полей, однозначно определяющие запись. На примере рисунка (таблицы) первичным ключом может быть поле «ФАМИЛИЯ», если во всем списке нет однофамильцев – это будет простой ключ. Если есть однофамильцы, то совокупность полей – «ФАМИЛИЯ, ИМЯ, ОЧЕСТВО» – создадут составной первичный ключ. На практике обычно в качестве ключевого выбирают поле, в котором совпадения заведомо исключены.

Для рассматриваемого примера таким полем может служить, например, номер зачетной книжки студента.

Первичный ключ должен обладать следующими свойствами:

- уникальность – в таблице может быть назначен только один первичный ключ, у составного ключа поля могут повторяться, но не все одновременно;

- неизбыточность – не должно быть полей, которые, будучи удаленными из первичного ключа, не нарушает его уникальность;

- в состав первичного ключа не должны входить поля типа, комментарий, графический и так далее.

Чтобы избежать повторяющихся записей, приходят к связыванию таблиц. Например, если в отношении «СТУДЕНТ» надо описать вуз, в котором он обучается, то, на первый взгляд, можно было бы включить в отношение следующие поля «СТУДЕНТ (ФАМИЛИЯ, ИМЯ, ОЧЕСТВО, ФАКУЛЬТЕТ, КУРС, ГРУППА, НАЗВАНИЕ ВУЗА, АДРЕС ВУЗА». Но при заполнении такой таблицы для каждого студента придется указывать довольно длинное наименование ВУЗА и его адрес, что неудобно. Более того, любая незначительная ошибка в процессе ввода этих данных приведет к нарушению непротиворечивости базы данных. Например, ошибка при вводе адреса ВУЗА приведет к тому, что в базе данных появятся два вуза с одинаковым наименованием и разными адресами. Поступают в данном случае следующим образом: в отношении «СТУДЕНТ» вводят поле «КОД ВУЗА» (целое число) и добавляют еще одно отношение «ВУЗ» (код вуза, его наименование и адрес). «СТУДЕНТ» и «ВУЗ» при этом будут связаны по полю «КОД ВУЗА».

При работе с такими таблицами повторяться могут только данные в поле «КОД ВУЗА», а все необходимые сведения о ВУЗЕ можно взять из отношения «ВУЗ». Ввод в поле «КОД ВУЗА» целого числа, вместо длинного наименования и адреса, принесет гораздо меньше ошибок. В отношении «ВУЗ» поле «КОД ВУЗА» будет первичным ключом, а в отношении «СТУДЕНТ» поле «КОД ВУЗА» будет внешним ключом.

Для связи реляционных таблиц необходимо ввести в обе таблицы одинаковые по типу поля, по которым определится связь между записями обеих таблиц. Связи бывают нескольких типов «один к одному», «один ко многим», «многие ко многим». В рассмотренном примере была установлена связь «один ко многим», то есть одной записи в таблице «ВУЗ» соответствуют многие записи в таблице «СТУДЕНТ».

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]