Создание систем поддержки принятия решений на основе хранилищ данных

Автор: Пользователь скрыл имя, 19 Марта 2012 в 09:28, реферат

Описание работы

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

Содержание

Введение 3
1 Зарождение концепции хранилища данных 5
2 Технология разработки и внедрения Хранилища Данных 6
2.1 Этапы проекта 6
2.2 Выбор модели данных Хранилища 9
2.3 Выбор структуры Хранилища Данных 12
2.4 Витрины Данных 14
2.5 Хранилище Метаданных (Репозитарий) 16
2.6 Загрузка Хранилища 18
2.7 Анализ данных: OLAP 20
3 Интеллектуальный анализ данных 23
Заключение 26
Список литературы

Работа содержит 1 файл

Создание систем поддержки принятия решений на основе хранилищ данных.doc

— 149.50 Кб (Скачать)

Когда структура метаданных разработана и система управления ими спроектирована, решается задача заполнения и обновления данных в ХД.

 

2.6. Загрузка Хранилища

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

При описании технологии заполнения Хранилища будем различать три взаимосвязанные задачи: Сбор Данных (Data Acquisition), Очистка Данных (Data Cleansing) и Агрегирование Данных (Data Consolidation).

Под Сбором Данных будем понимать процесс, который состоит в организации передачи данных из внешних источников в Хранилище. Лишь некоторые аспекты этого процесса полностью или частично автоматизированы в имеющихся продуктах. Прежде всего, это относится к интерфейсам с существующими БД. Как правило, здесь имеется несколько возможностей. Во-первых, поддерживаются интерфейсы всех крупных производителей серверов баз данных (Oracle, Informix, ADABAS и т. д.). Во-вторых, практически всегда имеется ODBC-интерфейс, и, в-третьих, можно извлекать данные из текстовых файлов в формате CSV (comma separated values) и из некоторых структурированных файлов, например файлов dBase. Набор имеющихся интерфейсов - важнейшая характеристика, которая часто позволяет оценить, для каких задач проектировался продукт. Так, если среди поддерживаемых интерфейсов имеются AS/400, DB2/400, IMS, VSAM (как в популярном продукте PASSPORT фирмы Carleton), то он предназначен скорее для использования в системах, работающих на больших мэйнфреймах, чем в сети из ПК. Несколько иной набор интерфейсов предлагает, например, хорошо известный продукт InfoPump фирмы PLATINUM Technology, который обеспечивает поддержку Lotus Notes, Microsoft Access, dBase и работу с текстовыми файлами. Крупные производители серверов либо имеют собственные средства сбора данных либо устанавливают партнерские отношения с производителями таких средств и разрабатывают инструментарий промежуточного уровня для тиражирования "чужих" данных (таков, например, Replication Server фирмы Sybase).

Второй аспект процесса сбора данных, который автоматизирован в некоторых продуктах, - это организация процесса пополнения Хранилища. В том же InfoPump, например, имеется возможность строить расписание пополнения Хранилища данными либо на временной основе, либо с использованием механизма событий. Имеются и более сложные программные комбинации, например корпорация Software AG разработала собственное решение для сбора и очистки данных, называемое, SourcePoint, которое на нижнем уровне использует PASSPORT, а функции организации расписаний реализует как надстройку над этим нижним уровнем. Помимо этого SourcePoint реализует параллельные извлечение, передачу данных и заполнение Хранилища.

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

При заполнении Хранилища агрегированными данными мы должны обеспечить выборку данных из транзакционной базы данных и других источников в соответствии с метаданными, поскольку агрегирование происходит в терминах бизнес-понятий. Так, например, агрегированная величина "объем продаж продукта Х в регионе Y за последний квартал" содержит понятия "продукт" и "регион", которые являются бизнес-понятиями данного предприятия. Следует подчеркнуть, что задача выборки необходимых данных не может быть решена полностью автоматически: возможны коллизии (отсутствие необходимых данных, ошибки в данных и т. п.), когда вмешательство человека окажется необходимым. Далее, предполагая, что объектом анализа являются числовые показатели, связанные с бизнес-понятиями, такие как ОБЪЕМ ПРОДАЖ или ПРИБЫЛЬ, необходимо определить правила вычисления этих показателей для составных бизнес-понятий, исходя из их значений для более простых бизнес-понятий. Это и есть правила агрегирования.

