Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Современные базы данных. Основы. Часть 1

Покупка
Основная коллекция
Артикул: 681963.01.99
Доступ онлайн
от 108 ₽
В корзину
В пособии рассмотрены и проанализированы концепции баз данных, архитектура реляционных баз данных, операции над таблицами реляционных баз, вопросы использования языка ER-диаграмм для построения инфологических моделей (диаграммы “сущность - связь", информационное моделирование, методология IDEFIX, этапы разработки инфологической модели данных); организации доступа к данным (средства ускоренного доступа к данным, язык запросов, обработка транзакций, средства восстановления после сбоев); построения систем, ориентированных на анализ данных (хранилища данных; модели данных, используемые при построении хранилищ данных). Предназначено в качестве учебного пособия для студентов, обучающихся по специальностям "Финансы и кредит", "Бухгалтерский учет, анализ и аудит", "Мировая экономика", "Налоги и налогообложение", а также для магистрантов и слушателей ИПК.
Дадян, Э. Г. Современные базы данных. Основы. Часть 1: Учебное пособие / Дадян Э.Г. - Москва :НИЦ ИНФРА-М, 2017. - 88 с.ISBN 978-5-16-106526-6 (online). - Текст : электронный. - URL: https://znanium.com/catalog/product/959289 (дата обращения: 23.05.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
Э.Г. Дадян

Современные базы данных. Основы

Часть 1

Москва

Инфра-М

2017

 

 

 

Э.Г. Дадян 

 

Современные базы данных. 
Основы 

Часть 1 

 

 

 

 

 

 

 

Москва 

Инфра-М; Znanium.com 

2017 

УДК 338.2(075.8) 

ББК 32.973.23 

Д12

Дадян, Э.Г.

Современные базы данных. Основы. Часть 1: Учебное пособие / Э.Г. 

Дадян. – М.: Инфра-М; Znanium.com, 2017. – 88 с.

ISBN 978-5-16-106526-6 (online)

В пособии рассмотрены и проанализированы концепции баз данных, архитектура 
реляционных баз данных, операции над таблицами реляционных баз, вопросы 
использования языка ER-диаграмм для построения инфологических моделей (диаграммы 
“сущность связь", информационное моделирование, методология IDEFIX, этапы 

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

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

ISBN 978-5-16-106526-6 (online)
© Э.Г. Дадян, 2004, 2017 (переизд.)

О г л а в л е н и е

Введение.................................................................................................... 
5

1. 
БАЗЫ ДАННЫХ И СУБД .................................................................. 
7

1.1. 
Данные и ЭВМ........................................................................ 
7
1.2. 
Концепция баз данных. Архитектура СУБД..................... 
8
1.2.1. Инфологическая модель данных..........................................  
9
1.2.2. Даталогическая модель данных...........................................  
10
1.2.3. Физическая модель данных................................................... 
10
1.3. 
Типы даталогических моделей данных...........................  
11
1.3.1. Иерархическая даталогическая модель...............................  
11
1.3.2. Сетевая даталогическая модель..........................................  
12
1.3.3. Даталогическая модель на основе инвертированных списков. 
13
1.3.4. Реляционная даталогическая модель..................................  
13
1.3.5. Объектно-реляционная даталогическая модель................. 
15

2. 
РЕЛЯЦИОННЫЕ БАЗЫ ДАННЫХ..................................................  
16
2.1. 
Основные понятия реляционных баз данных ............... 
16

2.1.1. Тип данных............................................................................... 
16
2.1.2. Домен........................................................................................ 
17
2.1.3. Схема отношения, схема базы данных.................................  
17
2.1.4. Кортеж, отношение.................................................................. 
18
2.2. 
Целостность реляционных баз данных ..........................  
19
2.3. 
Основные свойства отношений реляционных баз
данных..................................................................................... 
20
2.3.1. Отсутствие кортежей-дубликатов..........................................  
20
2.3.2. Отсутствие упорядоченности кортежей................................  
20
2.3.3. Отсутствие упорядоченности атрибутов...............................  
20
2.3.4. Атомарность значений атрибутов.........................................  
21

3. 
ОПЕРАЦИИ С ТАБЛИЦАМИ РЕЛЯЦИОННЫХ БАЗ ДАННЫХ..... 
22
3.1. 
Некоторые операции теории множеств...........................  
22
3.1.1. Ограничение отношения......................................................... 
23
3.1.2. Проекция отношения............................................................... 
23
3.1.3. Объединение отношений........................................................ 
23
3.1.4. Пересечение отношений......................................................... 
23
3.1.5. Разность отношений................................................................ 
24
3.1.6. Произведение отношений..................................... 
 
 
24
3.1.7. Деление отношений.................................................. 
 
 
25
3.1.8. Соединение отношений.............................................. 
 
25

3

3.2. 
Нормализация отношений реляционных баз данных.... 
25
3.2.1. Пример декомпозиции исходной "универсальной"
таблицы на простые отношения............................................  
26
3.2.2. Проблемы, возникающие при использовании
универсального отношения................................................... 
28
3.2.3. Первая нормальная форма (1NF)......................................... 
30
3.2.4. Вторая нормальная форма (2NF)....................................  
 
32
3.2.5. Третья нормальная форма (3NF)..... 
 
34
3.2.6. Нормальная форма Бойса-Кодда (BCNF)............................ 
36
3.2.7. Четвертая нормальная форма (4NF). Пятая нормальная 
форма (нормальная форма проекции-соединения
(5NF или PJ/NF).................................................................. 
 
37

4. 
ИСПОЛЬЗОВАНИЕ ЯЗЫКА ER-ДИАГРАММ ДЛЯ ПОСТРОЕНИЯ
ИНФОЛОГИЧЕСКИХ МОДЕЛЕЙ...................................................... 
37
4.1. 
Диаграммы "сущность-связь"........................................... 
37
4.2. 
Методология IDEF1X............................................................ 
41
4.3. 
Этапы разработки инфологической модели данных..... 
44
4.3.1. Анализ выходных форм ........................................................  
44
4.3.2. Выделение сущностей ..........................................................  
45

5. 
ОРГАНИЗАЦИЯ ДОСТУПА К ДАННЫМ ......................................... 
47
5.1. 
Средства ускоренного доступа к данным.......................  
47
5.2. 
Язык запросов.......................................................................  
49
5.2.1. Язык SQ L................................................................................  
49
5.2.2. Состав SQL-оператора..........................................................  
49
5.2.3. SQL-оператор SELECT..........................................................  
50
5.2.4. SQL-оператор DELETE..........................................................  
67
5.2.5. SQL-оператор INSERT ..........................................................  
68
5.2.6. SQL-оператор UPDATE .............................................. 
 
68
5.3. 
Обработка транзакций ........................................................ 
69
5.4. 
Средства восстановления после сбоев........................... 
73

6. 
ПРИНЦИПЫ ПОСТРОЕНИЯ СИСТЕМ, ОРИЕНТИРОВАННЫХ НА
АНАЛИЗ ДАННЫХ ...........................................................................  
74
6.1. 
Хранилища данных .............................................................  
74
6.2. 
Модели данных, используемые при построении
хранилищ данных.................................................................  
76

Заключение ............................................................................................... 
82

Список литературы................................................................................... 
83

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

4

В в е д е н и е

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

Литературы на русском языке, посвященной тематике СУБД, 
очень немного. Невозможно рекомендовать какое-либо издание, 
содержание которого покрывало бы весь материал курса "Базы 
данных". К числу лучших относятся книги К. Дейта "Введение в системы баз данных" (М.: Наука, 1980) и "Руководство по реляционной 
СУБД ОВ2" (М.: Финансы и статистика, 1988), а также книга 
Дж. Ульмана "Основы систем баз данных" (М.: Финансы и статистика, 1983). Хотя эти книги несколько устарели (на английском языке 
вышло уже несколько дополненных изданий), тем не менее они содержат информацию, которая будет интересна пользователям 
ПЭВМ, специализирующимся в области разработки и проектирования баз данных.

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

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

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

5

1*-201

2) реляционные базы данных (основные понятия реляционных 
баз данных, тип данных, домен, схема отношения, схема базы данных, кортеж, отношение, целостность реляционных баз данных, основные свойства отношений реляционных баз данных);

3) операции над таблицами реляционных баз данных (операции теории множеств, нормализация отношений реляционных баз 
данных);

4) использование языка ЕК-диаграмм для построения инфоло- 
гических моделей (диаграммы "сущность -  связь", информационное моделирование, методология ЮЕР1Х, этапы разработки инфо- 
логической модели данных);

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

