Слайд 2
Общая характеристика
- Технология
распределенных БД
Distributed Database
- Технология
тиражирования данных
Data Replication
Коммуникаци-онная сеть
БД
БД
БД
Слайд 3
Общая характеристика
Системы распределенных баз данных – набор узлов,
связанных вместе коммуникационной сетью:
каждый узел обладает своими собственными системами
баз данных;
узлы работают согласованно, предоставляя доступ к данным на любом узле сети.
Слайд 4
Общая характеристика
Распределенная БД – тип виртуального объекта
На каждом
узле:
собственные базы данных
собственные локальные пользователи
собственные СУБД и
средства управления транзакциями
Слайд 5
Общая характеристика
Два вида систем распределенных БД:
однородные
неоднородные
Фундаментальный принцип
системы распределенных БД:
Для пользователя система распределенных БД должна выглядеть
точно так же, как нераспределенная система
Слайд 6
Общая характеристика
Проблемы сетевого взаимодействия
Проблемы доступа к данным
Проблемы распределенных
СУБД
Проблемы тиражирования (репликации) данных
Проблемы неоднородных систем
Слайд 7
Проблемы сетевого взаимодействия
Клиент
Сервер
Локальный узел
Удаленный узел
Программа связи
Client Net
Коммуникационный
сервер Server Net
Сетевые компоненты СУБД
Слайд 8
Проблемы сетевого взаимодействия
Требования:
прозрачность сети
независимость от аппаратного обеспечения
автоматическая трансляция
кодов
независимость от СУБД
Слайд 9
Проблемы сетевого взаимодействия
Прозрачность сети:
независимость от использования сетевого
аппаратного обеспечения
независимость от протоколов сетевого обмена
Коммуникационный сервер должен поддерживать
как можно более широкий диапазон сетевых протоколов
Слайд 10
Проблемы сетевого взаимодействия
Независимость от аппаратного обеспечения:
необходимость согласования форматов
представления данных
Задача коммуникационного сервера – на уровне обмена данными
обеспечить согласование их форматов между удаленными и локальными узлами
Слайд 11
Проблемы сетевого взаимодействия
Автоматическая трансляция кодов:
необходимость преобразования кодов символов
в соответствии с используемыми таблицами кодов (ASCII, EBCDIC)
Коммуникационный сервер
должен решать проблему трансляции кодов для каждой взаимодействующей пары
Слайд 12
Проблемы сетевого взаимодействия
Независимость от СУБД:
Все экземпляры СУБД, функционирующие
на различных узлах сети, должны поддерживать один и тот
же интерфейс
Слайд 13
Проблемы доступа к данным
Требования:
прозрачность (независимость от) расположения
прозрачность (независимость
от) фрагментации
Слайд 14
Проблемы доступа к данным
Прозрачность расположения
Коммуникаци-онная сеть
БД Склад
БД Предприятие
Деталь
Поставщик
Прикладная
программа
Узел 1
Узел 2
Узел 3
Клиент
Слайд 15
Проблемы доступа к данным
Имя объекта в MS SQL
Server:
сервер.база_данных.пользователь.объект
Прозрачный (для пользователя) доступ к удаленным данным предполагает использование
в прикладных программах такого интерфейса с сервером БД, который позволяет переносить данные в сети с одного узла на другой, не требуя при этом модификации текста прикладной программы
Слайд 16
Проблемы доступа к данным
Прозрачность фрагментации:
В системе поддерживается фрагментация
данных, если некое хранимое отношение в целях физического хранения
можно разделить на части, или фрагменты, хранимые на разных узлах сети
Слайд 17
Проблемы доступа к данным
DeptID
. . .
EmpID
DeptID (FK)
.
. .
Department
Employee
Слайд 18
Проблемы доступа к данным
Предполагается, что:
все фрагменты данного отношения
независимы
фрагменты не должны допускать потерю информации
Слайд 19
Проблемы
распределенных СУБД
Задачи:
управление именами в распределенной среде
обработка распределенных
запросов
управление распределенными транзакциями
Слайд 20
Проблемы
распределенных СУБД
Управление именами в распределенной среде
Организация системного
каталога:
Централизованный каталог
Полностью тиражируемый (реплицированный) каталог
Секционированный (локальный) каталог
1 + 3
.
. .
Слайд 21
Проблемы
распределенных СУБД
Управление именами в System R*
Системное имя
объекта:
кто_создал@где_создал.имя_объекта@где_размещен
Слайд 22
Проблемы
распределенных СУБД
Коммуникаци-онная сеть
Объект STATS
Узел M
Узел P
Пользователь
Mary
Узел N
Mary@M.STATS@P
Слайд 23
Проблемы
распределенных СУБД
Синоним системного имени:
CREATE SYNONYM имя_синонима
FOR имя_объекта
CREATE
SYNONYM MSTATS FOR
Mary@M.STATS@N
Слайд 24
Проблемы
распределенных СУБД
Структура распределенного каталога
Таблица синонимов
Информация о локальных
объектах
Информация родового узла
Узел P
Таблица синонимов
Информация о локальных объектах
Информация родового
узла
Узел N
Слайд 25
Проблемы
распределенных СУБД
Коммуникаци-онная сеть
STATS
Узел X
Узел P
Прикладная
программа
Узел N
SELECT *
FROM MSTAT
Слайд 26
Проблемы
распределенных СУБД
Коммуникаци-онная сеть
STATS
Узел X
Узел P
Прикладная программа
Узел
N
SELECT *
FROM MSTAT
Слайд 27
Проблемы
распределенных СУБД
Обработка распределенных запросов
SELECT S.SName FROM S,
P, SP WHERE
(S.Address = 'NNN' AND S.SId =
SP.SId AND SP.PId = P.PId AND P.Mat = 'MMM')
SId
SName
Address
. . .
S
PId
PName
Mat
Qty
. . .
P
SPId
SId (FK1)
PId (FK2)
Qty
. . .
SP
Слайд 28
Проблемы
распределенных СУБД
Коммуникаци-онная сеть
S
Узел Y
Узел X
SP
P
Слайд 29
Проблемы
распределенных СУБД
Обработка распределенных запросов (query processing) –
преобразование декларативного определения запроса в операции манипулирования данными низкого
уровня
Слайд 30
Проблемы
распределенных СУБД
Централизованные СУБД
декомпозиция запроса
оптимизация запроса
Распределенные
СУБД
декомпозиция запроса
локализация данных
глобальная оптимизация запроса
оптимизация запроса
Слайд 31
Проблемы
распределенных СУБД
Декомпозиция запроса – трансляция с языка
SQL в выражение реляционной алгебры
Оптимизация запроса – выбор «наилучшей»
стратегии выполнения запроса из множества альтернатив
(минимальная сумма затрат, необходимых для выполнения запроса)
Слайд 32
Проблемы
распределенных СУБД
Локализация данных – преобразование выражения реляционной
алгебры с учетом физического размещения данных
Глобальная оптимизация – поиск
наилучшей стратегии выполнения запроса с учетом коммуникационных операций пересылки данных
Слайд 33
Проблемы
распределенных СУБД
Управление распределенными транзакциями
Выполнение транзакции, инициированной в
некотором узле сети N, влечет инициирование транзакции и в
других узлах:
T = { TN, TX, TY, … }
Слайд 34
Проблемы
распределенных СУБД
В распределенных БД транзакция, выполнение которой
заключается в обновлении данных на нескольких узлах сети, называется
глобальной, или распределенной транзакцией.
Глобальная транзакция состоит из нескольких агентов, или локальных транзакций.
Слайд 35
Проблемы
распределенных СУБД
Для глобальной транзакции – свойства АСИД.
Проблемы:
управление
параллелизмом
управление восстановлением
Слайд 36
Проблемы
распределенных СУБД
Управление параллелизмом
Также основано на механизме блокировок
Свойство
сериализуемости транзакций:
Ни одна блокировка от имени какой-либо транзакции не
должна устанавливаться после снятия хотя бы одной ранее установленной блокировки
Слайд 37
Проблемы
распределенных СУБД
Свойство глобальной сериализуемости: Выполнение множества распределенных
транзакций является сериализуемым тогда и только тогда, когда:
выполнение
этого множества транзакций является сериализуемым на каждом узле,
порядок сериализации этих транзакций на всех узлах один и тот же
Слайд 38
Проблемы
распределенных СУБД
Методы блокирования:
Централизованное блокирование – centralized locking
Распределенное
(децентрализованное) блокирование – distributed (decentralized) locking
Слайд 39
Проблемы
распределенных СУБД
Централизованное блокирование
Единая таблица блокировок для всей
распределенной БД, управляемая единым менеджером блокировок
Проблемы:
производительность
надежность
Слайд 40
Проблемы
распределенных СУБД
Распределенное (децентрализованное) блокирование
Управление блокировками распределено между
всеми узлами системы; взаимная координация менеджеров блокировок
Проблемы:
более сложные алгоритмы
выше
коммуникационные затраты
Слайд 41
Проблемы
распределенных СУБД
Проблема тупиков (deadlock)
Объект 1
Объект 2
Узел X
Узел
Y
Транзакция 1
Транзакция 2
ожидание
ожидание
Слайд 42
Проблемы
распределенных СУБД
Управление восстановлением
Типы сбоев:
программный (сбой транзакции)
мягкий (сбой
системы, узла; потеря данных в оперативной памяти)
жесткий (сбой носителей;
потеря данных во внешней памяти)
коммуникационные сбои
Слайд 43
Проблемы
распределенных СУБД
Коммуникационные сбои:
ошибки в сообщениях (сетевой протокол)
нарушение
упорядоченности сообщений (сетевой протокол)
потерянные (не доставленные) сообщения (СУБД)
повреждение линий
связи (СУБД)
Слайд 44
Проблемы
распределенных СУБД
Свойства транзакции:
Атомарность – протокол 2PC
Согласованность
Изолированность
Долговременность
– протокол распределенного восстановления
Слайд 45
Проблемы
распределенных СУБД
Атомарность
T = { TN, TX,
TY, … }
commit – должны быть зафиксированы изменения
для всех локальных транзакций
rollback – должны быть аннулированы изменения для всех локальных транзакций
Журнал распределенной транзакции
Слайд 46
Проблемы
распределенных СУБД
Протокол двухфазной фиксации – 2PC (two-phase
commit)
Начало
транзакции
Конец
транзакции
Фаза 1
Фаза 2
Координатор
транзакции
Узел X
Узел Y
Слайд 47
Проблемы
распределенных СУБД
Фаза 1 – Подготовиться к фиксации
Локальные
журналы транзакций, ответ
Фаза 2 – Принятие решения
Глобальный журнал транзакции,
фиксация решения, информирование участников
Слайд 48
Проблемы
распределенных СУБД
Важно:
Каждый участник глобальной транзакции должен делать
то, что ему предписано координатором во время фазы 2
Именно
появление записи решения в журнале координатора отмечает переход с фазы 1 на фазу 2.
Слайд 49
Проблемы
распределенных СУБД
Особенности:
Функция координатора выполняется узлом, на котором
инициирована распределенная транзакция.
Координатор должен обмениваться данными с каждым
узлом-участником.
Локальные узлы – участники процесса двухфазной фиксации должны выполнять любые действия, предписанные координатором, и теряют локальную автономность.
Слайд 50
Проблемы
распределенных СУБД
Проблемы:
1. Односторонний выбор участником аварийного завершения
Узел
Х проголосовал за откат транзакции – не ожидает ответа
от координатора
Слайд 51
Проблемы
распределенных СУБД
Проблемы:
2. Блокирующий характер протокола 2PC
Узел Х
проголосовал за фиксацию транзакции; ожидает ответа от координатора –
сбой на линии связи
Слайд 52
Проблемы
распределенных СУБД
Протокол восстановления
Ищется запись в журнале координатора:
есть – можно восстановить, нет – откат
Потеря связи с
локальным узлом:
во время фазы 1 – откат транзакции
во время фазы 2 – попытки завершить транзакцию, пока связь не будет восстановлена
Слайд 53
Проблемы
распределенных СУБД
Сбой координатора:
до начала процедуры фиксации: начать
процесс фиксации после восстановления
координатор в состоянии готовности (фаза
1): перезапустить процедуру фиксации после восстановления
после принятия решения (фаза 2): никаких действий
Слайд 54
Технология тиражирования данных
Концепции:
Отказ от распределения данных
Все данные дублируются
на каждом узле сети (где они обрабатываются)
Транзакции в системе
выполняются и завершаются локально
Слайд 55
Технология тиражирования данных
В системе поддерживается репликация данных (Data
Replication), если заданное хранимое отношение или заданный фрагмент могут
быть представлены несколькими разными копиями, или репликами, хранимыми на разных узлах сети
Слайд 56
Технология тиражирования данных
Независимость от репликации: пользователи, по крайней
мере, с логической точки зрения, должны работать таком режиме,
как будто данные не реплицированы вовсе.
Слайд 57
Технология тиражирования данных
Преимущества:
данные всегда расположены там, где они
обрабатываются;
большая доступность: пока остается доступной хотя бы одна реплика;
большая
надежность хранения данных: всегда можно восстановить целостное состояние БД, если существует хотя бы одна ее реплика на каком-либо узле сети.
Слайд 58
Технология тиражирования данных
Главный недостаток:
нарушение тождественности всех копий
Требование:
при
обновлении некоторого реплицированного объекта все копии этого объекта также
должны обновляться (проблема тиражирования обновлений).
Слайд 59
Технология тиражирования данных
Тиражирование данных – это асинхронный перенос
изменений объектов исходной БД в принимающие БД, принадлежащие различным
узлам распределенной системы
В составе СУБД – сервер тиражирования данных (репликатор)
Слайд 60
Технология тиражирования данных
Главная проблема – нарушение целостности данных:
При
последовательном обращении к разным копиям – когда передавать информацию
об изменениях?
При параллельном обращении – нужно ли (и как) запрещать доступ к данным со стороны других пользователей?
Слайд 61
Технология тиражирования данных
Задача 1 – стратегия обновления копий:
синхронное
обновление
асинхронное обновление
Задача 2 – стратегия доступа к данным:
все
копии доступны для обновления
только некоторые копии доступны для обновления
Слайд 62
Технология тиражирования данных
Стратегии доступа к данным
Только некоторые копии
доступны для обновления – концепция первичной копии:
изменения выполняются только
на узле, выделенном для первичной копии
на остальных узлах – только чтение данных
за тиражирование изменений отвечает узел первичной копии
Слайд 63
Технология тиражирования данных
Коммуникаци-онная сеть
БД
БД
БД
Узел первичной копии
Слайд 64
Технология тиражирования данных
Концепция первичной копии: одновременный доступ –
за счет блокировок первичной копии
Используется:
в системах поддержки принятия решений
в
системах поддержки мобильных пользователей
Слайд 65
Технология тиражирования данных
Все копии доступны для изменения –
проблемы с точки зрения синхронизации обновлений:
обеспечение целостности данных
обеспечение доступности
данных
Оптимистические и пессимистические протоколы управления транзакциями
Слайд 66
Технология тиражирования данных
Пессимистические протоколы – предпочтение обеспечению целостности:
на отдельных узлах сети не допускается выполнение любых транзакций,
для которых не существует гарантии не нарушения целостности базы данных
Алгоритмы управления параллелизмом:
метод 2PC
метод распределенных блокировок
Слайд 67
Технология тиражирования данных
Оптимистические протоколы – предпочтение обеспечению доступности
данных: допускается независимое обновление данных в каждой копии, даже
если после объединения всех изменений вероятен переход базы данных в несогласованное состояние
Слайд 68
Технология тиражирования данных
Стратегии обновления копий
Тиражирование обновлений:
синхронное
асинхронное
Слайд 69
Технология тиражирования данных
Синхронное обновление: обновление всех копий –
часть самой транзакции; используется протокол 2PC, но по сети
передаются только изменения данных
Недостатки:
транзакция не может быть завершена, если один из узлов недоступен
дополнительная нагрузка на сеть
Слайд 70
Технология тиражирования данных
Асинхронное обновление: обновление целевых баз данных
после выполнения обновлений исходной базы данных.
Задержка – от нескольких
секунд до нескольких часов и даже дней
Гарантируется, что в какой-то момент времени данные во всех копиях будут синхронизированы
Слайд 71
Технология тиражирования данных
Кто инициирует распространение обновлений:
узел, на котором
выполнены изменения
узел, которому нужны обновленные данные
Слайд 72
Технология тиражирования данных
Репликации в MS SQL Server
Терминология:
Издатель –
Publisher: сервер, который предоставляет информацию из своих баз данных
другим серверам
Подписчик – Subscriber: сервер, копирующий информацию от издателя
Слайд 73
Технология тиражирования данных
Дистрибьютор – Distributor: промежуточный север, принимающий
данные от издателя и распространяющий их подписчикам
Слайд 74
Технология тиражирования данных
Публикация – набор статей для обновления,
принадлежащих одной базе данных
Статья – минимальный набор данных, рассматриваемый
системой репликации как одно целое (обычно – таблица базы данных)
Слайд 75
Технология тиражирования данных
Функции издателя:
создание публикации
отслеживание изменений,
вносимых в данные
подготовка публикации к тиражировнию
Слайд 76
Технология тиражирования данных
Типы репликации
Только издатель может изменять публикацию
репликация
моментальных снимков
Все могут изменять публикацию
подписчики незамедлительного обновления
репликация сведением
отложенные обновления
Слайд 77
Технология тиражирования данных
Репликация моментальных снимков – Snapshot Replication
Для
тиражирования данных используются моментальные снимки – полная копия публикации,
сохраняемая в специальном файле
Слайд 78
Технология тиражирования данных
Подписчики незамедлительного обновления – Immediate Updating
Subscriber
Подписчик, изменяя свою копию данных, одновременно должен выполнить изменение
данных на издателе
Нет конфликтов изменения данных
Постоянное соединение между подписчиком и издателем
Слайд 79
Технология тиражирования данных
Репликация сведением – Merge Replication
Самый сложный
тип репликации
Не требуется постоянное соединение подписчика с издателем
Подписчики работают
автономно, накапливая изменения данных
На издателе объединяются все изменения данных
Слайд 80
Технология тиражирования данных
На издателе могут быть обнаружены конфликты
изменений
Специальные алгоритмы разрешения конфликтов, в основе которых – «шкала
приоритетов»
Слайд 81
Технология тиражирования данных
Отложенное обновление – Queue Updating
Обновления, выполненные
на подписчике, применяются на издателе с некоторой задержкой
Постоянное соединение
с издателем отсутствует
Соединение периодически устанавливается
Слайд 82
Технология тиражирования данных
Подписчик записывает информацию о выполненных изменениях
в очередь; если информация об изменениях не может быть
записана в очередь – изменения не фиксируются
Запомненные в очереди данные переносятся на издатель
Также возможны конфликты изменений
Слайд 83
Технология тиражирования данных
Методы обновления информации на подписчиках
1. Принудительная
репликация – Push Subscription
Инициатор – издатель
Требуется постоянное соединение
Интервалы обновления
подписчиков устанавливаются на дистрибьюторе
Слайд 84
Технология тиражирования данных
2. Репликация по запросу – Pull
Subscription
Инициатор – подписчик
Для каждого подписчика на дистрибьюторе – свой
набор данных, отражающий изменения
Не требуется постоянное соединение
Слайд 86
Основные понятия
Системы оперативной обработки транзакций – Online Transaction
Processing (OLTP)
Системы поддержки принятия решений – Decision Support System
(DSS)
Усовершенствованная технология баз данных:
специальные средства управления процессом хранения информации
мощные инструменты анализа накопленных данных
Слайд 87
Определение
Bill Inmon, 1993 г.
Хранилище данных (Data Warehouse) –
это предметно-ориентированный, интегрированный, привязанный ко времени и неизменяемый набор
данных, предназначенный для поддержки принятия решений
Слайд 88
Сравнение систем
1. Характер данных
Слайд 89
Сравнение систем
2. Обработка данных
Слайд 90
Сравнение систем
3. Назначение системы
Слайд 91
Сравнение систем
4. Пользователи
Слайд 92
Конфигурация
хранилища данных
OLTP-системы
источники данных
Загрузочная секция
Хранилище данных
Слайд 93
Загрузочная секция
Назначение:
устранение несогласованности, фрагментарности, дубликатов и пропусков –
очистка данных (data scrubbing)
обеспечение совместимости данных с другими источниками
– расслоение (slicing) и расщепление (dicing) данных
Слайд 94
Архитектура хранилища данных
.
.
.
Источники
оперативных
данных
Архив и
резервные копии
Средства
доступа
конечного
пользователя
Слайд 95
Архитектура хранилища данных
Менеджер загрузки – Load Manager (LM):
внешний (front-end) компонент; извлечение данных, загрузка данных в хранилище
инструменты
репликации информации
генераторы кода
механизмы динамического преобразования
Слайд 96
Архитектура хранилища данных
Менеджер хранилища – Warehouse Manager (WM):
управление информацией, помещенной в хранилище данных
анализ непротиворечивости данных
создание необходимых
индексов
денормализация
обобщение
резервное копирование
Слайд 97
Архитектура хранилища данных
Менеджер запросов – Query Manager (QM):
внутренний (back-end) компонент; управление запросами пользователей. Создается на базе
предоставляемых СУБД инструментов доступа к данным и инструментов мониторинга хранилища
Слайд 98
Структура хранилища данных
Мета данные
Детальные данные
Частично обобщенные данные
Глубоко
обобщенные данные
извлечение и загрузка данных
обслуживание хранилища
обслуживание запросов
Постоянные данные
Временные данные
Слайд 99
Средства доступа к данным
1. Инструменты информационной системы руководителя
– Executive Information System (EIS; сейчас – Everybody Information
System); предоставление поддержки управляющему персоналу всех уровней.
Предопределенный набор сценариев обработки данных и составления отчетов
Express Analyzer фирмы Oracle
Слайд 100
Средства доступа к данным
2. Инструменты оперативной аналитической обработки
– Online Analytical Processing (OLAP); оценка эффективности деятельности предприятия,
предсказание объемов продаж и планирование товарных запасов.
Построение и выполнение нерегламентированных запросов
Express Server фирмы Oracle
Слайд 101
Средства доступа к данным
3. Инструменты разработки данных –
Data mining; открытие новых осмысленных корреляций, распределений и тенденций,
создание предсказательных, а не ретроспективных моделей.
Создание предсказательных моделей
Intelligent Miner фирмы IBM
Слайд 102
Витрины данных
Data Mart – (магазины данных) – подмножество
хранилища данных, которое поддерживает требования отдельного подразделения или деловой
сферы организации
доступ к данным, которые приходится анализировать чаще других
предоставление данных в форме, соответствующей коллективному представлению подразделения
сокращение времени ответа на вопрос
Слайд 103
Витрины данных
Хранили-ще данных
Магазин данных
архив
Слайд 104
Витрины данных
Отличие от хранилища данных:
отвечает требованиям только одного
из подразделений организации или некоторой ее деловой сферы
обычно не
содержит детальных оперативных сведений
структура информации более понятна и проста в управлении
Слайд 106
Схема типа «звезда»
Таблица фактов
1
2
n
Таблицы измерений
Слайд 107
Схема типа «звезда»
Таблица фактов (fact table) – количественные
значения; деловые факты, определяющие фактическую сущность; детальные данные, представляющие
собой основные виды бизнес деятельности организации и факторы, влияющие на данный бизнес или его сектор
Слайд 108
Схема типа «звезда»
Таблицы измерений (dimension tables) – дескриптивные
(описательные) значения; справочные данные, или данные деловых измерений; элементы,
которые могут оказывать определенное влияние или порождать различные тенденции в развитии фактов
Слайд 109
Схема типа «звезда»
Категории измерений
Таблица фактов
Люди
Время
Места
Вещи
Слайд 111
Области применения ИС
Управление повседневными бизнес процессами (OLTP)
Поддержка принятия
стратегических решений (OLAP, Data mining)
Управление информационным содержанием
Слайд 113
Особенности проектирования
Таблица фактов:
использование суррогатного ключа
вычисляемые колонки
(объем продаж, стоимость в . . . )
секционирование
вертикальное (восстановление – через join)
горизонтальное (восстановление – через union)
Слайд 114
Особенности проектирования
Таблицы измерений:
существующие таблицы OLTP базы данных
(Товар, Магазин)
новые измерения (из других таблиц базы данных
– Район или из элементов таблиц базы данных – Время)
денормализация таблицы измерений
развертывание измерений – схема типа «снежинка»
Слайд 116
Технология OLAP
Назначение OLAP (Online Analytical Processing) инструментов: предоставить
средства извлечения большого количества записей и вычисления на их
основе некоторых итоговых значений.
Термин OLAP был предложен Коддом в 1993 г. и определяет архитектуру, которая поддерживает сложные аналитические приложения.
Слайд 117
Технология OLAP
Критерий FASMI:
Fast – время отклика:
среднее ~
5 сек;
для простых запросов - ~ 1 сек;
для самых сложных - ~ 20 сек;
более 30 сек – недопустимо
Слайд 118
Технология OLAP
Analysis – система должна справляться с любым
логическим и статистическим анализом, характерным для данного приложения; пользователь
может определять новые вычисления как часть анализа и формировать нужные отчеты без необходимости программирования
Слайд 119
Технология OLAP
Shared – широкие возможности разграничения доступа к
данным и одновременной работы многих пользователей
Multidimensional – должно быть
обеспечено многомерное концептуальное представление данных
Information – необходимая информация должна быть получена там, где она необходима
Слайд 120
Многомерное представление
Анализ изменения объема продаж и дохода торговых
предприятий во времени
Номер записи
Tid (FK1)
Sid (FK2)
Объем продаж
Доход (руб)
.
. .
Продажи
Tid
Месяц
Квартал
Год
Время
Sid
Название
Адрес
Регион
Предприятие
Слайд 121
Многомерное представление
Таблица РБД («плоская»)
Слайд 122
Многомерное представление
Двухмерное представление
Слайд 124
Многомерное представление
Достоинства многомерных структур:
очень компактны
обеспечивают простые средства просмотра
и манипулирования элементами данных, обладающих многими взаимосвязями
Слайд 125
Многомерное представление
Достоинства многомерных структур:
легко расширяются при включении новой
размерности
допускают выполнение операций матричной арифметики, позволяющих легко вычислять средние
и общие значения
Слайд 126
Многомерное представление
«Типичная реляционная СУБД способна сканировать всего несколько
сотен строк в секунду, тогда как типичная многомерная СУБД
способна выполнять обобщающие операции со скоростью до 10000 строк в секунду и даже выше.»
[Коннолли Т. и др.]
Слайд 127
Аналитические операции
Консолидация – обобщающие операции, такие как простое
суммирование значений (свертка), или расчет с использованием сложных выражений,
включающих другие связанные данные
Слайд 128
Аналитические операции
Нисходящий анализ (drill-down) – операция, обратная консолидации;
включает возможность отображения подробных сведений для рассматриваемых консолидированных данных;
Слайд 129
Аналитические операции
Разбиение с поворотом (slicing and dicing) –
также называется созданием сводной таблицы; позволяет получить представление данных
с разных точек зрения. Например, одно представление – сведения о доходах от продаж товаров указанного типа по каждому району, другое представление – данные о доходах магазинов в каждом районе
Слайд 130
Аналитические операции
Предварительное обобщение, использование иерархической структуры размерностей и
управление заполнением пространства кубов позволяют значительно сократить размер базы
данных и исключить потребность многократного вычисления одних и тех же значений
Слайд 131
Правила для OLAP систем
E. Codd, 1993 г.
Многомерное концептуальное
представление данных
Доступность (доступ к требуемым для анализа данным)
Неизменная производительность
подготовки отчетов (количество измерений, степень обобщения данных)
Слайд 132
Правила для OLAP систем
Неограниченные перекрестные операции между размерностями
Неограниченное
число измерений и уровней обобщения
Гибкость средств формирования отчетов
Слайд 133
Категории OLAP инструментов
Berson and Smith, 1997 г.
Многомерные OLAP
инструменты – Multidimensional OLAP, MOLAP
Реляционные OLAP инструменты – Relational
OLAP, ROLAP
Управляемая среда запросов – Managed Query Environment, MQE
Слайд 134
Многомерный OLAP
Специализированные структуры данных и многомерные СУБД
Данные обобщаются
и хранятся в соответствии с их предполагаемым использованием
Высокая производительность
Тесное
взаимодействие с уровнем приложения и уровнем отображения
Слайд 135
Многомерный OLAP
Источники данных
Многомер-ные
кубы
загрузка
запрос
результат
Логический уровень
базы данных и приложения
Уровень
отображения
Слайд 136
Многомерный OLAP
Особенности:
Используемые структуры данных обладают ограниченной способностью поддержки
нескольких предметных областей и осуществления доступа к подробным сведениям
Слайд 137
Многомерный OLAP
Просмотр и анализ данных ограничен процессом проектирования
структуры данных в соответствии с заранее определенными требованиями
Необходимы особый
набор навыков и знаний, использование специальных инструментов создания и сопровождения базы данных
Слайд 138
Реляционный OLAP
Взаимодействие с СУБД – уровень метаданных
Нет необходимости
создания статичной многомерной структуры данных
Дополнительные средства поддержки функций многомерного
анализа
Создание сильно денормализованной базы данных
Слайд 139
Реляционный OLAP
Источники данных
результат
запрос
результат
Уровень
базы данных
Уровень
отображения
Уровень
логики
приложения
SQL
Сервер ROLAP
Слайд 140
Реляционный OLAP
Особенности:
Необходима разработка промежуточного ПО для многомерных приложений
(преобразование отношений РБД в многомерную структуру)
Слайд 141
Реляционный OLAP
Требуется разработка инструментов, предназначенных для создания устойчивых
многомерных структур со вспомогательными компонентами администрирования этих структур
Слайд 142
Дополнительные возможности SQL
Предложение SELECT:
SELECT . . .
FROM . . .
GROUP BY . . .
WITH ROLLUP
| WITH CUBE
Слайд 143
Дополнительные возможности SQL
Пример:
SELECT . . . WITH CUBE
| WITH ROLLUP
Слайд 144
Дополнительные возможности SQL
Пример:
SELECT SName, PName, sum(qty) as
sum
FROM S join SP on S.Sid = SP.Sid
join P on SP.Pid = P.Pid
GROUP BY SName, PName
Слайд 146
Дополнительные возможности SQL
Пример:
SELECT SName, PName, sum(qty) as
sum
FROM S join SP on S.Sid = SP.Sid
join P on SP.Pid = P.Pid
GROUP BY SName, Pname
WITH ROLLUP
Слайд 149
Дополнительные возможности SQL
Пример:
SELECT SName, PName, sum(qty) as
sum
FROM S join SP on S.Sid = SP.Sid
join P on SP.Pid = P.Pid
GROUP BY SName, Pname
WITH CUBE
Слайд 153
Области применения ИС
Управление повседневными бизнес процессами (OLTP)
Слайд 154
Области применения ИС
Поддержка принятия стратегических решений (OLAP, Data
mining)
Слайд 155
Области применения ИС
Enterprise Content Management (ECM) – стратегии,
методы и инструментальные средства, используемые для ввода/сбора, управления, хранения,
архивирования и доставки информационного содержания (контента) и документов, относящихся к ключевым процессам организации
Слайд 156
Информационное содержание
Информационное содержание (контент) – информационные объекты, хранящиеся
в различных форматах, которые можно извлекать, повторно использовать публиковать
(Коммерческие
документы, сообщения электронной почты, образы документов, мультимедийные файлы, …)
Слайд 157
Управление контентом
Создание и сохранение документов
Обработка документов – поиск,
управление версиями, . . .
Получение доступа к содержимому –
управление доступом, аудит, . . .
Управление бизнес процессами – автоматизация, жизненный цикл контента,
. . .
Слайд 158
Управление контентом
Системы управления контентом (CMS, Content Management System)
– управление неструктурированными данными
Элемент контента
Метаданные
Слайд 159
Управление контентом
Репозиторий – управляемый блок хранения контента и
метаданных
Инфраструктура репозитория
Компоненты репозитория
Сервисы репозитория
Сервисы безопасности
Слайд 160
Компоненты репозитория
метаданные
Полнотекстовый индекс
Сервисы каталогов
Слайд 161
Сервисы репозитория
Объектная модель данным
Управление связями объектов
Словарь данных
Сервисы хранения
Поиск
/ запросы
Жизненный цикл
Распределенные / федеративные сервисы
Слайд 162
Сервисы безопасности
Управление доступом
Управление правами
Разрешения
Аудит
Шифрование
Слайд 163
Управление процессами
Workflow – представляет бизнес процессы и приложения,
ориентированные на события. Может быть определен для документов, папок
и виртуальных документов
Lifecycle – последовательность состояний, в которых в которых может находиться отдельный документ
Слайд 164
Workflow
Бизнес процесс – набор связанных действий, которые создают
некоторый результат, преобразуя исходные данные в более значимые выходные
данные
workflow
Исходные
данные –
документ
Выходные
данные –
документ
Слайд 165
Workflow
Описание процесса
Задача (activity)
Исполнитель (performer)
Поток информации (flow)
Конкретное выполнение
работ – процесс (workflow)
начало
Слайд 166
Lifecycle
Строго последовательное переключение состояний
Состояния жизненного цикла
Стартовое –
создание документа, ввод содержимого
Промежуточные состояния – различные стадии документа
Конечное
состояние – передача документа в архив