• Ешқандай Нәтиже Табылған Жоқ

Базы данных и информационные системы

N/A
N/A
Protected

Academic year: 2022

Share "Базы данных и информационные системы"

Copied!
137
0
0

Толық мәтін

(1)

Костанайский государственный педагогический институт Естественно-математический факультет

Кафедра информатики и компьютерных технологий

Сухов М.В.

Базы данных и информационные системы

Учебное пособие

Костанай, 2016

(2)

УДК 004.65 ББК 32.972.134

С 91 Рецензенты:

Медетов Н.А. – доктор физико-математических наук, доцент (Костанайский государственный университет им. А. Байтурсынова)

Клименко И.С. – доктор технических наук, доцент (Костанайский государственный педагогический институт)

Сухов М.В.

С91 Базы данных и информационные системы: учебное пособие / М.В. Сухов. – Костанай, 2016. – 180 с.

ISBN 978-601-7839-15-4

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

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

УДК 004.65 ББК 32.972.134 Печатается по решению Ученого совета

Костанайского государственного педагогического института

ISBN 978-601-7839-15-4

© Сухов М.В., 2016

(3)

СОДЕРЖАНИЕ

ВВЕДЕНИЕ...6

1 БАЗЫ ДАННЫХ И ИНФОРМАЦИОННЫЕ СИСТЕМЫ...8

1.1 Основные понятия...8

1.2 Модели представления данных...14

1.3 Архитектура информационной системы...25

1.4 Принцип организации функционирования информационной системы на одном компьютере...28

2 СИСТЕМЫ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ. КЛАССИФИКАЦИЯ И ОСНОВНЫЕ ФУНКЦИИ...31

3 СПОСОБЫ РАЗРАБОТКИ И ВЫПОЛНЕНИЯ ПРИЛОЖЕНИЙ...36

4 РЕЛЯЦИОННАЯ МОДЕЛЬ ДАННЫХ...40

5 СВЯЗЫВАНИЕ ТАБЛИЦ...46

6 ТЕОРЕТИЧЕСКИЕ ЯЗЫКИ ЗАПРОСОВ...52

6.1 Реляционная алгебра...52

6.2 Реляционное исчисление...61

6.3 Язык запросов по образцу QBE...63

6.4 Структурированный язык запросов SQL...64

7 ПРОЕКТИРОВАНИЕ БАЗ ДАННЫХ...71

7.1 Проблемы проектирования БД...71

7.2 Зависимости между атрибутами...72

8 НОРМАЛЬНЫЕ ФОРМЫ...74

8.1 Нормализация отношений ...74

8.2 Рекомендации по разработке структур...76

8.3 Обеспечение целостности...77

9 МЕТОД СУЩНОСТЬ – СВЯЗЬ...79

9.1 Основные понятия метода...79

9.2 Этапы проектирования...80

9.3 Правила формирования отношений...80

10 ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ СИСТЕМ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ...82

11 РАСПРЕДЕЛЕННЫЕ ИНФОРМАЦИОННЫЕ СИСТЕМЫ И БАЗЫ ДАННЫХ...89

12 ОСНОВНЫЕ ПОНЯТИЯ СУБД MS ACCESS...93

13 РАЗРАБОТКА ТАБЛИЦ...97

13.1 Создание таблиц...97

13.2 Типы данных таблиц...99

13.3 Создание списка подстановки...101

13.4 Создание значений по умолчанию и маски ввода...102

14 РЕДАКТИРОВАНИЕ ТАБЛИЦ, СВЯЗИ...106

14.1 Определение отношений между таблицами, связи...106

14.2 Определение параметров целостности данных и типа объединения...111

(4)

14.3 Перемещение по таблице и просмотр записей. Подтаблицы...114

14.4 Редактирование специальных полей...115

14.5 Создание индексов...117

15 РАБОТА С ФОРМАМИ...122

15.1 Создание формы с помощью инструмента «Форма»...122

15.2 Создание разделенной формы при помощи инструмента «Разделенная форма»...123

15.3 Создание формы, в которой отображается несколько записей, при помощи инструмента «Несколько элементов»...123

15.4 Создание формы при помощи мастера форм...124

15.5 Создание формы при помощи инструмента «Пустая форма»...124

15.6 Режим макета и режим конструктора...125

15.7 Доработка формы в режиме макета...126

15.8 Доработка формы в режиме конструктора...126

16 ФИЛЬТРЫ...128

16.1 Выборка записей по одному значению в одном поле...128

