Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Системы управления базами данных. Управление данными во внешней памяти; управление буферами оперативной памяти



СУБД, как правило, разделяют по используемой модели данных (как и базы данных) на следующие типы: иерархические, сетевые, реляционные и объектно-ориентированные.
По характеру использования СУБД делят на персональные (СУБДП) и многопользовательские (СУБД М).
К персональным СУБД относятся VisualFoxPro, Paradox, Clipper, dBase, Access и др. К многопользовательским СУБД относятся, например, СУБД Oracle и lnformix. Многопользовательские СУБД включают в себя сервер БД и клиентскую часть, работают в неоднородной вычислительной среде — допускаются разные типы ЭВМ и различные операционные системы. Поэтому на базе СУБДМ можно создать информационную систему, функционирующую по технологии клиент-сервер. Универсальность многопользовательских СУБД отражается соответственно на высокой цене и компьютерных ресурсах, требуемых для их поддержки.
СУБДП представляет собой совокупность языковых и программных средств, предназначенных для создания, ведения и использования БД.
Персональные СУБД обеспечивают возможность создания персональных БД и недорогих приложений, работающих с ними, и при необходимости создания приложений, работающих с сервером БД.
Управляющим компонентом многих СУБД является ядро, выполняющее следующие функции:

управление данными во внешней памяти; управление буферами оперативной памяти (рабочими областями, в которые осуществляется подкачка данных из базы для повышения скорости работы);

управление транзакциями.

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

язык описания данных — высокоуровневый непроцедурный язык декларативного типа, предназначенный для описания логической структуры данных;

язык манипулирования данными — командный язык СУБД, обеспечивающий выпол-нение основных операций по работе с данными — ввод, модификацию и выборку данных по запросам;

структурированный язык запросов (Structured Query Language, SQL) — обеспечи-вает манипулирование данными и определение схемы реляционной БДП, является стандартным средством доступа к серверу БД.

Для обработки команд пользователя или операторов программ в СУБДП использу-ются интерпретаторы команд (операторов) и компиляторы. С помощью компилято-ров в ряде СУБДП можно получать исполняемые автономно приложения — ехе- программы.
Обеспечение целостности БД — необходимое условие успешного функционирования БД. Целостность БД — свойство БД, означающее, что база данных содержит полную и непротиворечивую информацию, необходимую и достаточную для корректного функ-ционирования приложений. Для обеспечения целостности БД накладывают ограниче-ния целостности в виде некоторых условий, которым должны удовлетворять хранимые в базе данные. Примером таких условий может служить ограничение диапазонов возмож-ных значений атрибутов объектов, сведения о которых хранятся в БД, или отсутствие повторяющихся записей в таблицах реляционных БД.
Обеспечение безопасности достигается в СУБД шифрованием прикладных программ, дан-ных, защиты паролем, поддержкой уровней доступа к базе данных, к отдельной таблице.
Расширение возможностей пользователя СУБДП достигается за счет подключения систем построения графиков и диаграмм, а также подключения модулей, написанных на языках Си или Ассемблера.
Поддержка функционирования в сети обеспечивается:

средствами управления доступом пользователей к совместно используемым дан-ным, т. е. средствами блокировки файлов (таблиц), записей, полей, которые в раз-ной степени реализованы в разных СУБДП;

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

Поддержка взаимодействия с Windows-приложениями позволяет СУБДП внедрять в отчет сведения, хранящиеся в файлах, созданных с помощью других приложений, например, в документе Word или в рабочей книге Excel, включая графику и звук. Для этого в СУБДП поддерживаются механизмы, разработанные для среды Windows, такие как: DDE (Dynamic Data Exchange — динамический обмен данными) и OLE (Object Linking and Embedding — связывание и внедрение объектов).

еляционная модель данных

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

Элементы реляционной модели

