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

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

Покупка
Артикул: 822756.01.99
Доступ онлайн
700 ₽
В корзину
Пособие представляет курс лекций, освещающий наиболее важные разделы теории баз данных и экспертных систем. В нём рассматриваются основные понятия баз данных, методы их проектирования, включая метод нормальных форм, метод «сущность - связь» и CASE-средства, предназначенные для автоматизации проектирования реляционных баз данных. Излагаются основные положения, связанные с разработкой экспертных систем на основе продукционной модели представления знаний, их применением и возникающие при этом проблемы. Изложение материала сопровождается содержательными примерами, приводятся вопросы и упражнения для самопроверки. Предназначено для студентов, обучающихся по направлению подготовки 01.03.02 Прикладная математика и информатика, направленность (профиль) «Математическое моделирование и вычислительная математика».
Макоха, А. Н. Базы данных и экспертные системы : учебное пособие (курс лекций) / А. Н. Макоха, И. А. Журавлева. - Ставрополь : Изд-во СКФУ, 2020. - 336 с. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2133600 (дата обращения: 21.11.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
МИНИCTEPCTBO НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ 

 

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ  

УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ 

«СЕВЕРО-КАВКАЗСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ» 

 
 
 
 

 

А. Н. Макоха, И. А. Журавлёва 

 
 
 

БАЗЫ ДАННЫХ  

И ЭКСПЕРТНЫЕ СИСТЕМЫ  

 
 

УЧЕБНОЕ ПОСОБИЕ  

(КУРС ЛЕКЦИЙ) 

 

Направление подготовки 01.03.02 Прикладная математика  

и информатика 

  

Направленность (профиль) «Математическое моделирование  

и вычислительная математика» 

 

Квалификация выпускника – бакалавр 

 
 
 
 
 
 
 
 
 

Ставрополь 

2020 

УДК 004.891 (075.8)
ББК 32.814 я73

М 16

Печатается по решению 

редакционно-издательского совета 
Северо-Кавказского федерального

университета

 

 

  

Рецензенты: 

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

и разработкам ООО «Инфоком-С» В. В. Копытов, 

директор ООО «Компьютер Премиум» В. К. Гулиян 

 
 
 

Макоха А. Н., Журавлёва И. А.  

М 16 
Базы данных и экспертные системы: учебное пособие 
(курс лекций). – Ставрополь: Изд-во СКФУ, 2020. – 336 с. 

 

Пособие представляет курс лекций, освещающий наиболее 

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

Предназначено для студентов, обучающихся по направлению 

подготовки 01.03.02 Прикладная математика и информатика, направленность (профиль) «Математическое моделирование и вычислительная математика». 

 

УДК 004.891 (075.8) 
ББК 32.814 я73 

 

 
 

© ФГАОУ ВО «Северо-Кавказский  

федеральный университет», 2020 

ПРЕДИСЛОВИЕ 

 

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

В начале 80-х годов прошлого века в исследованиях по искус
ственному интеллекту сформировалось самостоятельное направление, 
получившее название «Экспертные системы» (ЭС). Основным назначением ЭС является разработка программных средств, которые при 
решении задач, трудных для человека, получают результаты, не уступающие по качеству и эффективности решения, решениям получаемым человеком-экспертом. ЭС используются для решения так называемых неформализованных задач, общим для которых является то, 
что:  

 задачи не могут быть заданы в числовой форме;  
 цели нельзя выразить в терминах точно определенной целевой 

функции;  

 не существует алгоритмического решения задачи; 
 если алгоритмическое решение есть, то его нельзя использовать 

из-за ограниченности ресурсов (время, память).  

Кроме того, неформализованные задачи обладают ошибочно
стью, неполнотой, неоднозначностью и противоречивостью как исходных данных, так и знаний о решаемой задаче.  

Все это обусловливает большую потребность в квалифицирован
ных кадрах, способных как создавать информационные системы на 
основе СУБД, так и уметь разрабатывать ЭС в той или иной предметной области. 

В связи с этим все большую актуальность приобретает освоение 

студентами основных принципов построения и эффективного применения соответствующих технологий и программных продуктов. 

Основные цели изучения дисциплины «Базы данных и эксперт
ные системы» включают в себя:  

 формирование у студентов концептуальных представлений 
 об основных принципах построения ИС, БД, СУБД и ЭС,  
 о различных моделях представления данных в БД и знаний в ЭС,  

 о принципах проектирования баз данных, 
 об основных этапах разработки ЭС;  
 ознакомление студентов  
 с теоретическими основами построения БД, в первую очередь, 

реляционных, 

 с возможностями современных СУБД,  
 с современными тенденциями развития СУБД и ЭС;  
 овладение технологиями БД, ЭС и практическими навыками 

их применения в своей будущей профессиональной деятельности.  

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

дисциплины необходимо решить следующие задачи: 

 изучить  
  современные модели представления информации в БД, 
  технологию физического хранения данных и доступа к ним, 
  основные функции, назначение и архитектуру СУБД,  
  области использования БД и СУБД, 
  основные компоненты реляционной модели данных, 
  операции реляционной алгебры и реляционного исчисления, 
  синтаксис основных команд структурированного языка запро
сов SQL, 

 аналитические и графические методы проектирования БД,  

в частности, метод нормальных форм отношений, 

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

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

 освоить на практике работу с БД в современных СУБД, в том 

числе, сетевых, 

 строить собственную экспертную систему на продукционной 

модели представления знаний, 

  реализовывать экспертную систему в оболочковой системе,  

 работать в сети Internet с базами данных и базами знаний. 
Освоение данной дисциплины позволит будущему специалисту в 

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

1. Способность к анализу требований и разработке вариантов 

реализации информационной системы; способность к оценке качества, надежности и эффективности информационной системы в конкретной профессиональной сфере (ПК-7). 

2. Способность к установке, администрированию программных 

систем; к реализации технического сопровождения информационных 
систем; к интеграции информационных систем с используемыми аппаратно-программными комплексами (ПК-8). 

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

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

 
 

 
 

РАЗДЕЛ I. ВВЕДЕНИЕ В ТЕОРИЮ БАЗ ДАННЫХ 

 
 

1. ОСНОВНЫЕ ПОНЯТИЯ 

 

План лекции 
1.1. Понятие данных. Представление данных в виде файлов в памяти 

компьютера. 

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

1.3. Технология физического хранения данных и доступа к ним. 

  

 
Рассмотрим общий смысл понятий БД и информационных систем. 

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

Второе направление, которое непосредственно касается темы 

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

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

Вначале использовались два вида устройств внешней памяти: 

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

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

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

 

1.1. Понятие данных. Представление данных в виде фай
лов в памяти компьютера 

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

Данным приписываются несколько классификационных при
знаков. 

2. Тип данных определяет: 
 • набор их допустимых значений; 
 • правила их обработки (преобразования); 
 • порядок их размещения в ОЗУ и ВЗУ при хранении; 
 • порядок доступа к ним (т.е. обращение и извлечение при необ
ходимости с места хранения). 

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

2. Структуры данных.  
Элементарные данные – символы, числа (целые, вещественные 

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

Элементарные данные являются «кирпичиками», путем объе
динения которых строятся сложные (структурированные) данные. 
Вариантов объединения существует много – это приводит к появлению множества типов структур данных.  

Примерами структурированных типов данных являются:  
 записи,  
 массивы,  
 стеки,  
 деки,  
 очереди,  
 списки (однонаправленные, двунаправленные, кольцевые),  
 файлы,  
 деревья  
и др. 
Сложные данные, как и элементарные, имеют значения и иден
тификаторы.  

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

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

Данные – это совокупность сведений, которые зафиксированы на 

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

Очередным историческим шагом на пути усовершенствования 

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

Практически во всех современных компьютерах основными 

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

Однако эта возможность обмениваться с магнитными дисками 

порциями меньше объема блока в настоящее время не используется в 

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

Поэтому во всех файловых системах явно или неявно выделяется 

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

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

пользователю, но чаще прикрывается некоторым более высоким 
уровнем, стандартным для пользователей. Распространены два основных подхода. При первом подходе, свойственном, например, файловым системам операционных систем фирмы DEC RSX и VMS, пользователи представляют файл как последовательность записей. Каждая 
запись – это последовательность байтов постоянного или переменного размера. Записи можно читать или записывать последовательно или позиционировать файл на запись с указанным номером. 
Некоторые файловые системы позволяют структурировать записи на 
поля и объявлять некоторые поля ключами записи. В таких файловых 
системах можно потребовать выборку записи из файла по ее заданному ключу. Естественно, что в этом случае файловая система поддерживает в том же (или другом, служебном) базовом файле дополнительные, невидимые пользователю, служебные структуры данных. Распространенные способы организации ключевых файлов основываются на технике хеширования и B-деревьев. Существуют и 
многоключевые способы организации файлов. 

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

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