Организация хранения данных в информационной системе

Цель: знакомство с организацией хранения данных в ИС

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

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

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

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

Хранилище данных(ХД – используют также термины Data Warehouse, «склад данных», «информационное хранилище») – это база, хранящая данные, агрегированные по многим измерениям.

Альтернативой хранилищу данных является концепция витрин данных (Data Mart). Витрины данных– множество тематических БД, содержащих информацию, относящуюся к отдельным информационным аспектам предметной области.

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

По отношению к пользователям применяют трехуровневое представление для описания предметной области: концептуальное, логическое и внутреннее (физическое)

Концептуальный уровень связан с частным представлением данных группы пользователей в виде внешней схемы, объединяемых общностью используемой информации. Каждый конкретный пользователь работает с частью БД и представляет ее в виде внешней модели. Этот уровень характеризуется разнообразием используемых моделей (модель «сущность –связь», ER-модель, модель Чена), бинарные и инфологические модели, семантические сети.

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

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

Иерархическая модель является разновидностью сетевой, являющейся совокупностью деревьев (лесом).

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

Физический (внутренний) уровень связан со способом фактического хранения данных в физической памяти ЭВМ. Основными компонентами физического уровня являются хранимые записи, объединяемые в блоки; указатели, необходимые для поиска данных; данные переполнения; промежутки между блоками; служебная информация.

По наиболее характерным признакам БД можно классифицировать следующим образом:

по способу хранения информации:

• интегрированные;

• распределенные;

по типу пользователя:

• монопользовательские;

• многопользовательские;

по характеру использования данных:

• монопользовательские;

• предметные.

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

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

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

1. Копируемые данные. Одинаковые копии данных хранятся в различных местах использования, так как это дешевле передачи данных. Модификация данных контролируется централизованно;

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

3. Реорганизованные данные. Данные в системе интегрируются при передаче на более высокий уровень;

4. Секционированные данные. На различных объектах используются одинаковые структуры, но хранятся разные данные;

5. Данные с отдельной подсхемой.На различных объектах используются различные структуры данных, объединяемые в интегрированную систему;

6. Несовместимые данные. Независимые базы данных, спроектированные без координации, требующие объединения.

Существуют два основных направления реализации СУБД: программное и аппаратное.

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

•описание данных на концептуальном и логическом уровнях;

•загрузку данных;

•хранение данных;

•поиск и ответ на запрос (транзакцию);

•внесение изменений;

• обеспечение безопасности и целостности.

Обеспечивает пользователя следующими языковыми средствами:

•языком описания данных (ЯОД);

•языком манипулирования данными (ЯМД);

• прикладным (встроенным) языком данных (ПЯД, ВЯД).

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

•параллельная обработка;

•распределенная логика;

•ассоциативные ЗУ;

•конвейерные ЗУ;

•фильтры данных и др.

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

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

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

На этапе физического проектирования решаются вопросы, связанные с производительностью системы, определяются структуры хранения данных и методы доступа.

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

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

Основные принципы организации хранилищ данных следующие.

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

2. Средства интеграции. Приведение разных представлений одних и тех же сущностей к некоторому общему типу.

3. Постоянство данных. В ХД не поддерживаются операции модификации в смысле традиционных баз данных.

4. Хронология данных. Благодаря средствам интеграции реализуется определенный хронологический временной аспект, присущий содержимому ХД.

Основные функции репозитариев:

• парадигма включения/выключения и некоторые формальные процедуры для объектов;

• поддержка множественных версий объектов и процедуры управления конфигурациями для объектов;

• оповещение инструментальных и рабочих систем об интересующих их событиях;

• управление контекстом и разные способы обзора объектов репозитария;

• определение потоков работ.

Рассмотрим кратко основные направления научных исследований в области баз данных:

• развитие теории реляционных баз данных;

• моделирование данных и разработка конкретных моделей разнообразного назначения;

• отображение моделей данных, направленных на создание методов их преобразования и конструирования коммутативных отображений, разработку архитектурных аспектов отображения моделей данных и спецификаций определения отображений для конкретных моделей данных;

• создание СУБД с мультимодельным внешним уровнем, обеспечивающих возможности отображения широко распространенных моделей;

• разработка, выбор и оценка методов доступа;

• создание самоописываемых баз данных, позволяющих применять единые методы доступа для данных и метаданных;

• управление конкурентным доступом;

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

• совершенствование машины баз данных;

• разработка дедуктивных баз данных, основанных на применении аппарата математической логики и средств логического программирования, а

также пространственно-временных баз данных;

• интеграция неоднородных информационных ресурсов.

 

 

Контрольные вопросы

1. Укажите отличия базы данных, хранилища данных, витрины данных, репозитария.

2. .Какие модели используются для описания предметной области?

3. .Какие модели используются на концептуальном уровне?

4. .Какие модели используются на физическом уровне?

5. .Дайте краткую характеристику основных типов баз данных