Простейшей архитектурой системы на основе ХД является архитектура клиент-сервер. Традиционно само хранилище размещается на сервере (или на серверах), а анализ данных выполняется на клиентах. Некоторое усложнение в эту схему вносят Витрины Данных. Они также размещаются на серверах, но, учитывая взаимодействия между Витринами, приходится вводить так называемые переходники (Hub Servers), через которые идет обмен данными между Витринами.

 

2.7. Анализ данных: OLAP

Предположим теперь, что в общем случае имеется корпоративное ХД и ряд Витрин Данных. Каким образом следует организовать доступ к информации для анализа? Сейчас принята точка зрения, согласно которой требуется обеспечить возможность анализа данных как из Витрин, так и непосредственно из Хранилища. Разница здесь определяется не столько размером базы (Витрина может лишь ненамного уступать Хранилищу), сколько тем, что Витрины, как правило, не содержат детальных - неагрегированных данных. Это означает, что анализ данных Витрины не требует глубокой детализации и часто может быть выполнен более простыми средствами.

Наряду с мощными серверами многомерных баз данных и ROLAP-серверами на рынке предлагаются клиентские OLAP-серверы, предназаначенные, главным образом, для работы с небольшими объемами данных и ориентированные на индивидуального пользователя. Подобные системы были названы настольными, или DOLAP-серверами (Desktop OLAP). В этом направлении работают фирмы Business Objects (Business Objects 5.0), Andyne (CubeCreator, PaBLO), Cognos, Brio Technology.

Лидером пока считается компания Cognos, поставляющая продукты PowerPlay, Impromptu и Scenario. PowerPlay - это настольный OLAP-сервер, для извлечения данных из реляционных баз данных (Paradox, dBase, Clipper), "плоских" файлов и электронных таблиц (Microsoft Excel) используется генератор запросов и отчетов Impromptu. Затем специальный компонент, называемый Transformer, помещает извлеченные данные в клиентскую многомерную базу, которая называется PowerCube. Потребителям предоставляются широкие возможности по управлению PowerCube: передавать ее от пользователя к пользователю по запросу и принудительно, помещать на сервер для разделения доступа к ней или пересылать по электронной почте. Cognos постаралась сделать свой продукт максимально открытым: во-первых, PowerCube может быть помещен в реляционные базы Oracle, Informix, Sybase, MS SQL Server на платформах UNIX, HP/UX, Sun Solaris, IBM AIX, во-вторых, сам PowerPlay способен анализировать содержимое не только PowerCube, но и других многомерных баз данных.

Стоит отметить, что все эти фирмы объединяет стремление включить в свои продукты компоненты, предназначенные для Интеллектуального Анализа Данных (Data Mining, ИАД). Например, усилия Business Objects и Cognos направлены на подготовку окончательных версий компонентов Business Miner и Scenario, соответственно, предназначенных именно для ИАД.

Необходимо также упомянуть о новом направлении развития архитектур систем клиент-сервер, называемом трехуровневой архитектурой клиент-агент-сервер. Применительно к СППР традиционная двухуровневая архитектура подразумевает, что Хранилище Данных или Витрина Данных размещаются на сервере, а аналитическая обработка и пользовательские интерфейсы поддерживаются клиентом. Можно привести некоторые условия, при которых двухуровневая архитектура работает эффективно:

        объем данных, пересылаемых между клиентом и сервером, не очень велик;

        большая часть вычислений может быть выполнена заранее;

        круг пользователей-клиентов четко определен, так что сервер обслуживает умеренное число запросов в единицу времени;

        нет необходимости поддерживать разделение данных между клиентами (клиенты изолированы друг от друга);

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

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

В трехуровневых архитектурах между клиентом и сервером (который теперь называется корпоративным сервером) помещается еще одни сервер, называемый сервером приложений. Обязанностью корпоративного сервера является работа с корпоративными данными, например с Хранилищем Данных: организация доступа к Хранилищу, разделение ресурсов между клиентами и т. д. Клиент по-прежнему реализует пользовательский интерфейс, выполняет пользовательские операции с данными и хранит локальные данные. Сервер приложений выполняет роль посредника между клиентом и корпоративным сервером, снижая нагрузку на последний.