Реляционная модель данных (РМД) некоторой предметной области представляет собой набор отношений, изменяющихся во времени. При создании информационной системы совокупность отношений позволяет хранить данные об объектах предметной области и моделировать связи между ними. Элементы РМД и формы их представления приведены в табл. 1.

Таблица 1

Элементы реляционной модели

Элемент реляционной модели Форма представления
Отношение Таблица
Схема отношения Строка заголовков таблицы
Кортеж Строка таблицы
Сущность Описание свойств объекта
Атрибут Заголовок столбца таблицы
Первичный ключ Один или несколько атрибутов
Тип данных Тип значений элементов таблицы

Важнейшим является понятие отношения, которое представляет собой двумерную таблицу, содержащую некоторые данные.
Сущность есть объект любой природы, данные о котором хранятся в базе данных. Данные о сущности хранятся в отношении.
Атрибуты представляют собой свойства, характеризующие сущность.
Математически отношение можно описать следующим образом. Пусть даны n множеств D1, D2, D3, ... Dn, тогда отношение R есть множество упорядоченных кортежей < d1, d2, d3, ... dn>, где dk Î Dk, а D1, D2, D3, ... Dn — домены отношения R.
На рис. 2 приведен пример представления отношения СОТРУДНИК.
Множество всех значений каждого атрибута отношения образует домен. Отношение СОТРУДНИК включает 4 домена. Домен 1 содержит фамилии всех сотрудников, домен 2 — номера всех отделов фирмы, домен 3 — название всех должностей, домен 4 — даты
рождения всех сотрудников. Каждый домен образует значения одного типа, например, числовые или символьные.
Отношение СОТРУДНИК содержит 3 кортежа. Кортеж рассматриваемого отношения состоит из 4-х элементов, каждый из которых выбирается из соответствующего домена. Каждому кортежу соответствует строка таблицы.
Схема отношения представляет собой список имен атрибутов. Например, для приведенного примера схема отношения имеет вид СОТРУДНИК(ФИО, Отдел, Должность, Д_Рождения).

В реляционных базах данных (БД самого распространенного типа) данные хранятся в таблицах. На первый взгляд, эти таблицы подобны электронным таблицам Excel, поскольку они тоже состоят из строк и столбцов. Столбцы называются полями (fields) и содержат данные определенного типа. Строки именуются записями (records). В одной строке хранится один набор данных, описывающих определенный объект. Например, если в таблице хранятся данные о клиентах, она может содержать поля для имени, адреса, города, почтового индекса, номера телефона и т.д. Для каждого клиента будет создана отдельная запись.

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

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

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

Для вывода в отчеты определенных данных применяются запросы (queries). Использование запросов похоже на процесс поиска, – задаются конкретные критерии отбора, на основе которых база данных формирует и возвращает отчет. Например, если база данных содержит информацию о телефонных номерах, то можно запросить вывести в отчете только те телефоны, которые относятся к конкретному адресу, или только те, которые относятся к конкретной фамилии, или начинающиеся с определенных цифр и т.п. Запросы записываются на языке SQL (Structured Query Language — язык структурированных запросов).

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

Понять принцип работы связей проще всего на примере. Пусть для хранения информации о продажах компании применяется электронная таблица Excel. Со временем в таблице накапливаются сотни записей. Многие из них соответствуют покупкам, совершенным одними и теми же клиентами. Проблема состоит в том, что при совершении повторной покупки информация об адресе клиента снова сохраняется. Со временем некоторые клиенты переезжают. Их новые адреса вводятся в электронную таблицу, но во всех прошлых записях остается прежний адрес. Существует вероятность, что рано или поздно кто-то случайно использует для отправки товара неверный адрес. Обновление адресов становится довольно непростой задачей из-за их невероятного количества. В Excel нет средств, позволяющих устранить эту проблему.

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

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

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

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

Модель реляционной СУБД была разработана в 70-80 годы XX века. К реляционным СУБД относится целый ряд программных продуктов, среди нихMicrosoft Access из пакета Microsoft Office, MySQL или более мощные системы промышленного уровня, таких как Microsoft SQL Server или Oracle.

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

