78220

Общая характеристика банков данных

Лекция

Информатика, кибернетика и программирование

Взаимосвязь реального мира информации и данных. Рассмотрим 3 области с которыми мы имеем дело когда проектируем базу данных: Реальный мир и его явление. Представление этой информаций посредством данных.

Русский

2015-02-07

619.5 KB

3 чел.

PAGE   \* MERGEFORMAT 10

Тема 2

Общая характеристика банков данных

2.1. Взаимосвязь реального мира, информации и данных.

Рассмотрим 3 области, с которыми мы имеем дело, когда проектируем базу данных:

  1.  Реальный мир и его явление.
  2.  Информацию об этих явлениях.
  3.  Представление этой информаций посредством данных.

  1.  Реальный мир. Он состоит из объектов, т.е. элементов реального мира, информацию о которых мы сохраняем. Объекты имеют различных свойства.

Например. Студент является объектом реального мира. Как объект он обладает следующими свойствами:

  1.  Ф.И.О.
  2.  № зачетной книжки
  3.  Дата рождения
  4.  Домашний адрес и т.д.

Совокупность реальных объектов называется набором объектов.

  1.  Область информации о явлениях реального мира.

В этой области мы имеем дело со сведениями об объектах.

In

form

ation - то, что в форме

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

  1.  Область данных.

В области данных информация об объектах фиксируется в виде, пригодном для обработки, хранения и передачи.

В этой области атрибуты – называются элементами данных, и значения атрибутов представляют значениями элементов данных.

Графически, эти перечисленные области могут быть представлены следующим образом.

Область данных делится на данные:

  1.  в представлении прикладного программного листа;
  2.  общую логическую структуру данных или концептуальную модель данных;
  3.  и физическое представление данных.

Теперь рассмотрим таблицу «Штатное расписание»

Таблица 2.

Вся таблица → набор объектов → 0

                7              1              8

 

Номер

служащего

Ф.И.О. служащего

Пол

Должность

Дата

рождения

53730

Иванов С.И.

М

Инженер-программист

20.12.53

28719

Петрова И.В.

Ж

Бухгалтер

12.01.46

36421

Сидоров Н.В.

М

Монтажник

01.03.58

18541

Николаев В.П.

М

Консультант

09.05.66

2


 5 4

6 3

Рассмотрим наименования составляющих таблицы:

Вся таблица №2 – это набор объектов реального мира.

В 2 области информации – это набор записей о объектах.

Объект реального мира – это конкретное лицо штатного расписания со своими свойствами.

В области информации – это запись об объекте имеющего определенные атрибуты (1) и конкретные значения этих атрибутов (2).

В 3 области значения атрибутов отображаются в виде значений элементов данных (3). Элементы данных формируются в группы. Группа элементов столбца имеет наименование домен (4). Полная группа элементов строки объединяется в запись (сегмент, кортеж) (5).

Идентификатор объекта (6)

Администратору данных, необходимо имея возможность обращаться к записи, связанной с данным объектом. С этой целью, один из элементов данных обычно определяется как в качестве идентификатора объекта. Идентификатор объекта «служащий» может быть табельный номер служащего.

Идентификатор объекта олжен быть уникальным. Никакой другой объект не может иметь то же значение данного элемента данных.

Иногда требуется более одного элемента данных для идентификации записи.

Например. Для идентификации данных о рейсах самолетов необходимы:

номер рейса и дата.

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

Первичный и вторичный ключи (7, 8).

Идентификатор записи рассматривается как ключ записи.

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

Номер_рейса+дата

Например,

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

Кандидатный ключ – элемент данных, который может быть первичный ключом.

ЭВМ может использовать ключ, который идентифицирует не уникальную запись, а все записи, имеющие определенное свойство. Такой ключ называется вторичным или регулярным ключом.

Например, значение атрибута ПОЛ имеющего конкретные значение – М (мужчина) может использоваться для идентификации всех объектов имеющих это значение атрибута.

2.2. Концептуальная модель данных.

Наряду с термином концептуальная модель данных используются синонимы:

  •  концептуальная схема;
  •  общая логическая структура базы данных;
  •  схема.

2.2.1. Типы записей и типы элементов данных.

Рассмотрим таблицу 2 в следующем виде:

Т.е, мы выделим абстрактную часть таблицы – обобщенную запись.

Ее мы будем называть в дальнейшем типом записи → Ei , а конкретные значения записей – экземплярами записи.

Теперь рассмотрим элемент данных в следующем виде:

Обобщенный элемент данных – это абстракция элемента данных. В дальнейшем мы будем ее называть тип элемента данныхeij , а конкретные значения элемента данных – экземплярами элемента данных.  