16.2 Выборка записей по нескольким значениям в нескольких полях....128

16.3 Составление расширенного фильтра...128

16.4 Сохранение фильтра...129

17 ЗАПРОСЫ...130

17.1 Создание запроса на выборку...130

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

17.3 Создание запроса с параметрами...133

17.4 Создание итогового запроса...135

17.5 Выполнение расчетов на основе данных...136

17.6 Просмотр сводных данных и статистических показателей...137

17.7 Создание перекрестного запроса...137

17.8 Создание запроса на создание таблицы...138

17.9 Создание запроса на добавление...139

17.10 Создание запроса на обновление...140

17.11 Создание запроса на удаление...141

18 ОТЧЕТЫ...142

18.1 Составные части отчета...142

18.2 Создание отчета...143

18.3 Добавление группировки, сортировки и итогов...144

18.4 Добавление изображений...145

18.5 Просмотр и печать отчета...145

19 МАКРОСЫ...147

19.1 Новые возможности макросов в Office Access 2007...150

19.2 Создание макроса...151

19.3 Создание изолированного макроса...153

19.4 Создание группы макросов...153

19.5 Создание внедренного макроса...154

(5)

19.6 Изменение макроса...156

19.7 Запуск макроса...156

20 СПОСОБЫ СОВМЕСТНОГО ИСПОЛЬЗОВАНИЯ БАЗЫ ДАННЫХ ACCESS...158

20.1 Способы совместного использования...158

20.2 Разделение базы данных...160

20.3 Совместное использование базы данных с помощью сетевой папки...161

20.4 Совместное использование базы данных с помощью сайта SharePoint...162

20.5 Использование Access с сервером базы данных...164

21 ЗАЩИТА БАЗЫ ДАННЫХ ACCESS 2007...166

21.1 Структура системы безопасности Office Access 2007...168

21.2 Использование базы данных Office Access 2007 в надежном расположении...170

21.3 Упаковка, подпись и распространение базы данных Office Access 2007...171

21.4 Включение отключенного содержимого при открытии базы данных...172

21.5 Использование пароля для шифрования базы данных Office Access 2007...174

21.6 О работе системы безопасности с базами данных из предыдущих версий Access, открытых в Office Access 2007...175

21.7 Выполнение небезопасных выражений (отключение изолированного режима)...177

21.8 Изменение параметра реестра...178

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ...179

(6)

ВВЕДЕНИЕ

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

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

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

Учебное пособие состоит из двух частей. В первой части (раздел 1 – 11) приводятся теоретические основы построения баз данных. Рассматриваются ба- зы данных и информационные системы. Описываются основные понятия баз данных и систем управления базами данных, дается описание логической моде- ли данных. Дается характеристика вариантов организации информационной системы с использованием различных архитектур. Приводится классификация СУБД, и описываются основные их функции. Рассматриваются варианты созда- ния приложений и организации взаимодействия пользователей с информа- ционными системами.

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

Во второй части (раздел 12 – 21) учебного пособия рассматриваются основные возможности работы с системой управления базами данных Microsoft Access. Дано описание основных элементов СУБД, таких как таблицы, формы,

(7)

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

В результате изучения изложенного в учебном пособии материала ожидается достижение следующих результатов:

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

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

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

(8)

1 БАЗЫ ДАННЫХ И ИНФОРМАЦИОННЫЕ СИСТЕМЫ 1.1 Основные понятия

В основе решения многих задач лежит обработка информации.

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

Основные стадии работы с информацией:

Сбор информации – это результат просмотра материалов и документов, уточнения, дополнения и формализации информации.

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

Хранение информации – это результат централизации, коррекции, обновления и сбережения банков данных.

Обработка информации – это результат преобразования (сортировка, группировка, обогащение, сравнение и т.д.) в формы, удобные для работы.

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

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

1. Объективность информации. Объективный – существующий вне и независимо от человеческого сознания. Информация – это отражение внешнего объективного мира. Информация объективна, если она не зависит от методов ее фиксации, чьего-либо мнения, суждения.

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

3. Достоверность информации. Информация достоверна, если она отра- жает истинное положение дел. Объективная информация всегда достоверна, но достоверная информация может быть как объективной, так и субъективной.

Достоверная информация помогает принять нам правильное решение. Недосто- верной информация может быть по следующим причинам:

преднамеренное искажение (дезинформация) или непреднамеренное искажение субъективного свойства;

