Меню
Главная
УСЛУГИ
Авторизация/Регистрация
Реклама на сайте
 
Главная arrow Информатика arrow Базы данных
< Предыдущая   СОДЕРЖАНИЕ   Следующая >

Предисловие

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

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

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

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

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

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

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

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

Замечания и пожелания по содержанию книги направлять по адресу: 127994, Москва, ГСП-4, Неглинная ул., д. 29/14, издательство "Высшая школа".

Авторы

Введение

Основные теоретические разработки по базам данных относятся к 1983-1987 гг.

Оми нашли свое отражение в публикациях [7–13], среди которых выделяются такие фундаментальные работы, как [11 – 13].

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

Потребовались, таким образом, работы с системным изложением материала от теории до практики, что особенно актуально в силу сложности материала по базам данных. Такие заслуживающие внимания работы появились в конце 90-х годов XX в. [1–6, 17].

Работа [4] посвящена преимущественно теории централизованных реляционных баз данных, характеризуется большим количеством упражнений и опирается при проектировании БД на специфические ER-диаграммы. Из других многочисленных аспектов баз данных в работе конспективно освещены лишь особенности объектно- ориентированных языков запросов.

Только централизованным реляционным БД посвящена и работа [6] с акцентом в проектировании на ER-диаграммы и CASE-технологию.

В публикации [17] четко методически изложены отдельные теоретические аспекты баз данных (хранилища данных, параллельные БД).

Работа [3] носит обзорно-теоретический характер. Она полезна скорее преподавателям и научным сотрудникам для систематизации имеющихся знаний по базам данных. Начальное изучение вопросов, связанных с БД, с помощью такой книги проблематично.

Работы [3, 4, 6, 17] не могут, по нашему мнению, претендовать на роль системного изложения материалов по базам данных. К "системным" работам следует отнести публикации [1,2, 5].

В работе [5], отличающейся хорошим терминологическим сопровождением, изложено современное состояние теории баз данных. В то же время, на наш взгляд, порядок изложения методически недостаточно продуман, а прикладной материал практически отсутствует.

Наиболее фундаментальной в теоретическом плане является работа [2], рассчитанная на разработку – с использованием ER-диаграмм – концептуальной и логической моделей, в том числе в рамках хранилища данных.

В наибольшей мере требованию системности изложения материала удовлетворяет работа [I]. Вместе с тем она характеризуется, по нашему мнению, недостаточной системностью изложения. Так, описания СУБД нс иллюстрируются примерами компьютерной реализации БД. Прикладная часть работы явно не связана с обсуждаемыми вопросами в теоретической части, что делает эти части фактически автономными.

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

Работа состоит из введения, 15 глав, заключения, и приложений. В главах 1 – 13 рассмотрены теоретические вопросы, главы 14, 15 посвящены прикладным вопросам реализации баз данных.

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

Главы 1–4 посвящены общим положениям, связанным с базами данных.

В главе 1 приводится система определений, среди которых основными являются термины "данные", "информация", "знания" и их соотношения. Вводится понятие "база данных – БД", определяются статическая и динамическая разновидности БД.

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

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

Рассмотрена блок-схема БД, в которой выделены основные составляющие: собственно база данных, интерфейс пользователя, алгоритм приложения.

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

Описана методология использования (с процедурой запроса).

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

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

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

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

Для автоматизации проектирования как небольших, так и сверхбольших БД предназначена CASE-технология.

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

Реализация CASE-технологии осуществляется CASE-средства- ми, которые могут быть встроены в СУБД (например, Oracle) или выполняться отдельно (например, CASE*Diclionary, CASE*Designer, CASE*Generator). Дана краткая характеристика автономных CASE- средств.

Глава 4 посвящена теории реляционных БД. Уточнены понятия "отношение", "ключ", являющиеся основными в реляционной модели данных.

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

Рассмотрены понятия "безопасность", "целостность", "защита" данных, проанализированы источники нарушения целостности и варианты защиты данных. Описана суть хранилищ данных и их организация.

Теория использования БД при создании запросов опирается на РА и РИ. Показано, что РА "выходит" па алгоритмические языки программирования, которые неудобны для пользователей-непрофессионалов (ПН) в программировании. В то же время РИ является основой для декларативных языков программирования SQL, служащего средством связи между различными реляционными СУБД, и QBL (запрос по примеру). Последний является визуальным языком, понятным ПН и потому широко используемым в СУБД (например, Access). Рассмотрены теоретические предпосылки оптимизации запросов.

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

