Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БДЗиЭС / Базы данных, знаний и экспертные системы. Часть 1 (теория).pdf
Скачиваний:
162
Добавлен:
11.05.2015
Размер:
8.54 Mб
Скачать

1

Базы данных, знаний и экспертные системы

Методическое пособие для студентов 3-4 курсов специальности 40 01 01 «Программное обеспечение информационных технологий»

ЧАСТЬ 1 Автор к.т.н., доцент кафедры ПОИТ БГУИР

Копачев Алексей Геннадьевич

Базы данных, знаний и экспертные системы....................................................................

1

1 Данные как ресурс. Модель, объектные данные. Данные и знания. Сильная и

 

слабая типизация.................................................................................................................

5

 

1.1

Достоинства централизованного управления.....................................................

5

 

1.2

Цели использования БД........................................................................................

6

 

1.3

Многоуровневая структура БД.............................................................................

7

 

1.3.1 Обобщенный алгоритм работы СУБД..........................................................

8

2

Физический уровень. Требования. Размещение. Сжатие.........................................

8

 

2.1

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

8

 

2.2

Возможные представления данных...................................................................

10

 

2.3

Интерфейс физических записей: методы индексирования.............................

17

 

2.4

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

18

3

ИНДЕКСНО-ПОСЛЕДОВАТЕЛЬНАЯ ОРГАНИЗАЦИЯ.....................................

22

 

3.1.1 ПОСЛЕДОВАТЕЛЬНАЯ ИЛИ ПРОИЗВОЛЬНАЯ ОБРАБОТКА? ........

22

 

3.1.2

ВЕДЕНИЕ ФАЙЛА ......................................................................................

24

 

3.1.3 СВЯЗЬ С ТЕХНИЧЕСКИМ ОБЕСПЕЧЕНИЕМ .......................................

27

 

3.1.4 ИНДЕКСНО-ПОСЛЕДОВАТЕЛЬНЫЙ МЕТОД ДОСТУПА (ISAM)....

28

 

3.1.5

МНОГОУРОВНЕВОЕ ИНДЕКСИРОВАНИЕ...........................................

30

 

3.1.6 ВИРТУАЛЬНЫЙ МЕТОД ДОСТУПА (VSAM) .......................................

32

 

3.1.7 ВКЛЮЧЕНИЕ И УДАЛЕНИЕ ЗАПИСЕЙ ................................................

33

4

ОРГАНИЗАЦИЯ ОБЛАСТИ ПЕРЕПОЛНЕНИЯ ...................................................

34

 

4.1

РАСПРЕДЕЛЕННАЯ СВОБОДНАЯ ПАМЯТЬ...............................................

38

 

4.2

РАСЩЕПЛЕНИЕ ПАМЯТИ ..............................................................................

39

 

4.2.1

РАЗМЕЩЕНИЕ ИНДЕКСОВ......................................................................

42

5

Алгоритмы перемешивания ......................................................................................

45

5.1ФАКТОРЫ, ВЛИЯЮЩИЕ НА ЭФФЕКТИВНОСТЬ ПЕРЕМЕШИВАНИЯ45

5.1.1

РАЗМЕР УЧАСТКА ЗАПИСЕЙ.................................................................

45

5.1.2

ПЛОТНОСТЬ ЗАПОЛНЕНИЯ....................................................................

48

5.2

АЛГОРИТМЫ ПЕРЕМЕШИВАНИЯ................................................................

50

5.2.1

Метод квадратов...........................................................................................

51

5.2.2

Деление..........................................................................................................

51

5.2.3

.Сдвиг разрядов.............................................................................................

52

5.2.4

Складывание..................................................................................................

52

5.2.5 . Анализ отдельных разрядов ключа...........................................................

53

5.2.6 . Преобразование основания системы счисления......................................

53

5.2.7

. Метод Лина..................................................................................................

53

5.2.8

. Деление полиномов....................................................................................

53

5.3

ВЫБОР АЛГОРИТМА ПЕРЕМЕШИВАНИЯ..................................................

54

2

5.4ЗАМЕЧАНИЯ ПО РЕАЛИЗАЦИИ АЛГОРИТМОВ ПЕРЕМЕШИВАНИЯ.55

5.4.1 РАЗМЕЩЕНИЕ ЗАПИСЕЙ В ОБЛАСТИ ПЕРЕПОЛНЕНИЯ................

55

5.4.2

ОПТИМИЗАЦИЯ..........................................................................................

56