искажение в результате воздействия помех («испорченный телефон») и недостаточно точных средств ее фиксации.

(9)

4. Полнота информации. Информацию можно назвать полной, если ее достаточно для понимания и принятия решений. Неполная информация может привести к ошибочному выводу или решению.

5. Точность информации определяется степенью ее близости к реальному состоянию объекта, процесса, явления и т. п.

6. Актуальность информации – важность для настоящего времени, зло- бодневность, насущность. Только вовремя полученная информация может быть полезна.

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

Для облегчения обработки информации создаются информационные системы (ИС).

Автоматизированными системами называются информационные систе- мы, в которых применяют технические средства, в частности ЭВМ. В широком понимании под определение информационной системы попадает любая систе- ма обработки информации.

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

Информационные системы классифицируются по разным признакам.

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

По масштабу информационные системы подразделяются на следующие группы:

одиночные;

групповые;

корпоративные.

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

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

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

(10)

Классификация по сфере применения

По сфере применения информационные системы обычно подразделяют- ся на четыре группы:

системы обработки транзакций;

системы принятия решений;

информационно–справочные системы;

офисные информационные системы.

Системы обработки транзакций, в свою очередь, по оперативности обработки данных, разделяются на пакетные информационные системы и опе- ративные информационные системы. В информационных системах организа- ционного управления преобладает режим оперативной обработки транзакций – OLTP (OnLine Transaction Processing), для отражения актуального состояния предметной области в любой момент времени, а пакетная обработка занимает весьма ограниченную часть. Для систем OLTP характерен регулярный (возмож- но, интенсивный) поток довольно простых транзакций, играющих роль заказов, платежей, запросов и т.п. Важными требованиями для них являются:

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

гарантированная доставка информации при удаленном доступе к БД по телекоммуникациям.

Системы поддержки принятия решений – DSS (Decision Support System) – представляют собой другой тип информационных систем, в которых с помощью довольно сложных запросов производится отбор и анализ данных в различных разрезах: временных, географических и по другим показателям.

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

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

Классификация по области применения:

 ИС в производстве

 ИС в образовании

 ИС в здравоохранении

 ИС в науке

 ИС в торговле, ИС социальной сфере, военное дело и любых других отраслях.

Классификация по способу организации

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

системы на основе архитектуры файл-сервер;

системы на основе архитектуры клиент-сервер;

системы на основе многоуровневой архитектуры;

системы на основе Интернет/ интранет – технологий.

(11)

Архитектура файл-сервер

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

Каждый новый клиент добавляет вычислительную мощность к сети.

Архитектура клиент-сервер

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

Особенностью архитектуры клиент-сервер является использование выделенных серверов баз данных, понимающих запросы на языке структурированных за- просов SQL (Structured Query Language) и выполняющих поиск, сортировку и агрегирование информации.

Многоуровневая архитектура

Многоуровневая архитектура стала развитием архитектуры клиент-сер- вер и в своей классической форме состоит из трех уровней:

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

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

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

Подобную концепцию обработки данных пропагандируют, в частности, фирмы Oracle, Sun, Borland и др.

Интернет/интранет-технологии

В развитии технологии Интернет/интранет основной акцент пока что делается на разработке инструментальных программных средств. В то же время наблюдается отсутствие развитых средств разработки приложений, рабо- тающих с базами данных. Компромиссным решением для создания удобных и простых в использовании и сопровождении информационных систем, эффек- тивно работающих с базами данных, стало объединение Интернет/интранет- технологии с многоуровневой архитектурой. При этом структура информа- ционного приложения приобретает следующий вид: браузер – сервер прило- жений – сервер баз данных – сервер динамических страниц – web-сервер.

Благодаря интеграции Интернет/интранет–технологии и архитектуры клиент-сервер процесс внедрения и сопровождения корпоративной информа- ционной системы существенно упрощается при сохранении достаточно высокой эффективности и простоты совместного использования информации.

По типу хранимых данных ИС делятся на фактографические и доку- ментальные.

(12)

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

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

Основные понятия баз данных (БД):

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

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

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

Логическую структуру хранимых в БД называют моделью представле- ния данных.

К основным моделям представления данных можно отнести следующие модели:

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

2. Сетевая модель.

3. Реляционная модель.

4. Постреляционная модель.

5. Многомерная модель.

6. Объектно-ориентированная модель.

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