2.2.2. Типы связей – Pм.

Связи будем рассматривать между:

  •  типами записей – связи между таблицами базы данных
  •  типами элементов данных – связи внутри таблицы между атрибутами.

Различают 2 типа связи:

F-связи или функциональные связи;

MV-связи или множественные связи.

Если А и В являются типами записей или типами элементов данных, то при F-связи между А и В, в каждый момент времени каждому значению элемента А соответствует одно и только одно значение связанного с ним элемента В.

Условные обозначение:

При MV-связях между А и В, каждому элементу А соответствует 0,1 или М значений элемента В.

Условное обозначение:

Два типа связей дают четыре разновидности связей или отношений:

1:1

1:М

М:1

М:М

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

Отношение один к одному.

Две таблицы находятся в отношении один к одному, когда записи в первичной таблице – А соответствует единственная запись во вторичной таблице В.

Отношение один ко многим.

Таблица, которая находится со стороны «1» называют родительской или первичной или главной таблицей. Таблица, которая находится на стороне «М» называют дочерней или вторичной или оперативной. При соотношении 1:М каждой записи в родительской таблице может не соответствовать ни одна запись дочерней таблицы, либо одна, две и более записей дочерней таблицы.

Отношение многие ко многим.

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

Пример: произведение написано несколькими авторами и редактировано несколькими редакторами.

Ссылочная целостность данных.

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

Также условия работы базы данных определяют ссылочную целостность данных.

Определение отношений между таблицами.

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

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

  1.  Cascade – при изменении значений полей первичного ключа в родительской таблице автоматически осуществляется каскадные изменения всех соответствующих значений в дочерней таблице.
    1.  Restrict – не позволяется изменяться значение полей первичного ключа в родительской таблице, если в дочерней таблице имеется хотя бы одна запись, содержащая ссылку на изменяемую запись.
    2.  Ignore – позволяет изменять значение полей первичного ключа в родительской таблице независимо от существования связанных записей в дочерней таблице.

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

  1.  Cascade – при удалении записи в родительской таблице автоматически осуществляется каскадное удаление всех записей с дочерней таблицы связанных с удаляемой записью.
  2.  Restrict – не позволяется удалять записи в родительской таблице, если в дочерней таблице имеется хотя бы одна запись, содержащая ссылку на удаляемую запись.
  3.  Ignore - позволяет удалять записи в родительской таблице независимо от существования связанных записей в дочерней таблице.

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

  1.  Restrict – не позволяет вводить запись в дочернюю таблицу, если значение индексного выражения дочерней таблицы не соответствует одной из записей в родительской таблице.
  2.  Ignore – при вводе данных в дочернюю таблицу не анализирует значение индексного выражения.

2.2.3. Концептуальная модель данных и представления.

В многопользовательских приложениях, размещаемых в среде клиент/сервер важное значение приобретает логическая схема данных, используемая определенным пользователем. В этом случае, в общей логической схеме данных или КМД выделяются подсхемы или представления, которые используют:

1. некоторый набор элементов данных из общей схемы;

2. ограниченный объем записей в заданном наборе элементов данных.

То есть:

Этот механизм поддерживает Visual FoxPro.

2.3. Архитектура системы баз данных.

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

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

Проблемы этого этапа: если 1) организация данных или 2) запоминающие устройства менялись, то необходимо было модифицировать программы.

Пример 1. Нельзя было простым образом добавить новое поле в логической записи. Для этого нужно было написать дополнительную программу.

Пример 2. Если изменился тип устройства внешней памяти, то необходимо менять программу в части общения с этим новым устройством, т.е. на первых этапах отсутствовала независимость данных 1) от физического представления и 2) от логической структуры данных, т.е. отсутствовала логическая и физическая независимость данных.

  1.  Трех уровневая архитектура базы данных.

Различие между логическим и физическим представлениями данных было официально признано в 1978 году, когда комитет ANSI/SPARC предложил обобщенную структуру систем баз данных, которая состоит из 3-х уровней:

  1.  концептуального;
  2.  внешнего;
  3.  внутреннего.

Концептуальный уровень – это концептуальная модель данных.

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

Внутренний уровень – обеспечивается физический взгляд на базу данных: дисководы, физические адреса, индексы, указатели. Пользователи не касаются этого уровня.

Реализация этих 3-х уровней требует, чтобы СУБД преобразовывала или переводила с одного уровня на другой. Цена перевода состоит в большой системной задержке. Выгодой же является независимость логического и физического представления данных.

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