6 .Физическое представление древовидных и сетевых структур.............................

56

6.1 Физическое представление древовидных структур.........................................

56

6.1.1

Усложненный двумерный файл..................................................................

57

6.1.2 ГЛАВНЫЙ И ДЕТАЛЬНЫЙ ФАЙЛЫ.......................................................

58

6.1.3

МНОГОУРОВНЕВЫЕ ДЕРЕВЬЯ...............................................................

59

6.1.4 Метод 1.

Физически последовательное размещение................................

59

6.1.5 Метод 2.

Левосписковые структуры с переполнениями..........................

61

6.1.6Метод 3. Левосписковые структуры с распределенной свободной

памятью .......................................................................................................................

62

6.1.7

ПОСЛЕДОВАТЕЛЬНЫЕ ФАЙЛЫ.............................................................

62

6.1.8

Метод 4. Множественные указатели на порожденные записи................

64

6.1.9

Метод 5. Указатели на подобные и порожденные записи .......................

65

6.1.10

УКАЗАТЕЛИ НА ИСХОДНЫЕ ЗАПИСИ.................................................

67

6.1.11

Метод 6. Кольцевые структуры...................................................................

67

6.1.12

ВКЛЮЧЕНИЕ И УДАЛЕНИЕ ЗАПИСЕЙ ................................................

67

6.1.13

Метод 7. Справочники деревьев .................................................................

68

6.1.14

Метод 8. Битовые отображения ..................................................................

69

6.1.15

СМЕШАННЫЕ МЕТОДЫ ..........................................................................

69

6.2

Физическое представление сетевых структур..................................................

70

6.2.1

ФИЗИЧЕСКИ ПОСЛЕДОВАТЕЛЬНОЕ РАЗМЕЩЕНИЕ.......................

72

6.2.2

ВСТРОЕННЫЕ УКАЗАТЕЛИ ....................................................................

74

6.2.3

СЛОЖНЫЕ СЕТЕВЫЕ СТРУКТУРЫ.......................................................

76

6.2.4

МНОГОУРОВНЕВЫЕ СЕТЕВЫЕ СТРУКТУРЫ.....................................

77

6.2.5

СПРАВОЧНИКИ..........................................................................................

78

6.2.6

БИТОВЫЕ ОТОБРАЖЕНИЯ......................................................................

79

7 . Построение индекса .................................................................................................

83

7.1

ОПЕРАЦИИ ПОИСКА .......................................................................................

83

7.2

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

83

7.2.1

Адрес записи .................................................................................................

83

7.2.2

Относительный адрес записи ......................................................................

83

7.2.3

Символический адрес записи......................................................................

84

7.2.4

Адрес размещения участка записей............................................................

84

7.2.5

Адрес цепи.....................................................................................................

84

7.2.6

Значения атрибута........................................................................................

85

7.2.7

Несколько выходов.......................................................................................

85

7.3

ФУНКЦИИ С КОНЕЧНЫМ ЧИСЛОМ ЗНАЧЕНИЙ......................................

85

7.4

ИНДЕКС С НЕСКОЛЬКИМИ ФУНКЦИЯМИ................................................

85

7.4.1

АРГУМЕНТ...................................................................................................

86

7.5

КАКИЕ АТРИБУТЫ СЛЕДУЕТ ИНДЕКСИРОВАТЬ? ..................................

86

7.6

СЖАТИЕ КЛЮЧА ..............................................................................................

87

8 Поиск по нескольким ключам...................................................................................

88

8.1

Первичный и вторичный ключ...........................................................................

88

8.2

Пример БД с несколькими ключами .................................................................

88

3

8.3РАЗМЕЩЕНИЕ ЗАПИСЕЙ НА ФИЗИЧЕСКИХ НОСИТЕЛЯХ

ДАННЫХ........................................................................................................................

89

8.3.1

ЗАПИСИ, СВЯЗАННЫЕ В ЦЕПЬ..............................................................

90

8.3.2

ФАЙЛ С НЕСКОЛЬКИМИ ВТОРИЧНЫМИ КЛЮЧАМИ.....................

91

8.3.3

СЧЕТЧИК ДЛИНЫ ЦЕПИ..........................................................................

91

8.3.4

МУЛЬТИСПИСКОВАЯ ОРГАНИЗАЦИЯ................................................

94

8.3.5

ОРГАНИЗАЦИЯ ФАЙЛА И АППАРАТНОЕ ОБЕСПЕЧЕНИЕ.............