Любой из нас, начиная с раннего детства, многократно сталкивался с «базами данных». Это — всевозможные спра­вочники (например, телефонный), энциклопедии и т. п. За­писная книжка — это тоже «база данных», которая есть у каждого из нас. Базы данных представляют собой информационные модели, содержащие данные об объектах и их свойствах. Базы данных хранят информацию о группах объектов с одинаковым набором свойств. Например, база данных «Записная книжка» хранит информацию о людях, каждый из которых имеет фамилию, имя, телефон и так далее. Библиотечный каталог хранит информацию о книгах, каждая из которых имеет название, автора, год издания и так далее. Информация в базах данных хранится в упорядоченном виде. Так, в записной книжке все записи упорядочены по - алфавиту, а в библиотечном каталоге - либо по алфавиту – алфавитный каталог), либо по области знания (предметный каталог).  
      База данных (БД) - это информационная модель, позволяющая в упорядоченном виде хранить данные о группе объектов, обладающих одинаковым набором свойств.  

 

Существует несколько различных структур информационных моделей и соответственно различных типов баз данных: табличная, сетевая, иерархическая (см. модели).

 

Иерархические базы данных

 

Иерархические базы данных графически могут быть представлены как перевернутое дерево, состоящее из объектов различных уровней. Верхний уровень ( корень дерева ) занимает один объект, второй — объекты второго уровня и так далее.

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

 

Например: иерархической базой данных является Каталог папок Windows, с которым можно работать, запустив Проводник. Верхний уровень занимает папка Рабочий стол. На втором уровне находятся папки Мой компьютер, Мои документы, Сетевое окружение и Корзина, которые являются потомками папки Рабочий стол, а между собой является близнецами. В свою очередь, папка Мой компьютер является предком по отношению к папкам третьего уровня - папкам дисков (Диск 3, 5(А: ), (С: ), (D: ), (E: ), (F: )) и системным папкам (Принтеры, Панель управления и др.)

 

Сетевые базы данных

 

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

Сетевой базой данных фактически является Всемирная пауmuнa глобальной компьютерной сети Интернет. Гиперссылки связывают между собой сотни миллионов документов в единую распределенную сетевую базу данных.

 

Табличные базы данных

 

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

Рассмотрим, например, базу данных: Телефонный справочник

Фамилия Адрес Телефон
Иванов В.В. Серова, 5 12
Петров И.И. Седова, 3-21
Сидоров С.С. Мира, 33-17

 

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

 

  Поле базы данных - это столбец таблицы, содержащий значения определенного свойства  

 

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

 

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

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

  Ключевое поле - это поле, значение которого однозначно определяет запись в таблице.  

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

Телефонный справочник

Имена полей Фамилия Адрес Телефон
Запись Иванов В.В. Серова, 5 12
Запись Петров И.И. Седова, 3-21
Запись Сидоров С.С. Мира, 33-17
  Ключевое поле Поле Поле Поле

Тип поля определяется типом данных, которые оно содержит. Поля могут содержать данные следующих основных типов:

· счетчик — целые числа, которые задаются автоматически при вводе записей. Эти числа не могут быть изменены пользователем;

· текстовый — тексты, содержащие до 255 символов;

· числовой — числа;

· дата/время — дата или время;

· денежный — числа в денежном формате;

· логический — значения Истина (Да) или Ложь (Нет);

· поле объекта OLE - изображение или рисунок

· гиперссылка — ссылки на информационный ресурс в Интернете (например, Web-сайт).

 

Поле каждого типа имеет свой набор свойств. Наиболее важными свойствами полей являются:

· размер поля - определяет максимальную длину текстового или числового поля;

· формат поля - устанавливает формат данных;

· обязательное поле - указывает на то, что данное поле обязательно надо заполнить

 

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


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-05-28; Просмотров: 979; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.034 с.)
Главная | Случайная страница | Обратная связь