Логическая независимость данных.

У данных тоже есть абстрактная часть и конкретное содержание. Например:

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

Пример. Элементы управления и терминов в VFP является независимыми друг от друга. С элементами управления работает любая форма с таблицей.

  1.  Система управления базами данных (СУБД).
    1.  

2.4.1. Функции СУБД. Взаимодействие СУБД со средой окружения.

Определение: СУБД – это совокупность языковых и программных средств, предназначенных для создания, ведения и использования базы данных.

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

Рассмотрим последовательность основных действий, реализуемых СУБД.

  1.  — Пользовательское приложение А выдает запрос на чтение записи системе управления базами данных. приложение сообщает код пользователя, затребовавшего этот тип данных, и передает в запросе значение ключа записи
  2.  — СУБД обращаясь к представления А. используемой пользовательским приложением А, осуществляет в ней поиск описания данных. на которые выдан запрос.
  3.  — СУБД, обращаясь к концептуальной схеме, определяет к каким типам записей относятся данные, на которые выдан запрос. Поясним эту связь: физическая организация базы данных является отображением именно концептуальной схемы.

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

  1.  — СУБД просматривает описание физической организации базы данных и определяет, какую физическую запись требуется считать.
  2.  — СУБД выдает ОС команду чтения требуемой записи
  3.  — ОС взаимодействует с физической памятью, в которой хранятся данные.
  4.  — Запрошенные данные передаются из внешней памяти в системные буферы
  5.  — СУБД выделяет ту логическую запись, которая запрошена прикладной программой
  6.  — СУБД передает данные из системных буферов в рабочую область прикладной программы А.
  7.  — прикладная программа обрабатывает данные, помещенные в ее рабочую область.

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

Сформулируем, какие функции должна выполнять современная СУБД.

  1.  Определение данных.

СУБД должна допускать определения данных, а именно:

  •  Внешнюю схему
    •  Концептуальную схему
    •  Внутреннюю схему
  1.  Обработка данных.

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

  1.  Безопасность и целостность данных

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

  1.  Восстановление данных и дублирование

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

  1.  Словарь данных

СУБД должна обеспечить функцию словаря данных.

  1.  Производительность

СУБД должна выполнять все указанные функции с максимальной возможной эффективностью.

2.4.2. Администратор базы данных.

Администратор данных (АД).- это человек, отвечающий за стратегию и политику принятия решений, связанных с данными предприятия.

Администратор базы данных (АБД). – это человек, обеспечивающий необходимую техническую поддержку выполнения этих решений.

Функции АБД:

  1.  Определение концептуальной схемы
  2.  Определение внутренней схемы
  3.  Взаимодействие с пользователем
  4.  Определение правил безопасности и целостности
  5.  Определение процедур резервного копирования и восстановления
  6.  Управление производительностью и реагирование на изменяющиеся требования.

Рассмотрим перечисленные функции боле подробно.

  1.  Определение концептуальной схемы

АД определяет, какие именно данные необходимо сохранять в базе данных, т.е. определяем объект, в которых заинтересовано предприятие. Этот процесс обычно называют логическим (или концептуальным проектированием базы данных). После этого АБД создает концептуальную схему или модель данных. на практике АД и АБД могут быть одним лицом.

  1.  Определение внутренней схемы

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

  1.  Взаимодействие с пользователем

Индивидуальный уровень пользователя обеспечивается путем разработки внешнего представления, которое является проекцией концептуальной модели данных. АБД должен хорошо представлять весь спектр деятельности, который необходимо реализовывать в виде пользовательского интерфейса на клиентской машине.

  1.  Определение правил безопасности и целостности

АБД обязан спроектировать системы защиты данных от несанкционированного доступа и повреждений. АБД обязан обеспечить защиту базы данных от:

  •  Кражи информации;
    •  Несанкционированного обновления данных;
    •  Несанкционированного уничтожения данных.

Условия целостности – так называются ограничения, наложенные на определенное множество атрибутов базы данных. Ограничения вводятся для того, что обеспечить минимизацию количества ошибок ввода. Обычно используются возможности СУБД на создание ограничений:

  •  Установка типов данных, которые можно ввести
  •  Верхние и нижние границы атрибута (пример, ввод даты)

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

Транзакция – это блок программы, выполнение которого сохраняет непротиворечивость базы данных. если база данных непротиворечива до выполнения транзакции, то она должна быть остаться непротиворечивой и после ее выполнения. Для этого, чтобы обеспечить выполнение этого условия транзакция должна быть неделимой. Это означает что, либо все действия, связанные с транзакцией выполняются до  конца, либо ни одно из них не выполняется. Например, транзакция записи покупки клиентом товара на сумму в 500 $ включает следующие действия:

  1.  изменение записи клиента: уменьшение суммы счета клиента на 500 $;
  2.  изменение кассовой записи магазина: увеличение сумы на 500 $.