Одними из первых СУБД являются следующие системы: IMS (IBM, 1968 г.), IDMS (Cullinet, 1971 г.), ADABAS (Software AG, 1969 г.) и ИНЭС (ВНИИСИ АН СССР, 1976 г.). Количество современных систем управления базами данных исчисляется тысячами.

Приложение представляет собой программу или комплекс программ, обеспечивающих автоматизацию обработки информации для прикладной зада- чи. Нами рассматриваются приложения, использующие БД. Приложения могут создаваться в среде или вне среды СУБД – с помощью системы программиро- вания, использующей средства доступа к БД, к примеру, Delphi или C++

(13)

Builder. Приложения, разработанные в среде СУБД, часто называют приложе- ниями СУБД, а приложения, разработанные вне СУБД, – внешними приложе- ниями.

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

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

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

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

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

Стандартизация интерфейса СД привела к разработке службы словаря информационных ресурсов (Information Resource Dictionary System – IRDS).

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

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

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

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

(14)

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

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

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

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

1.2 Модели представления данных Иерархическая модель данных

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

Для описания структуры (схемы) иерархической БД на некотором языке программирования используется тип данных «дерево» (рисунок 1).

Тип «дерево» схож с типами данных «структура» языков программи- рования ПЛ/1, С и «запись» языка Паскаль. В них допускается вложенность типов, каждый из которых находится на некотором уровне.

Тип «дерево» является составным. Он включает в себя подтипы («поддеревья»), каждый из которых, в свою очередь, является типом «дерево».

Каждый из типов «дерево» состоит из одного «корневого» типа и упорядочен- ного набора (возможно, пустого) подчиненных типов. Каждый из элементарных типов, включенных в тип «дерево», является простым или составным типом

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

(15)

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

Корневым называется тип, который имеет подчиненные типы и сам не является подтипом. Подчиненный тип (подтип) является потомком по отношению к типу, который выступает для него в роли предка (родителя).

Потомки одного и того же типа являются близнецами по отношению друг к другу.

В целом тип «дерево» представляет собой иерархически организо- ванный набор типов «запись».

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

«запись» (записи). Часто отношения родства между типами переносят на отно- шения между самими записями. Поля записей хранят собственно числовые или символьные значения, составляющие основное содержание БД. Обход всех эле- ментов иерархической БД обычно производится сверху вниз и слева направо.

В иерархических СУБД может использоваться терминология, отличаю- щаяся от приведенной. Так, в системе IMS понятию «запись» соответствует термин «сегмент», а под «записью БД» понимается вся совокупность записей, относящаяся к одному экземпляру типа «дерево».

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

 представление линейным списком с последовательным распределе- нием памяти (адресная арифметика, левосписковые структуры);

 представление связными линейными списками (методы, использую- щие указатели и справочники).

К основным операциям манипулирования иерархически организованны- ми данными относятся следующие:

 поиск указанного экземпляра БД;

 переход от одного дерева к другому;

 переход от одной записи к другой внутри;

 вставка новой записи в указанную позицию;

 удаление текущей записи и т. д.

В соответствии с определением типа «дерево», можно заключить, что между предками и потомками автоматически поддерживается контроль целост- ности связей. Основное правило контроля целостности формулируется сле-

(16)

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

К достоинствам иерархической модели данных относятся эффективное использование памяти ЭВМ и неплохие показатели времени выполнения основных операций над данными. Иерархическая модель данных удобна для работы с иерархически упорядоченной информацией.

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

На иерархической модели данных основано сравнительно ограниченное количество СУБД, в числе которых можно назвать зарубежные системы IMS, PC/Focus, Team–Up и Data Edge, а также отечественные системы Ока, ИНЭС и МИРИС.

Сетевая модель данных

Сетевая модель данных позволяет отображать разнообразные взаимо- связи элементов данных в виде произвольного графа, обобщая тем самым иерархическую модель данных (рисунок 2). Наиболее полно концепция сетевых БД впервые была изложена в Предложениях группы КОДАСИЛ (KODASYL).

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

Для описания схемы сетевой БД используется две группы типов:

«запись» и «связь». Тип «связь» определяется для двух типов «запись»: предка и потомка. Переменные типа «связь» являются экземплярами связей.

Сетевая БД состоит из набора записей и набора соответствующих связей. На формирование связи особых ограничений не накладывается. Если в иерархических структурах запись–потомок могла иметь только одну запись–

предка, то в сетевой модели данных запись–потомок может иметь произвольное число записей–предков (сводных родителей).

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

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

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

