Учебное пособие Для студентов университетов Специальностей «Информатика», «Прикладная математика»



Pdf көрінісі
бет44/177
Дата15.02.2022
өлшемі2,58 Mb.
#25567
түріУчебное пособие
1   ...   40   41   42   43   44   45   46   47   ...   177
 
 
 
 
 
 
 
 
Работник 
 
Табельный номер 
ФИО 
Должность 
Стаж 
 
Заказ 
 
Код  
Табельный номер (FK) 
Дата 
Перечень  
Стоимость 
Рис. 8. ER-диаграмма и отношения для неидентифицирующей связи и 
мощностью связи 1: M 
 
                                   M                                                     M 
 
 
 
 
 
 
 
 
 
 
                                         
Работник 
Выполняет 
 
Заказ 
 
Заказ 
 
Код  
Дата 
Перечень  
Стоимость 
 
Работник          
 
Табельный номер 
ФИО 
Должность 
Стаж 
Работник_Заказ 
 
Табельный номер (FK) 
Код (FK) 
 
Рис. 9. ER-диаграмма и отношения для неидентифицирующей связи и 
мощностью связи M : M 
6. СТРУКТУРА И ОСНОВНЫЕ ФУНКЦИИ СУБД 
6.1. ТИПОВАЯ ОРГАНИЗАЦИЯ СОВРЕМЕННОЙ СУБД 
Организация  и  состав    компонентов  типичной  СУБД  соответствуют 
выполняемому  ею  набору  функций.  Выделяют  следующие  основные 
функции СУБД:  
1)  поддержка языков БД;  
2)  управление данными во внешней памяти;  
3)  управление буферами оперативной памяти;  
4)  управление транзакциями;  
5)  журнализация и восстановление БД после сбоев.  
 
60


 
Более подробно эти функции будут рассмотрены далее
Логически в современной реляционной СУБД можно выделить внут-
реннюю часть – ядро СУБД (часто его называют Data Base Engine), ком-
пилятор  языка  БД  (обычно SQL), подсистему  поддержки  времени  вы-
полнения,  набор  утилит.  В  некоторых  системах  эти  части  выделяются 
явно, в других – нет, но логически такое разделение можно провести во 
всех СУБД.  
Ядро  СУБД  отвечает  за  управление  данными  во  внешней  памяти, 
управление  буферами  оперативной  памяти,  управление  транзакциями  и 
журнализацию. Соответственно можно выделить такие компоненты ядра 
(по крайней мере, логически, хотя в некоторых системах эти компоненты 
выделяются  явно),  как  менеджер  данных,  менеджер  буферов,  менеджер 
транзакций и менеджер журнала. Функции этих компонентов взаимосвя-
заны,  и  для  обеспечения  корректной  работы  СУБД  все  эти  компоненты 
должны  взаимодействовать  по  тщательно  продуманным  и  проверенным 
протоколам.  Ядро  СУБД  обладает  собственным  интерфейсом,  не  дос-
тупным пользователям напрямую и используемым в программах, произ-
водимых компилятором SQL (или в подсистеме поддержки выполнения 
таких  программ)  и  утилитах  БД.  Ядро  СУБД  является  основной  рези-
дентной  частью  СУБД.  При  использовании  архитектуры  «клиент–
сервер» ядро является основной составляющей серверной части системы.  
Основной функцией компилятора языка БД является компиляция опе-
раторов языка БД в некоторую выполняемую программу. Основной про-
блемой  реляционных  СУБД  является  то,  что  языки  этих  систем  (а  это, 
как  правило, SQL) являются  непроцедурными,  т.  е.  в  операторе  такого 
языка  специфицируется  некоторое  действие  над  БД,  но  эта  специфика-
ция не является процедурой, а лишь описывает в некоторой форме усло-
вия  совершения  желаемого  действия.  Поэтому  компилятор  должен  ре-
шить, каким образом выполнять оператор языка, прежде чем произвести 
программу.  Применяются  достаточно  сложные  методы  оптимизации 
операторов. Результатом компиляции является выполняемая программа, 
представляемая в некоторых системах в машинных кодах, но более часто 
в  выполняемом  внутреннем  машинно-независимом  коде.  В  последнем 
случае  реальное  выполнение  оператора  производится  с  привлечением 
подсистемы поддержки времени выполнения, представляющей собой, по 
сути дела, интерпретатор этого внутреннего языка.  
Наконец, в отдельные утилиты БД обычно выделяют такие процеду-
ры,  которые  слишком  накладно  выполнять  с  использованием  языка  БД, 
например загрузка и выгрузка БД, сбор статистики, глобальная проверка 
целостности БД и т. д. Утилиты программируются с использованием ин-
 
61


 
терфейса ядра СУБД, а иногда даже с проникновением внутрь ядра.  
Рассмотрим подробнее функции СУБД. 


Достарыңызбен бөлісу:
1   ...   40   41   42   43   44   45   46   47   ...   177




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет