Bazy_dannykh_Uchebnik_novy
.pdf2. Информационные системы, банки данных и СУБД
Информационная система
Международная организация по стандартизации International Standardization Organization
дает определение в документе, определяющем взаимодействие открытых систем.
Системой называют совокупность, состоящую из персонала, одного либо нескольких компьютеров, соответствующих средств программирования,
физических процессов, средств телекоммуникаций и других объектов,
образующих автономное целое, способное осуществлять обработку данных или передачу данных.
Информационная система состоит из
-баз данных, в которых накапливается информация,
-источника информации,
-аппаратной части ИС,
-программной части ИС,
-потребителя информации.
Вшироком смысле трактует понятие информационной системы Федеральный закон РФ от
27 июля 2006 г. N 149-ФЗ «Об информации, информационных технологиях и о защите
информации»:
информационная система - совокупность содержащейся в базах данных
информации и обеспечивающих ее обработку информационных технологий и
технических средств.
В узком смысле информационной системой называют только подмножество компонентов,
включающее базы данных, СУБД и специализированные прикладные программы.
Классификация информационных систем по архитектуре
-Локальные ИС (работающие на одном электронном устройстве, не заимодействующем с сервером или другими устройствами)
-Клиент-серверные ИС (работающие в локальной или глобальной сети с единым сервером)
-Распределенные ИС (децентрализованные системы в гетерогенной многосерверной сети)
Банк данных
БнД - может рассматриваться в узком и широком смысле этого понятия. В узком смысле БнД = Бд + СУБД. В широком смысле БнД = АИС (автоматизированная информационная система)
11
Банк данных (БнД)
это автоматизированная информационная система (АИС), включающая в свой состав комплекс специальных методов и средств (математических, информационных, программных, языковых, организационных, технических) для поддержания динамической информационной модели предметной области с целью обеспечения обработки информационных запросов пользователя. Определение термина Банк данных дано во Временном положении о государственном учете и регистрации баз и банков данных, утвержденное постановлением Правительства Российской Федерации от 28.02.96 № 226, п.2 (СЗ РФ, 1996, № 12, ст. 1114).
Под базой данных понимается совокупность организованных взаимосвязанных данных на машиночитаемых носителях. Под банком данных понимается совокупность баз данных, а также программные, языковые и другие средства, предназначенные для централизованного накопления данных и их использования с помощью электронных вычислительных машин.
Государственной базой данных во Временном положении называется база данных, созданная, приобретенная или накапливаемая за счет или с привлечением средств федерального бюджета. Государственные базы данных подлежат обязательному государственному учету и регистрации. Государственный учет баз данных осуществляется на этапе их разработки. Государственная регистрация баз данных осуществляется после передачи их в эксплуатацию. Государственная регистрация любых негосударственных баз данных осуществляется на добровольной основе. Учет банков данных осуществляется на основе сведений об используемых в них зарегистрированных базах данных.
Основные элементы банка данных.
Технические средства включают в себя
-универсальную ЭВМ,
-периферийные средства вводавывода информации,
-средства работы в сети.
Организационно - методические средства
– это инструкции, методические и регламентные материалы для пользователей.
Персонал
- это специалисты, которые обеспечивают создание, работу и развитие БнД.
Основные задачи, решаемые персоналом банка данных
В состав обслуживающего персонала БнД входят разные специалисты:
12
администраторы БнД,
системные аналитики,
системные и прикладные программисты,
операторы,
специалисты по техническим средствам,
по маркетингу и др.
Основные функции и задачи, решаемые персоналом при разработке и эксплуатации
базы данных:
1анализ предметной области (определение потребностей конечных пользователей,
построение информационной модели предметной области, выявление ограничений целостности);
2проектирование структуры базы данных (определение состава и структуры файлов БД, описание ее схемы на языке описания данных);
3задание ограничений целостности БД;
4загрузка и ведение БД (к ведению БД относится изменение, удаление и добавление записей); разработка технологии загрузки и ведения; разработка форм ввода данных; ввод и контроль данных;
5защита данных (разграничение пользователей, выбор и проверка средств защиты,
фиксация попыток несанкционированного доступа);
6обеспечение восстановления БД;
7анализ эффективности БнД и развитие системы;
8работа с пользователями (сбор откликов, обучение);
9сопровождение системного программного обеспечения (приобретение, установка и развитие);
10организационно-методическая работа (выбор методов проектирования и модернизации, планирование развития БнД, разработка документации).
СУБД.
СУБД – система управления базами данных – информационная система,
предназначенная для создания, ведения и использования базы данных многими пользователями (прикладными программами).
13
Рисунок 1. Схема информационного взаимодействия между объектами.
Согласно рисунку 1, укрупненно процесс взаимодействия СУБД и прикладной программы состоит из следующих шагов:
Прикладная программа обращается к СУБД с запросом на чтение описания внешней модели данных (ВМД);
СУБД определяет, из каких записей состоит ВМД и на основе концептуальной модели данных выбирает в рабочую область необходимые записи из хранимой базы;
ОС с помощью своих методов доступа считывает информацию в буферы СУБД.
На основе описания ВМД и описания соответствующих отображений формируется запись для данной программы пользователя.
Сформированная запись из буфера СУБД пересылается в рабочую область
прикладной программы и обрабатывается прикладной программой.
Первым шагом реализации представленной модели является концепция реализации СУБД, в основе которой лежит представление об уровнях абстракции данных. Есть несколько определений уровней абстракции данных.
ГОСТ 34.320-96 «Концепции и терминология для концептуальной схемы и
информационной базы» определяет следующие уровни абстракции данных.
Концептуальный уровень – то, как мы представляем себе информацию.
Логический уровень – то, как информация структурируется на уровне данных.
Физический уровеньто, как логические единицы информации хранятся на физическом уровне (файлы).
Аппаратный уровень – то, как на аппаратном уровне хранится информация
(кластеры на диске).
14
В практике разработки и создания баз данных получила распространение трехуровневая модель архитектуры баз данных, которую можно рассматривать как модель ГОСТ без нижнего - аппаратного уровня.
Стандарт ANSI/SPARC для архитектуры баз данных
Используемые в промышленности СУБД имеют много различий, но практически все они опираются на концепцию архитектуры ANSI/SPARC - американского института стандартов по проектированию баз данных. Согласно предложениям ANSI/SPARC, к
исследованию разнотипных БД можно подходить с единых позиций, если придерживаться следующей архитектуры банка данных (рисунок 2).
Рисунок 2. Архитектура базы данных согласно стандарту SPARC
Проект архитектуры был выдвинут в 1975 году организацией по стандартизации ANSISPARC. Согласно проекту архитектура базы данных имеет 3 уровня:
внешний (пользовательский)
промежуточный (концептуальный)
внутренний (физический)
Внешняя модель
15
Предназначена для пользователей. Модель абстрагируется от особенностей реализации.
Данные описываются в терминах исследуемой области. Внешний уровень состоит из нескольких различных внешних представлений БД.
Внешнее представление Каждый пользователь имеет дело с представлением предметной области,
выраженным в наиболее удобной для него форме. Внешнее представление содержит только те объекты, свойства и связи предметной области, которые интересны пользователю.
Информационное описание предметной области называется концептуальной моделью.
Концептуальной моделью называется также обобщение представлений всех пользователей о данных. Рекомендуется концептуальную модель представлять в виде набора схем. Тогда мы будем иметь дело с концептуальной схемой.
Концептуальная модель Концептуальная схема содержит описание объектов, связей между ними и
ограничений (бизнес-правил). В модели отсутствуют какие-либо понятия,
связанные с ЭВМ, памятью ЭВМ, способами размещения данных в памяти ЭВМ, и, по сути, это модель только предметной области.
Концептуальный уровень - это промежуточный уровень между двумя первыми; другими словами, это центральное управляющее звено, где база данных представлена в наиболее общем виде, который объединяет данные, используемые всеми приложениями,
работающими с данной базой.
Внутренний уровень - это уровень, наиболее близкий к физическому хранению, т.е.
связанный со способами сохранения информации на физических устройствах хранения.
Внутренняя модель Внутреннее представление описывается с помощью внутренней схемы,
которая определяет не только различные типы хранимых записей, но также существующие индексы, способы представления хранимых полей,
физическую последовательность хранимых записей и т.д.
Внутреннее представление так же, как внешнее и концептуальное, не связанно с физическим уровнем. Это представление предполагает бесконечное линейное адресное пространство.
Основным назначением архитектуры базы данных является обеспечение независимости от данных, которая означает, что изменения на нижних уровнях никак не влияют на верхние уровни. Различают два типа независимости от данных: логическую и физическую.
16
Логическая независимость
данных означает полную защищенность внешних схем от изменений, вносимых в концептуальную схему. Такие изменения концептуальной схемы, как добавление или удаление новых сущностей, атрибутов или связей, должны осуществляться без внесения изменений в уже существующие внешние схемы или переписывания прикладных программ.
Физическая независимость
от данных означает защищенность концептуальной схемы от изменений, вносимых во внутреннюю схему. Такие изменения внутренней схемы, как использование различных файловых систем или структур хранения, разных устройств хранения, модификация индексов или хеширование, должны осуществляться без необходимости внесения изменений в концептуальную или внешнюю схемы. Пользователем могут быть замечены изменения только в общей производительности системы.
Требования к архитектуре базы данных.
Архитектура базы данных должна быть такой, чтобы
Каждый пользователь должен иметь возможность обращаться к одним и тем же данным, используя свое собственное представление о них. Каждый пользователь должен иметь возможность изменять свое представление о данных, причем это изменение не должно оказывать влияния на других пользователей.
Пользователи не должны непосредственно иметь дело с подробностями физического хранения данных в базе
Администратор базы данных должен иметь возможность изменять структуру хранения данных в базе, не оказывая влияния на пользовательские представления.
Внутренняя структура базы данных не должна зависеть от таких изменений физических аспектов хранения информации, как переход на новое устройство хранения.
Администратор базы данных должен иметь возможность изменять
концептуальную или глобальную структуру базы данных без какого-либо влияния на всех пользователей.
Языковые средства СУБД
Языковые средства обеспечивают взаимодействие пользователей с БД. Язык обычно включает в себя средства спецификации данных, отчетов; экранных форм, запросов и процедурные средства для описания последовательности решения задач. Многие СУБД имеют специализированные языки, например, dBASE, FoxPro, Clipper, Paradox, Access.
Некоторые СУБД используют только язык SQL (SQLсерверы).
17
3. Онтологии. Концептуальные модели. Структуры
данных
Все базы данных создаются для представления определенной предметной области.
Предметная область
- часть реального мира, рассматриваемая в пределах данного контекста.
Под контекстом здесь может пониматься, например, область исследования или область,
которая является объектом некоторой деятельности.
«Основной характеристикой баз данных является совместное использование многими пользователями системы. Совместно используя общие данные пользователи устанавливают диалог другом через систему. Должно существовать какое-то общее понимание информации, представленной данными. Общее понимание должно относиться к чему-то внешнему по отношению к пользователям. Оно должно быть зафиксировано» [ГОСТ
34.320-96].
Для того, чтобы создать такое описание используется понятие онтологии. Этот термин в информатике является производным от древнего философского понятия «онтология». Для построения онтологической модели предметной области существует стандарт IDEF5 –
рисунок 3.
Рисунок 3. Модель предметной области, зафиксированная на уровне метаинформации.
18
Онтология (в информатике)
- это попытка всеобъемлющей и детальной формализации некоторой области знаний с помощью концептуальной схемы.
Концептуальная схема Как правило, концептуальная схема состоит из структуры данных
(классификатора), содержащего все имеющиеся классы объектов, а также их связи друг с другом и правила (ограничения), принятые в этой области.
Онтология создается для того, чтобы создать модель предметной области.
Понятийная модель предметной области Понятийная модель предметной области рассматривается как
концептуальная схема, содержащая совокупность реальных объектов
(сущностей) и связей между ними. Каждая сущность обладает определённым набором свойств (атрибутов).
Совокупность выделенных для информационной системы данных, связей между ними и операций над ними образует информационную и функциональную модели предметной области, описывающие ее состояние с определенной точностью. Основные составляющие понятийной модели предметной области.
Объекты - сущности
Основной информационной единицей концептуальной модели является
объект (сущность).
Примерами сущностей (с точки зрения ИС) или объектов (с точки зрения внешнего мира)
являются отдельный студент, группа студентов, аудитория, время занятий, слова, числа,
символы. Обычно считается, что быть объектом - это значит быть дискретным и различимым. Примеры "не-объектов" - это мир, время, смысл – такие категории сложно сохранять в базе данных.
Экземпляр сущности
- это конкретный представитель данной сущности или данного объекта.
Например, представителем сущности "Сотрудник" может быть "Сотрудник Иванов".
Экземпляры сущностей должны быть различимы, т.е. сущности должны иметь некоторые свойства, уникальные для каждого экземпляра этой сущности.
Свойства (атрибуты)
- это именованная характеристика, являющаяся некоторым свойством
сущности.
19
Атрибут - это свойство, которое описывает некоторый аспект объекта и значение которого следует зафиксировать. Примеры поименованных характеристик сущности «студент»:
фамилия, имя, отчество, дета рождения.
Структура данных
- программная единица, позволяющая хранить и обрабатывать множество однотипных и/или логически связанных данных. Для добавления, поиска,
изменения и удаления данных структура данных предоставляет некоторый набор функций (интерфейс).
Структура данных часто является реализацией какого-либо абстрактного типа данных. –
классификатора.
Логическая модель базы данных
- версия структуры данных, на основе которой реализована конкретная
СУБД.
Можно выделить следующие логические модели баз данных:
Иерархические
Сетевые
Реляционные
Объектно-ориентированные
Гипертекстовые
Многомерные
Иерархическая модель данных.
Иерархическая модель может быть представлена как древовидный граф с записями в виде узлов и множествами в виде ребер. В иерархической модели узел может иметь только одного родителя. Для моделирования информации с помощью древовидной структуры используется обобщенное дерево, состоящее из узлов, соединенных связями, называемых дугами или ребрами. Самый верхний узел называется корневым узлом. В структуре дерева могут быть выделены поддеревья, каждое из которых исходит из одного родительского узла (дочернего для узла более высокого уровня). Все узлы дерева, за исключением корневого, должны иметь родительский узел. Узлы представляют интересующие нас объекты, а связи между ними определяются самим расположением узлов и ребер,
образующих данную древовидную структуру. Связи между узлами дерева являются указателями, содержащими в себе информацию о физическом расположении данных,
относящихся к узлу. Основанные на записях (логические) модели данных используются для определения общей структуры базы данных и высокоуровневого описания ее реализации. На физическом уровне каждый узел имеет сложную структуру: в нем есть
20