Особенности использования БД

ЛЕКЦИЯ

Тема: Базы данных

План:

1. Организация системы управления БД

2. Обобщённая технология работы с БД

3. Выбор СУБД для создания системы автоматизации

Организация системы управления БД

 

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

 

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

 

Один из признаков, по которому можно классифициро­вать базы данных, — характер хранимой информации. Фак­тографические БДсодержат данные, представляемые в краткой форме и строго фиксированных форматах. Такие БД являются аналогами бумажных картотек, например, библиотечного каталога или каталога видеотеки. Другой тип баз данных — документальные БД. Здесь аналогом яв­ляются архивы документов, например, архив судебных мл, архив исторических документов и пр. В дальнейшем мы бу­дем рассматривать лишь фактографические БД.

 

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

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

 

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

 

Схема 1.

 

Особенности использования БД

Ø Данные в БД создаются и хранятся как единое целое для решения всех задач предметной области, то есть отпадает необходимость дублирования данных (экономия памяти компьютера);

Ø каждая прикладная программа выбирает из БД данные для решения только своей задачи;

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

 

Схема 2. Основные возможности СУБД

 

 

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

 

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

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

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

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

 

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

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

Ø иерархическая,

Ø сетевая

Ø реляционная.

 

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

Это интересно

Одной из наиболее популярных иерархических СУБД была Information Management System (IMS) фирмы IBM, появившаяся в 1968 г. Она использовалась на больших ЭВМ компании IBM.

 

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

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

Рис.1. Иерархическая модель данных

 

В сетевой моделиданных каждый элемент может иметь более одного порождающего элемента, а графическое представление модели очень напоминает сеть. Она допускает усложнение «дерева» без ограничения количества связей, входящих в его вершину!

Рис. 2. Сетевая модель данных

Это интересно

В 1971 г. на конференции по языкам систем данных был опубликован официальный стандарт сетевых баз данных, который известен как модель CODASYL. В 70-х гг. независимые производители программного обеспечения реализовали сетевую модель в таких программных продуктах, как IDMS компании Cullinet, Total компании Cincom и СУБД Adabas, которые были в свое время очень популярны.

 

К достоинствам сетевых баз данных можно отнести гибкость, стандартизацию и быстродействие.

Но и иерархические, и сетевые базы данных были очень жесткими, наборы отношений и структуру записей приходилось задавать наперед, а изменение структуры базы данных обычно означало перестройку всей базы. Ко всему прочему, они были инструментами программистов. Чтобы получить ответ на вопрос типа: «Какой товар наиболее часто заказывает компания XX?», программисту приходилось писать программу для навигации по базе данных. Реализация пользовательских запросов часто затягивалась на недели и месяцы, и к моменту появления запрошенной информации она часто уже оказывалась бесполезной.

 

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

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

Можно сформулировать более простое определение.

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

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

Строки реляционной таблицы являются записями и хранят информацию об одном экземпляре объекта данных, представленного в таблице. Одинаковых записей в таблице не должно быть. Основное требование к реляционной базе данных состоит в том, что значения полей (столбцов таблицы) должны быть элементарными и неделимыми информационными единицами, что создает возможность применять в целях обработки информации математический аппарат, реляционной алгебры. Наиболее популярны реляционные СУБД — dBase, FoxBase, FoxPro, Clarion, Paradox, Оracle, Access и др.

Примером реляционной базы данных может служить таблица «Сотрудники» (табл. 1), где одна строка (запись) — сведения об одном из сотрудников.

 

Таблица 1.

Табельный № Фамилия Имя Отчество Дата рождения
  Петров   Олег   Сергеевич   15.02.1954  
  Сидоров   Иван   Петрович   23.02.1976  
  Панин   Петр   Борисович   07.09.1986  

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

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

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

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

 

2. Обобщённая технология работы с БД

Технология работы с базами данных имеет несколько этапов, а именно:

Ø построение мифологической модели БД,

Ø создание структуры таблиц базы данных,

Ø обработку данных, содержащихся в таблицах,

Ø и вывод информации из БД.

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

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

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

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

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

Запрос — это команда, формулируемая для СУБД, которая требует представить определенную, указанную в запросе информацию. Язык SQL — это структурированный язык запросов (Structured Query Language). Запросы являются наиболее часто используемым аспектом SQL. Все запросы в SQL конструируются на базе команды SELECT (выбор).

Результатом выполнения запроса является таблица с временным набором данных (динамический набор). Записи динамического набора могут включать поля из одной или нескольких таблиц. На основе запроса можно построить отчет или форму.

Для вывода информации из базы данных существует специальное средство — отчеты. Они позволяют:

• включать в отчет выборочную информацию из таблиц базы данных;

• добавлять информацию, не содержащуюся в базе;

• выводить итоговую информацию из базы данных;

• располагать выводимую информацию в любом удобном виде;

• включать в отчет информацию из разных таблиц.