Если какая-либо из 2-х операций не выполняется, то никаких изменений в базу данных не вносятся. Такая транзакция называется прерваннойоткат транзакций.

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

Это значит, что кроме основного файла данных, например R1 , создается промежуточный файл, имеющий те же атрибуты, что и основной файл – ПрR1 – протокольный файл. В него мы пишем все изменения базы. Если система дает отказ до завершения изменений, то информация из ПрR1 не переносятся в R1. если отказа нет, то информация из ПрR1 переносится в R1. происходит фиксация транзакций или коммит.

  1.  Определение процедур резервного копирования и восстановления

АБД должен определить и реализовать подходящую схему восстановления, использующую, например периодическую выгрузку (или «дампинг») базы данных на устройство резервного копирования и процедуры загружающие базу данных с последнего дампа.

  1.  Управление производительностью и реагирование на изменяющиеся требования.

В ходе работы базы данных возникает необходимость в ее реорганизации, т.е. перенастройке системы. АБД должен обеспечить реорганизацию базы без потери производительности системы.

Приведенный список не является исчерпывающим. Он намечает диапазон обязанностей АБД.

  1.  Структура банка данных.
    1.  

Структура банка данных представим в виде схемы.


 

А также другие работы, которые могут Вас заинтересовать

9000. Философия жизни. О нашем поведении относительно миропорядка и судьбы 162 KB
  Философия жизни. Основная часть. А. Шопенгауэр О том, что есть индивид. О нашем поведении относительно миропорядка и судьбы. Ф. Ницше Смерть Бога. Нигилизм. Низложение христианства. Жизнь и воля к власти. Вечное возвращение. сверхчеловек...
9001. Философия экзистенциализма. Ж.П. Сартр. Экзистенциализм - это гуманизм 245.5 KB
  Философия экзистенциализма. Основная часть. Ж.П. Сартр. Экзистенциализм - это гуманизм. К. Ясперс. Человек. М. Бубер. Я и Оно. М. Хайдеггер. Отрешенность. Приложение. Основная часть. Экзистенциализм (от позднелат. Existentia - существ...
9002. Философия и мировоззрение. Специфика философии 39 KB
  Философия и мировоззрение. Специфика философии Философия - учение о мире в целом, об общих принципах и закономерностях его бытия и познания. Органическое соединение в философии двух начал - научно-теоретического и практически-духовного...
9003. Предмет, структура и функции философии, всеобщие свойства и связи 43.5 KB
  Предмет, структура и функции философии Предметом философии являются всеобщие свойства и связи (отношения) действительности - природы, общества, человека, отношения объективной действительности и субъективного мира, материального и идеального, б...
9004. Философия Древнего Востока. Проблема совершенного человека 38.5 KB
  Философия Древнего Востока. Проблема совершенного человека Буддизм - религиозно-философское учение, возникшее в древней Индии в VI – V вв. до н. э. и превратившееся в ходе его развития в одну из трех - наряду с христианством и исламом...
9005. Ранняя греческая философия. Древнегреческая философия 40.5 KB
  Ранняя греческая философия Древнегреческая философия представляет собой совокупность учений, развившихся с VI в. до н.э. по VI в. н.э. (от формирования архаических полисов на ионийском и италийском побережьях до расцвета демократических Афин и после...
9006. Философия Платона. Теория идей, познание, человек и государство у Платона 42.5 KB
  Философия Платона. Теория идей, познание, человек и государство у Платона После казни Сократа один из его лучших учеников Аристокл, получивший за свои широкие плечи прозвище Платон («широкоплечий»), надолго покинул Афины. Тяжело переживая смерть учи...
9007. Философия Аристотеля. Бытие, сущность, причинность, душа, материя и форма 44 KB
  Философия Аристотеля. Бытие, сущность, причинность, душа, материя и форма Аристотель (384 – 322 гг. до н. э.) - древнегреческий философ, энциклопедист, основоположник науки логики и ряда отраслей специального знания. Образование Аристотель...
9008. Античные школы стоиков, скептиков и эпикурейцев 28.5 KB
  Античные школы стоиков, скептиков и эпикурейцев Философия в период эллинизма частично изменила содержание и свои основные цели. Эти изменения были обусловлены социально-экономическими и политическими процессами в развивавшемся эллинистическом общест...