6) принципы построения систем, ориентированных на анализ 
данных (хранилища данных, модели данных, используемые при построении хранилищ данных).

0<>0

6

1. 
БАЗЫ ДАННЫХ И СУБД

1.1. Данные и ЭВМ

Восприятие реального мира можно соотнести с последовательностью разных, хотя иногда и взаимосвязанных явлений. С 
давних времен люди пытались описать эти явления. Такое описание называют данными.
Традиционно фиксация данных осуществляется с помощью 
конкретного средства общения (например, с помощью естественного языка или изображений} на конкретном носителе (например, 
камне или бумаге). Обычно данные (факты, явления, события, идеи 
или предметы) и их интерпретация (семантика) фиксируются совместно, так как естественный язык достаточно гибок для представления того и другого Примером может служить утверждение 
"Стоимость авиабилета -  128 рублей". Здесь "128 рублей" -  данное, а "Стоимость авиабилета" -  его семантика.
Нередко данные и интерпретация разделены. Например, "Расписание движения самолетов" может быть представлено в виде 
таблицы (рис. 1), в верхней части которой (отдельно от данных) 
приводится их интерпретация. Такое разделение затрудняет работу с данными (попробуйте быстро получить сведения из нижней 
части таблицы) (см. рис. 1).

Интерпретация
Но мор 
рейса
Дни
недели
Пункт
отправления
Время
вылета
Пункт
назначения
Время
прибытия
Тип
самолета .
Стоимость
билета
Данные