Главы 5–10 посвящены прикладным вопросам централизованных (локальных) баз данных.

В главе 5 рассмотрены терминология, процедуры построения и использования реляционных БД. Подробно рассмотрен язык SQL при использовании его в обеих перечисленных процедурах. Представлены три разновидности языка SQL: интерфейсный, вложенный и встроенный. Описан пример использования языка QBE.

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

Глава 7 посвящена объектно-ориентированным базам данных (ООБД). Рассмотрена суть объектно-ориентированного подхода, объектно-ориентированного проектирования и объектно-ориентированного программирования, состояние и перспективы развития ООБД. Описана многомерная модель данных (как основа построения собственно ООБД), разновидности ее реализации: многомерная (MOLAP), реляционная (ROLAP), гибридная (HOLAP). Определено понятие "киоск (магазин, витрина) данных". Рассмотрены элементы структуры и их связи для многомерной модели, специфическая терминология этой разновидности моделей данных на примерах ООБД РОЕТ и CACHE. Показана связь ООБД с реляционными БД. Рассмотрены перспективы развития ООБД.

В главе 8 обсуждаются две разновидности "промежуточной" объектно-реляционной модели данных: гибридные, расширенные объектно-реляционные БД. Указана их специфика. Представлен программный продукт Delphi, на котором реализована гибридная ОРБД.

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

Главы 10–13 посвящены распределенным базам данных (РБД).

В главе 10 рассмотрены общие характеристики таких систем. Сформулированы новые требования, предъявляемые к вновь проектируемым БД и вызвавшие потребность в РБД. Дастся определение РБД, ее состав и описание работы. Выделяются основные разновидности структуры РБД: одноранговая (наиболее сложная по структуре), клиент-сервер и смешанная. Приволен пример-описание одноранговой РБД, дана сравнительная характеристика стратегий хранения данных в РБД. Описаны особенности и варианты структуры клиент-сервер. Рассмотрены особенности реализации этой структуры н СУБД Paradox и InterBase (в рамках программного продукта Delphi).

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

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

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

Рассмотрены процессы преобразования "реляционная – сетевая", "реляционная – иерархическая" модели данных.

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

В главе 13 обсуждаются вопросы Web-публикаций баз данных в Internet. Определяется понятие "публикация", рассматриваются основы используемого для публикации языка программирования HTML и приводится прикладной пример с использованием программного продукта Delphi.

Главы 14, 15 освещают вопросы реализации баз данных с помощью различных СУБД. Рассмотрены общие вопросы реализации баз данных и традиционный подход на примере базы данных "Учебный процесс".

Обсуждаются два варианта реализации. В локальном варианте используется СУБД Access, для режима клиент-сервер – СУБД InterBase. В обоих вариантах процесс проектирования и реализации рассматривается в полном объеме.

Глава 15 посвящена современному подходу с использованием СУБД InterBase на примере процедуры приема на работу. Компьютер выдает руководителю решения-советы, которые могут быть руководителем приняты или отвергнуты (с корректировкой решений). Процедура проектирования по-прежнему рассматривается в полном объеме. Описываются как локальный, так и удаленный варианты режима клиент-сервер, вопросы реализации одно- и многоуровневой структуры с использованием программного продукта Delphi.

В заключении подводятся итоги изучения баз данных.

В приложении 1 приведены основные характеристики БД "Учебный процесс". Приложения 2 и 3 содержат программы, используемы при работе с СУБД InterBase в рамках приложения Delphi.

 
Если Вы заметили ошибку в тексте выделите слово и нажмите Shift + Enter
< Предыдущая   СОДЕРЖАНИЕ   Следующая >
 
Предметы
Агропромышленность
Банковское дело
БЖД
Бухучет и аудит
География
Документоведение
Журналистика
Инвестирование
Информатика
История
Культурология
Литература
Логика
Логистика
Маркетинг
Медицина
Менеджмент
Недвижимость
Педагогика
Политология
Политэкономия
Право
Психология
Религиоведение
Риторика
Социология
Статистика
Страховое дело
Техника
Товароведение
Туризм
Философия
Финансы
Экология
Экономика
Этика и эстетика