Хранение информации
Хранение и накопление являются одними из основных действий, осуществляемых над информацией и главным средством обеспечения ее доступности в течение некоторого промежутка времени. База данных может быть определена как совокупность взаимосвязанных данных, используемых несколькими пользователями и хранящихся с регулируемой избыточностью.
Банк данных– система, представляющая определенные услуги по хранению и поиску данных определенной группе пользователей по определенной тематике.
Система баз данных– совокупность управляющей системы, прикладного программного обеспечения, базы данных, операционной системы и технических средств, обеспечивающих информационное обслуживание пользователей.
Хранилище данных(ХД – используют также термины Data Warehouse, «склад данных», «информационное хранилище») – это база, хранящая данные, агрегированные по многим измерениям.
Альтернативой хранилищу данных является концепция витрин данных (Data Mart). Витрины данных– множество тематических БД, содержащих информацию, относящуюся к отдельным информационным аспектам предметной области.
Еще одним важным направлением развития баз данных являются репозитарии. Репозитарий, в упрощенном виде, можно рассматривать просто как базу данных, предназначенную для хранения не пользовательских, а системных данных.
Каждый из участников действия (пользователь, группа пользователей, «физическая память») имеет свое представление об информации. По отношению к пользователям применяют трехуровневое представление для описания предметной области: концептуальное, логическое и внутреннее (физическое).
Концептуальный уровень связан с частным представлением данных группы пользователей в виде внешней схемы, объединяемых общностью используемой информации. Каждый конкретный пользователь работает счастью БД и представляет ее в виде внешней модели. Этот уровень характеризуется разнообразием используемых моделей (модель «сущность – связь», ER-модель, модель Чена), бинарные и инфологические модели, семантические сети.
Логический уровень является обобщенным представлением данных всех пользователей в абстрактной форме. Используются три вида моделей: иерархические, сетевые и реляционные.
Сетевая модель является моделью объектов-связей, допускающей только бинарные связи «многие к одному» и использует для описания модель ориентированных графов.
Иерархическая модель является разновидностью сетевой, являющейся совокупностью деревьев (лесом).
Реляционная модель использует представление данных в виде таблиц (реляций), в ее основе лежит математическое понятие теоретико-множественного отношения, она базируется реляционной алгебре и теории отношений.
Физический (внутренний) уровень связан со способом фактического хранения данных в физической памяти ЭВМ. Основными компонентами физического уровня являются хранимые записи, объединяемые в блоки; указатели, необходимые для поиска данных; данные переполнения; промежутки между блоками; служебная информация.
По наиболее характерным признакам БД можно классифицировать следующим образом:
по способу хранения информации:
• интегрированные;
• распределенные;
по типу пользователя:
• монопользовательские;
• многопользовательские;
по характеру использования данных:
• монопользовательские;
• предметные.
В настоящее время при проектировании БД используют два подхода. Первый из них основан на стабильности данных, что обеспечивает наибольшую гибкость и адаптируемость к используемым приложениям. Применение такого подхода целесообразно в тех случаях, когда не предъявляются жесткие требования к эффективности функционирования (объему памяти и продолжительности поиска), существует большое число разнообразных задач с изменяемыми и непредсказуемыми запросами.
Второй подход базируется на стабильности процедур запросов к БД и является предпочтительным при жестких требованиях к эффективности функционирования, особенно это касается быстродействия.
Другим важным аспектом проектирования БД является проблема интеграции и распределения данных. Распределение данных по месту их использования может осуществляться различными способами:
1. Копируемые данные. Одинаковые копии данных хранятся в различных местах использования, так как это дешевле передачи данных. Модификация данных контролируется централизованно;
2. Подмножество данных. Группы данных, совместимые с исходной базой данных, хранятся отдельно для местной обработки;
3. Реорганизованные данные. Данные в системе интегрируются при передаче на более высокий уровень;
4. Секционированные данные. На различных объектах используются одинаковые структуры, но хранятся разные данные;
5. Данные с отдельной подсхемой.На различных объектах используются различные структуры данных, объединяемые в интегрированную систему;
6. Несовместимые данные. Независимые базы данных, спроектированные без координации, требующие объединения. Существуют два основных направления реализации СУБД: программное и аппаратное.
Программная реализация (в дальнейшем СУБД) представляет собой набор программных модулей, работает под управлением конкретной ОС и выполняет следующие функции:
•описание данных на концептуальном и логическом уровнях;
•загрузку данных;
•хранение данных;
•поиск и ответ на запрос (транзакцию);
•внесение изменений;
• обеспечение безопасности и целостности.
Обеспечивает пользователя следующими языковыми средствами:
•языком описания данных (ЯОД);
•языком манипулирования данными (ЯМД);
• прикладным (встроенным) языком данных (ПЯД, ВЯД).
Аппаратная реализация предусматривает использование так называемых машин баз данных (МБД). Их появление вызвано возросшими объемами информации и требованиями к скорости доступа. Слово «машина» в термине МБД означает вспомогательный периферийный процессор. Термин «компьютер БД» – автономный процессор баз данных или процессор, поддерживающий СУБД. Основные направления МБД:
•параллельная обработка;
•распределенная логика;
•ассоциативные ЗУ;
•конвейерные ЗУ;
•фильтры данных и др.
Проектирование БД можно объединить в четыре этапа. На этапе формулирования и анализа требований устанавливаются цели организации, определяются требования к БД. Эти требования документируются в форме, доступной конечному пользователю и проектировщику БД. Обычно при этом используется методика интервьюирования персонала различных уровней управления.
Этап концептуального проектирования заключается в описании и синтезе информационных требований пользователей в первоначальный проект БД. Результатом этого этапа является высокоуровневое представление информационных требований пользователей на основе различных подходов.
В процессе логического проектирования высокоуровневое представление данных преобразуется в структуре используемой СУБД. Полученная логическая структура БД может быть оценена количественно с помощью различных характеристик (число обращений к логическим записям, объем данных в каждом приложении, общий объем данных и т.д.).
На этапе физического проектирования решаются вопросы, связанные с производительностью системы, определяются структуры хранения данных и методы доступа.
Взаимодействие между этапами проектирования и словарной системой необходимо рассматривать отдельно. Процедуры проектирования могут использоваться независимо в случае отсутствия словарной системы.
Предназначение склада данных – информационная поддержка принятия решений, а не оперативная обработка данных. Потому база данных и склад данных не являются одинаковыми понятиями.
Основные принципы организации хранилищ данных следующие.
1. Предметная ориентация. В оперативной базе данных обычно поддерживается несколько предметных областей, каждая из которых может послужить источником данных для ХД.
2. Средства интеграции. Приведение разных представлений одних и тех же сущностей к некоторому общему типу.
3. Постоянство данных. В ХД не поддерживаются операции модификации в смысле традиционных баз данных.
4. Хронология данных. Благодаря средствам интеграции реализуется определенный хронологический временной аспект, присущий содержимому ХД.
Основные функции репозитариев:
• парадигма включения/выключения и некоторые формальные процедуры для объектов;
• поддержка множественных версий объектов и процедуры управления конфигурациями для объектов;
• оповещение инструментальных и рабочих систем об интересующих их событиях;
• управление контекстом и разные способы обзора объектов репозитария;
• определение потоков работ.
Рассмотрим кратко основные направления научных исследований в области баз данных:
• развитие теории реляционных баз данных;
• моделирование данных и разработка конкретных моделей разнообразного назначения;
• отображение моделей данных, направленных на создание методов их преобразования и конструирования коммутативных отображений, разработку архитектурных аспектов отображения моделей данных и спецификаций определения отображений для конкретных моделей данных;
• создание СУБД с мультимодельным внешним уровнем, обеспечивающих возможности отображения широко распространенных моделей;
• разработка, выбор и оценка методов доступа;
• создание самоописываемых баз данных, позволяющих применять единые методы доступа для данных и метаданных;
• управление конкурентным доступом;
• развитие системы программирования баз данных и знаний, которые обеспечивали бы единую эффективную среду как для разработки приложений, так и для управления данными;
• совершенствование машины баз данных;
• разработка дедуктивных баз данных, основанных на применении аппарата математической логики и средств логического программирования, а также пространственно-временных баз данных;
• интеграция неоднородных информационных ресурсов.