138
2 4 7
Баку
21.12
Москва
0.52
ИЛ-86
115.00
57
3_6
Ереван
7.20
Киев
9.25
ТУ-154
92.00
1234
2_6
Казань
22.40
Баку
23.50
ТУ-134
73.50
....

Рис. 1. 
Расписание движения самолетов. Данные и их 
интерпретация, оформленные в виде таблицы

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

7

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

1.2. Концепция баз данных. Архитектура СУБД

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

8

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

1.2.1. Инфологическая модель данных

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

П р е д м е т н а я  о б л а с т ь

Рис. 2. 
Уровни моделей данных

9

Такая человекоориентированная модель полностью независима от физических параметров среды хранения данных: этой средой 
может быть как память человека, так и ЭВМ. Отражающая предметную область инфологическая модель не должна изменяться до 
тех пор, пока какие-то изменения в реальном мире не потребуют 
изменения в ней некоторого определения.
Остальные модели, показанные на рис. 2., являются компьютероориентированными. С их помощью СУБД дает возможность программам и пользователям осуществлять доступ к хранимым данным лишь по их именам, не заботясь о физическом расположении 
этих данных. Нужные данные отыскиваются СУБД на внешних запоминающих устройствах по физической модели данных.

1.2.2. Даталогическая модель данных

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

1.2.3. Физическая модель данных

В отличие от инфологической модели данных, физическая модель полностью зависит от конкретной СУБД. В ней должны быть 
учтены:
• ограничения на длину имен объектов базы данных (таблиц, 
столбцов, индексов),
• использование специальных символов в именах;
• допустимые типы данных и их внутреннее представление 
на устройствах хранения данных в ЭВМ.
Одной и той же инфологической модели данных могут соответствовать несколько разных физических моделей.
Трехуровневая архитектура (инфологический, даталогический 
и физический уровни) позволяет обеспечить независимость хранимых данных от использующих их программ. АБД может при необходимости переписать хранимые данные на другие носители информации и (или) реорганизовать их физическую структуру, изменив лишь физическую модель данных. АБД может подключить к

10

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

1.3. Типы даталогических моделей данных

Моделью данных называется способ отображения предметной 
области на структуре данных.
Как отмечалось в п. 1.2.1, инфологическая модель отображает 
реальный мир в некоторых понятных человеку концепциях, полностью независимых от параметров среды хранения данных. Существует множество подходов к построению таких моделей: графовые 
модели, семантические сети, модель "сущность-связь" и т.д. Наиболее популярной из них оказалась модель "сущность-связь", которая будет рассмотрена в разделе 4.
Инфологическая модель должна быть отображена в компьютеро-ориентированной даталогической модели, "понятной" СУБД. В 
процессе развития теории и практического использования баз данных, а также средств вычислительной техники создавались СУБД, 
поддерживающие различные даталогические модели. Существуют 
иерархическая, сетевая, реляционная даталогические модели данных, даталогическая модель на основе инвертированных списков, 
объектно-реляционная даталогическая модель.

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

Иерархическая даталогическая модёль позволяет строить базы данных с древовидной структурой. В них каждый узел содержит 
свой тип данных (сущность). На верхнем уровне дерева в этой модели имеется один узел -  "корень", на следующем уровне располагаются узлы, связанные с этим корнем, затем узлы, связанные с 
узлами предыдущего уровня и т.д., причем каждый узел может 
иметь только одного предка, т.е. такие базы поддерживают отношение типа "один-ко-многим" (см. рис. 3).
Поиск данных в иерархической системе всегда начинается с 
корня. Затем производится спуск с одного уровня на другой, пока 
не будет достигнут искомый уровень. Перемещения по системе от 
одной записи к другой осуществляются с помощью ссылок.
Основные достоинства иерархической модели -  простота описания иерархических структур реального мира и быстрое выполнение запросов, соответствующих структуре данных. Однако они часто содержат избыточные данные и плохо приспособлены для представления взаимосвязей типа "многие-ко-многим". Кроме того, не 
всегда удобно каждый раз начинать поиск нужных данных с корня, 
но другого способа перемещения по базе в иерархических структу
11

Доступ онлайн
от 108 ₽
В корзину