Для данной архитектуры в примере с поиском отношения прибыль/расходы вычисление этого отношения следовало бы выполнять на сервере приложений. В ROLAP-системах сервер приложений выполняет соединения таблиц в соответствии с пользовательским запросом. Кроме того, сервер приложений может осуществлять динамическое агрегирование данных. В DOLAP-системах сервер приложений может хранить клиентские гиперкубы.

Логическое разделение системы на три уровня не означает наличия трех физических уровней обработки. Теоретически все три уровня могут быть реализованы на одной машине. Наличие трех логических уровней означает, во-первых, строгое разделение обязанностей между уровнями и, во-вторых, регламентацию связей между ними. Так, например, клиент не может непосредственно обратиться к корпоративному серверу.

 

3. Интеллектуальный анализ данных

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

Существует два подхода. В первом случае пользователь сам выдвигает гипотезы относительно зависимостей между данными. Фактически традиционные технологии анализа развивали именно этот подход. Действительно, гипотеза приводила к построению отчета, анализ отчета к выдвижению новой гипотезы и т. д. Это справедливо и в том случае, когда пользователь применяет такие развитые средства, как OLAP, поскольку процесс поиска по-прежнему полностью контролируется человеком. Во многих системах ИАД в этом процессе автоматизирована проверка достоверности гипотез, что позволяет оценить вероятность тех или иных зависимостей в базе данных. Типичным примером может служить, такой вывод: вероятность того, что рост продаж продукта А обусловлен ростом продаж продукта В, составляет 0,75.

Второй подход основывается на том, что зависимости между данными ищутся автоматически. Количество продуктов, выполняющих автоматический поиск зависимостей, говорит о растущем интересе производителей и потребителей к системам именно такого типа. Сообщается о резком росте прибылей клиентов за счет верно найденной, заранее неизвестной зависимости. Упоминается пример сети британских универсамов, где ИАД применялся при анализе убытков от хищений товаров в торговых залах. Было обнаружено, что к наибольшим убыткам приводят хищения мелких "сопутствующих" товаров: ручек, батареек и т. п. Простой перенос прилавков с этими товарами ближе к расчетным узлам позволил снизить убытки на 1000%.

Сегодня количество фирм, предлагающих продукты ИАД, исчисляется десятками, однако, не рассматривая их подробно, приведем лишь классификацию процессов ИАД, применяющихся на практике.

Процессы ИАД подразделяются на три большие группы: поиск зависимостей (discovery), прогнозирование (predictive modelling) и анализ аномалий (forensic analysis). Поиск зависимостей состоит в просмотре базы данных с целью автоматического выявления зависимостей. Проблема здесь заключается в отборе действительно важных зависимостей из огромного числа существующих в БД. Прогнозирование предполагает, что пользователь может предъявить системе записи с незаполненными полями и запросить недостающие значения. Система сама анализирует содержимое базы и делает правдоподобное предсказание относительно этих значений. Анализ аномалий - это процесс поиска подозрительных данных, сильно отклоняющихся от устойчивых зависимостей.

В системах ИАД применяется чрезвычайно широкий спектр математических, логических и статистических методов: от анализа деревьев решений (Business Objects) до нейронных сетей (NeoVista). Пока трудно говорить о перспективности или предпочтительности тех или иных методов. Технология ИАД сейчас находится в начале пути, и практического материала для каких-либо рекомендаций или обобщений явно недостаточно.

Необходимо также упомянуть об интеграции ИАД в информационные системы. Многие методы ИАД возникли из задач экспертного анализа, поэтому входными данными для них традиционно служат "плоские" файлы данных. При использовании ИАД в СППР часто приходится сначала извлекать данные из Хранилища, преобразовывать их в файлы нужных форматов и только потом переходить собственно к интеллектуальному анализу. Затем результаты анализа требуется сформулировать в терминах бизнес-понятий. Важный шаг вперед сделала компания Information Discovery, разработавшая системы OLAP Discovery System и OLAP Affinity System, предназначенные специально для интеллектуального анализа многомерных агрегированных данных.

Информация о работе Создание систем поддержки принятия решений на основе хранилищ данных