94

8.3.6

СЕКЦИОННЫЕ ЦЕПИ................................................................................

94

8.3.7

ПАРАЛЛЕЛЬНЫЕ СЕКЦИОННЫЕ ЦЕПИ..............................................

97

8.3.8

ИНВЕРТИРОВАННЫЕ СПИСКИ..............................................................

98

8.3.9

КОСВЕННЫЙ ИНДЕКС..............................................................................

98

8.3.10

СЕКЦИОННЫЕ ИНВЕРТИРОВАННЫЕ СПИСКИ ................................

99

8.3.11

ПАРАЛЛЕЛЬНЫЕ СЕКЦИОННЫЕ ИНВЕРТИРОВАННЫЕ СПИСКИ

 

99

 

8.3.12

ПАРАЛЛЕЛЬНЫЕ ОПЕРАЦИИ ПОИСКА.............................................

102

8.3.13

ЦЕПИ В ИНДЕКСЕ....................................................................................

102

9 . Датологический уровень. Сетевая модель...........................................................

104

9.1 ПРОСТЫЕ И СЛОЖНЫЕ СЕТЕВЫЕ СТРУКТУРЫ....................................

104

9.2 ДАННЫЕ ПЕРЕСЕЧЕНИЯ..............................................................................

106

9.2.1

Связи ТИПА м:м............................................................................................

107

9.2.2

ЦИКЛЫ........................................................................................................

109

9.2.3

ПЕТЛИ.........................................................................................................

109

9.2.4ПРИВЕДЕНИЕ СЕТЕВЫХ СТРУКТУР К БОЛЕЕ ПРОСТОМУ ВИДУ

 

 

111

 

 

9.2.5

Категории схем ...........................................................................................

114

10

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

114

10.1

. ДЕРЕВЬЯ ......................................................................................................

115

 

10.1.1

СБАЛАНСИРОВАННЫЕ И ДВОИЧНЫЕ ДЕРЕВЬЯ............................

116

 

10.1.2

ПРОСТОЕ И СЛОЖНОЕ ОТОБРАЖЕНИЕ............................................

118

 

10.1.3

ИЕРАРХИЧЕСКИЕ ФАЙЛЫ....................................................................

119

 

10.1.4

НАБОРЫ CODASYL..................................................................................

120

 

10.1.5

ОДНОРОДНЫЕ СТРУКТУРЫ .................................................................

120

 

10.1.6

ЗАВИСИМОСТЬ ОТ ПУТИ......................................................................

121

11

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

123

11.1

. Элементы теории множеств........................................................................

123

 

11.1.1

Множества...................................................................................................

123

11.2

. Операции над множествами........................................................................

124

 

11.2.1

Декартово произведение множеств ..........................................................

124

11.3

. Отношение....................................................................................................

125

11.4

. Примеры отношений....................................................................................

126

 

11.4.1

Бинарные отношения (отношения степени 2) .........................................

126

 

11.4.2

Отношение эквивалентности.....................................................................

126

 

11.4.3

Отношения порядка....................................................................................

127

 

11.4.4

Функциональное отношение.....................................................................

128

 

11.4.5

Еще пример бинарного отношения...........................................................

128

 

11.4.6

n-арные отношения (отношения степени n).............................................

130

4

 

 

11.4.7

Транзитивное замыкание отношений.......................................................

132

11.5

. Выводы..........................................................................................................

133

12 . Базовые понятия реляционной модели данных ..................................................

134

12.1

. Общая характеристика реляционной модели данных..............................

134

12.2

. Типы данных.................................................................................................

134

12.2.1

Простые типы данных................................................................................

135

12.2.2

Структурированные типы данных............................................................

135

12.2.3

Ссылочные типы данных...........................................................................

136

12.3

. Типы данных, используемые в реляционной модели ..............................

136

12.3.1

Домены.........................................................................................................

137

12.4

. Отношения, атрибуты, кортежи отношения .............................................

138

12.4.1

Определения и примеры ............................................................................

138

12.4.2

Свойства отношений..................................................................................

140

12.5

. Первая нормальная форма...........................................................................

141

12.6

. Выводы..........................................................................................................

142

13 . Элементы модели "сущность-связь" ....................................................................

143

13.1

. Основные понятия ER-диаграмм................................................................

143

13.2

. Пример разработки простой ER-модели....................................................

146

13.3

. Концептуальные и физические ER-модели...............................................

149

13.4

. Выводы..........................................................................................................

150