1626434812-e667f6b6e7e69d3a0798830a58e9075b (844135), страница 3
Текст из файла (страница 3)
Задачи, связанные с обработкой данных, широко распространены в любой сфере деятельности. Они ведут учет товаров в супермаркетах и на складах, начисляют зарплату в бухгалтериях и т.д. Невозможно представить себе деятельность современного предприятия или учреждения без использования АИС. Эти системы составляют фундамент информационной деятельности во всех сферах, начиная с производства, управления финансами и телекоммуникациями и заканчивая управлением семейным бюджетом. Массивы информации, накопленные в АИС, должны быть оптимальным образом организованы для их компьютерного хранения и обработки, должна обеспечиваться их целостность и непротиворечивость. Используя функции стандартных файловых систем, невозможно добиться нужной производительности при решении подобных задач, поэтому все автоматизированные информационные системы опираются на СУБД вЂ” системы управления базами данных.
1.2. Системы управления базами данных Любая АИС оперирует той или иной частью реального мира- предметной областью. Предметная область рассматривается как некоторая совокупность реальных объектов (сущностей) и связей между ними. Каждый обьект обладает определенным набором свойств (атрибутов). Например, в системе автоматизации бухгалтерии организации требуется хранить сведения о сущностях — ее служащих, К признакам (атрибутам) сущностей, которые будут актуальны для этой информационной системы, можно отнести: личный номер, имя сотрудника, его должность, стаж работы и тд. Каждый признак объекта имеет конкретное значение„например, значение атрибута "стаж работы" объекта "служащий" может быть равно "10". Это отражаст факт, что стаж работы конкретного служащего составляет 10 лет. Предметная область может включать не только физические объекты, но и сведения о процессах, абстракциях.
Между сущностями могут существовать связи разного рода. Так, любой служащий принадлежит некоторому отделу организации, поэтому в число атрибутов сотрудника может потребоваться включить атрибут "отдел", Предметная область АИС "материализуется" в форме хранимой в памяти ЭВМ структурированной совокупности данных, которые характеризуют состав объектов предметной области, их свойства и взаимосвязи. Такое отражение предметной области принято называть базой данных (БД). Гчава 1. Базы данных в фактографических системах Предполагается, что создание базы данных, поддержание ее в актуальном состоянии и обеспечение эффективного доступа пользователей и их приложений к содержащейся в ней информации осуществляется с помощью специального программного инструментария — системы управления базами данных (СУБД, ОВМС вЂ” Ва1аВазе Мападепьеп! Зузсегпа).
Системы управления базами данных появились в конце 60-х — начале 70-х годов. СУБД первого поколения были ориентированы на мэйнфрэймы, доминировавшие в то время. Возможности первых СУБД были ограниченными, они имели много недостатков, однако АИС на их базе используются до сих пор. СУБД постоянно совершенствовались — возникали новые подходы к хранению и обработке данных, организации процесса разработки баз данных и приложений на их основе. Сегодня системы управления базами данных представляют собой совершенные инструменты, которые могут быть успешно применены в различных областях человеческой деятельности.
1.3. Модели данных Спосоо отображения сущностей, атрибутов и связей на структуры данных определяется моделью данных. Принято выделять иерархическую, сетевую, реляционную модели данных и иногда модель на основе инвертированных списков, Соответственно говорят об иерархических, сетевых„реляционных СУБД или СУБД на базе инвертированных списков 11-51. Иерархическая модель позволяет строить базы данных с иерархической древовидной структурой.
Эта структура определяется как дерсво, образованное попарными связями. На самом верхнем уровне дерева имеется один узел, называемый корнем. Все другие узлы, кроме корня, связываются только с одним узлом на более высоком по отношению к ним самим уровне (см. рис. 1.1). Например, на рис. !. ! объект "Организация" — предок для объектов "Отделы" и "Филиалы".
Основное достоинство иерархической модели — простота описания иерархических структур реального мира. Если в модели каждый порожденный элемент может иметь более одного исходного, то такая модель называстся сетевой. В ней элемент может быть связан с любым другим, без каких-либо ограничений. Сетевая БД состоит из набора записей, соответствующих каждому экземпляру объекта предметной области. и набора связей между ними.
Так, например, информация об участии сотрудников в проектах организации может быть представлена в сетевой БД 1см. рис. 1.2). В данном примере сетевая модель хорошо отражает то, что в проекте могут участвовать разные сотрудники и в то же время сотрудник может участвовать в различных проектах. Базы данных. Иннзаллекзнуальнан обработка информации Рис. 1.1. Пример иерархической древовидной структуры БД пр км Проект 2 Проект 1 Рис. 1.2.
Пример сетевой структуры В реляционных базах данных вся информация представляется в виде прямоугольных таблиц. Реляционная модель была разработана Коддом в начале 70-х годов. С ее созданием был начат новый этап в эволюции СУБД. Простота и гибкость модели привлекли к ней внимание разработчиков и снискали ей множество сторонников. Несмотря на некоторые недостатки, реляционная модель данных стала доминирующей, а реляционные СУБД стали промышленным стандартом "де-факто". Реляционная модель опирается на систему понятий реляционной алгебры, важнейшие из которых: таблица, отношение, строка, столбец, первичный ключ. Все операции над реляционной базой данных сводятся к манипуляциям с таблицами. Таблица состоит из строк и столбцов и имеет имя, уникальное внутри базы данных.
Таблица отражает тип объекта реального мира (сущность), а каждая ее строка ~кортеж) — конкретный объект (см. рис. 1.3). Например, таблица Хаааа 1. Базы Данных в фактпографических системах "Сотрудники отдела" содержит сведения обо всех сотрудниках отдела, каждая ее строка — набор значений атрибутов конкретного сотрудника. Значения конкретного атрибута выбираются из домена ~допта1п) — множества всех возможных значений атрибута объекта.
Имя столбца должно быть уникальным в таблице. Столбцы расположены в таблице в соответствии с порядком следования их имен при ее создании. Любая таблица должна иметь по крайней мере один столбец. В отличие от столбцов строки не имеют имен. Порядок их следования в таблице не определен, а количество логически не ограничено. Так как строки в таблице не упорядочены, невозможно выбрать строку по ее позиции — среди них не существует "первой" и "последней". Название таблицы Атрибуты Сотрудники отдела Кортежи (строки) Первичный ключ Рис. 1.3. Отногаенне ретнцнонной БД Любая таблица имеет один или несколько столбцов, значения в которых однозначно идентифицируют каждую ее строку.
Такой столбец «или комбинация.столбцов) называется первичным ключом. В таблице "Сотрудники отдела" первичным ключом служит столбец "Номер пропуска". В таблице не должно быть строк, имеющих одно и то же значение псрвичпого ключа. Если таблица удовлетворяет этому требованию, она называется отношением. Взаимосвязь таблиц в реляционной модели поддерживается внешними ключами.
Внешний ключ — это столбец, значения которого однозначно характеризуют сущности, подставленные строками некоторого другого отношения, то есть задают значения их первичного ключа. Говорят, что отношение, в котором определен внешний ключ, ссылается на соответствующее отношение, в котором такой же атрибут является первичным ключом.
Таблицы невозможно хранить и обрабатывать, если в базе данных отсутствуют "данные о данных" (метаданные), например, описатели таблиц, столб- Базы данных. Интеллектуальная обработка информации цов и т.д. Метаданные также представлены в табличной форме и хранятся в словаре данных. Помимо таблиц в БД могут храниться и другие обьекты, такие как экранные формы, шаблоны отчетов и прикладные программы, работающие с информацией базы данных. Для пользователей информационной системы важно, чтобы база данных отражала предметную область однозначно и непротиворечиво.
Если она обладает такими свойствами, то говорят, что БД удовлетворяет условию целостности. Чтобы добиться выполнения условия целостности, на базу данных накладываются некоторые ограничения, которые называют ограничениями целостности, Выделяют два основных типа ограничений целостности: целостность сущностей и целостность ссылок. Ограничение первого типа состоит в том, что любой кортеж отношения должен быть отличим от любого другого его кортежа, т.е., другими словами, любое отношение должно обладать первичным ключом. Это требование удовлетворяется автоматически, если в системе нс нарушаются базовые свойства отношений. Ограничение целостности по ссылкам заключается в том, что внешний ключ не может быть указателем на несуществующую строку в таблице. Доминирование реляционной модели в современных СУБД обусловлено рядом причин, в числе которых: 1) наличие развитой теории реляционной модели данных, которая поддержана теоретическими исследованиями в большей степени по сравнению с другими моделями; 2) наличие аппарата сведения к реляционной других моделей данных; 3) поддержка реляционной моделью специальных средств ускоренного доступа к информации; 4) возможность манипулирования данными без необходимости знания конкретной физической организации БД во внешней памяти; 5) наличие стандартизованного высокоуровневого языка запросов к базам данных.
Базы данных, организованные с помощью инвертированных списков, похожи на реляционную БД. Отличия заключаются в следующем: 1) хранимые таблицы и индексы для ключей поиска напрямую доступны пользователям; 2) строки таблиц упорядочены системой в некоторой физической последовательности. 1.4. Операции над отношениями реляционных БД Для манипулирования отношениями используют операции реляционной алгебры ~1 — 31. Эти операции — мощное средство выделения необходимых дан- Глава 1. Базы диииых в фактагрвфичвских сисии"иах ных из большой совокупности разнородной информации. Отношения реляци- онной алгебры — это множества, поэтому средства работы с отношениями ба- зируются на традиционных операциях теории множеств, которые дополняют- ся некоторыми специальными операциями, специфичными для баз данных.
Чаще всего выделяют следующие операции реляционной алгебры: 1) объединение отношений; 2) пересечение отношений; 3) разность отношений; 4) произведение отношений; 5) деление отношений; б) ограничение отношения; 7) проекция отношения; 8) соединение отношений. Кроме перечисленных выше, в СУБД, как правило, реализуются также опе- рация присваивания, позволяющая, сохранять в базе данных результаты обра- ботки, и операция переименования атрибутов. Не вдаваясь в детали, операции реляционной алгебры могут быть описаны следуюшим образом. 1) Операция объединения двух отношений позволяет создать отношение, включающее все строки отношений-операндов. Отношения-операнды должны иметь одинаковый набор атрибутов.