(17)

 поиск записи в БД;

 переход от предка к первому потомку;

 переход от потомка к предку;

 создание новой записи;

 удаление текущей записи;

 обновление текущей записи;

 включение записи в связь;

 исключение записи из связи;

 изменение связей и т. д.

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

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

Системы на основе сетевой модели не получили широкого распространения на практике. Наиболее известными сетевыми СУБД являются следующие: IDMS, db_VistaIII, СЕТЬ, СЕТОР и КОМПАС.

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

Реляционная модель данных предложена сотрудником фирмы IBM Эдгаром Коддом и основывается на понятии отношение (relation).

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

Таблица 1. Реляционная модель данных

№накладной №покупателей

0373 8723

8374 8232

7364 8723

Таблица 2. Реляционная модель данных

№накладной Товар Кол-во

0373 Тетрадь (24 листа) 300

0373 Тетрадь (48 листов) 200

8374 Тетрадь (96 листов) 1000

8374 Блокнот (обложка пластик) 600 8374 Блокнот (обложка картон) 200 7364 Ручка черная шариковая 10000

(18)

Таблица имеет строки (записи) и столбцы (колонки). Каждая строка таблицы имеет одинаковую структуру и состоит из полей. Строкам таблицы соответствуют кортежи, а столбцам – атрибуты отношения.

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

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

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

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

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

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

Примерами зарубежных реляционных СУБД для ПЭВМ являются сле- дующие: dBase III Plus и dBase IY (фирма Ashton–Tate), DB2 (IBM), R:BASE (Microrim), FoxPro ранних версий и FoxBase (Fox Software), Paradox и dBASE for Windows (Borland), FoxPro более поздних версий, Visual FoxPro и Access (Microsoft), Clarion (Clarion Software), Ingres (ASK Computer Systems) и Oracle (Oracle).

К отечественным СУБД реляционного типа относятся системы: ПАЛЬ- МА (ИК АН УССР), а также система HyTech (МИФИ).

Заметим, что последние версии реляционных СУБД имеют некоторые свойства объектно-ориентированных систем. Такие СУБД часто называют объектно-реляционными. Примером такой системы можно считать продукты Oracle 8.x. Системы предыдущих версий вплоть до Oracle 7.x считаются

«чисто» реляционными.

Постреляционная модель данных

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

(19)

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

Таблица 3. Постреляционная модель данных

Накладные №покупателей Товар Кол–во

0373 8723 Тетрадь (24 листа) 300

Тетрадь (48 листов) 200

8374 8232 Тетрадь (96 листов) 1000

Блокнот (обложка пластик) 600 Блокнот (обложка картон) 200

7364 8723 Ручка черная шариковая 10000

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

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

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

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

К числу СУБД, основанных на постреляционной модели данных, отно- сятся системы Bubba, uniVers и Dasdb.

Многомерная модель данных

Многомерный подход к представлению данных в базе появился практи- чески одновременно с реляционным. Реально работающих многомерных СУБД (МСУБД) было очень мало. С середины 90-х годов интерес к ним стал приобре- тать массовый характер.

Толчком послужила в 1993 году программная статья одного из осново- положников реляционного подхода Э. Кодда. В ней сформулированы 12 основ- ных требований к системам класса OLAP (OnLine Analytical Processing –

(20)

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

В развитии концепций ИС можно выделить следующие два направле- ния:

 системы оперативной (транзакционной) обработки;

 системы аналитической обработки (системы поддержки принятия решений).

Реляционные СУБД предназначались для информационных систем опе- ративной обработки информации и в этой области были весьма эффективны. В системах аналитической обработки они показали себя несколько неповоротли- выми и недостаточно гибкими. Более эффективными здесь оказываются много- мерные СУБД (МСУБД).

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

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

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

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

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

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

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

По сравнению с реляционной моделью многомерная организация дан- ных обладает более высокой наглядностью и информативностью.

Ақпарат көздері

СӘЙКЕС КЕЛЕТІН ҚҰЖАТТАР

В базовом вузе производится сканирование бланков «Заявление на тестирование» (далее - бланк заявления) для создания базы данных (далее

Термин «схема» относится к организации данных, как к схеме построения базы данных (разделенной на таблицы базы данных в случае реляционных

Если необходимо определить детали, которые могут быть изготовлены из всех материалов, хранимых на складе, то неформально мы можем определить,

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

В качестве входных данных для метода прогнозирования мы будем использовать результат ра- боты описанного выше двухэтапного

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

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

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