Olap системы
7. Обзор ИТ, предназначенных для оперативной и аналитической обработки данных
Успешно изучив материал, Вы будете знать:
-
понятие и основное назначение OLTP-систем;
-
понятие и основное назначение OLAP-систем;
-
классы OLAP-систем;
-
задачи, решаемые OLTP- и OLAP-системами.
После изучения данной темы Вы будете уметь:
-
отличать задачи, решаемые OLTP- и OLAP-системами;
-
ориентироваться в классах OLAP-систем.
После изучения материала Вы будете обладать навыками использования OLTP- и OLAP-системам в работе менеджера.
Основные понятия к теме 7
OLTP-система
OLAP-система
Data Warehousing — «хранилища (склады) данных»
В области ИТ управления существуют два взаимно дополняющих друг друга направления:
-
технологии, ориентированные на оперативную (транзакционную) обработку данных. Эти технологии лежат в основе КИСУ, предназначенных для оперативной обработки данных. Называются подобные системы — OLTP (online transaction processing) системы;
-
технологии, ориентированные на анализ данных и принятие решений. Эти технологии лежат в основе КИСУ, предназначенных для анализа накопленных данных. Называются подобные системы — OLAP (online analytical processing) системы.
7.1. OLAP-системы
Основное назначение OLAP-систем: динамический многомерный анализ исторических и текущих данных, стабильных во времени; анализ тенденций; моделирование и прогнозирование будущего. Такие системы, как правило, ориентированы на обработку произвольных, заранее не регламентированных запросов. В качестве основных характеристик этих систем можно отметить следующие:
-
поддержка многомерного представления данных, равноправие всех измерений, независимость производительности от количества измерений;
-
прозрачность для пользователя структуры, способов хранения и обработки данных;
-
автоматическое отображение логической структуры данных во внешние системы;
-
динамическая обработка разряженных матриц эффективным способом.
Термин OLAP часто отождествляют с системами поддержки принятия решений DSS (Decision Support Systems). А в качестве синонима термина «решения» используют Data Warehousing — «хранилища (склады) данных». Под этим понимается набор организационных решений, программных и аппаратных средств для обеспечения аналитиков информацией на основе данных из систем обработки транзакций нижнего уровня и других источников.
«Склады данных» позволяют обрабатывать данные, накопленные за длительные периоды времени. Эти данные являются разнородными (и не обязательно структурированными). Для «складов данных» присущ многомерный характер запросов. Огромные объемы данных, сложность структуры как данных, так и запросов — все это требует использования специальных методов доступа к информации.
В других источниках понятие Системы Поддержки Принятия Решений (СППР) считается более широким. Хранилища данных и средства оперативной аналитической обработки могут служить одними из компонентов архитектуры СППР.
OLAP всегда включает в себя интерактивную обработку запросов и последующий многопроходный анализ информации, который позволяет выявить разнообразные, не всегда очевидные тенденции, наблюдающиеся в предметной области.
Иногда различают OLAP в узком смысле — как системы, которые обеспечивают только выборку данных в различных разрезах, и OLAP в широком смысле, или просто OLAP, включающие в себя:
-
поддержку нескольких пользователей, редактирующих БД.
-
функции моделирования, в том числе вычислительные механизмы получения производных результатов, а также агрегирования и объединения данных;
-
прогнозирование, выявление тенденций и статистический анализ.
Каждый из этих типов систем требует специфической организации данных, а также специальных программных средств, обеспечивающих эффективное выполнение стоящих задач.
OLAP-средства обеспечивают проведение анализа деловой информации по множеству параметров, таких как вид товара, географическое положение покупателя, время оформления сделки и продавец, каждый из которых допускает создание иерархии представлений. Так, для времени можно пользоваться годовыми, квартальными, месячными и даже недельными и дневными промежутками; географическое разбиение может проводиться по городам, штатам, регионам, странам или, если потребуется, по целым полушариям.
OLAP-системы можно разбить на три класса.
1 класс. Наиболее сложными и дорогими из них являются основанные на патентованных технологиях серверы многомерных БД. Эти системы обеспечивают полный цикл OLAP-обработки и либо включают в себя, помимо серверного компонента, собственный интегрированный клиентский интерфейс, либо используют для анализа данных внешние программы работы с электронными таблицами. Продукты этого класса в наибольшей степени соответствуют условиям применения в рамках крупных информационных хранилищ. Для их обслуживания требуется целый штат сотрудников, занимающихся как установкой и сопровождением системы, так и формированием представлений данных для конечных пользователей. Обычно подобные пакеты довольно дороги. В качестве примеров продуктов этого класса можно привести систему Essbase корпорации Arbor Software, Express фирмы IRI (входящей теперь в состав Oracle), Lightship производства компании Pilot Software и др.
2 класс OLAP-систем — реляционные OLAP-системы (ROLAP). Здесь для хранения данных используются старые реляционные СУБД, а между БД и клиентским интерфейсом организуется определяемый администратором системы слой метаданных. Через этот промежуточный слой клиентский компонент может взаимодействовать с реляционной БД как с многомерной. Подобно средствам первого класса, ROLAP-системы хорошо приспособлены для работы с крупными информационными хранилищами, требуют значительных затрат на обслуживание специалистами информационных подразделений и предусматривают работу в многопользовательском режиме. Среди продуктов этого типа — IQ/Vision корпорации IQ Software, DSS/Server и DSS/Agent фирмы MicroStrategy и DecisionSuite компании Information Advantage.
ROLAP-средства реализуют функции поддержки принятия решений в надстройке над реляционным процессором БД.
Такие программные продукты должны отвечать ряду требований, в частности:
-
иметь мощный оптимизированный для OLAP генератор SQL-выражений, позволяющий применять многопроходные SQL-операторы SELECT и/или коррелированные подзапросы;
-
обладать достаточно развитыми средствами для проведения нетривиальной обработки, обеспечивающей ранжирование, сравнительный анализ и вычисление процентных соотношений в рамках класса;
-
генерировать SQL-выражения, оптимизированные для целевой реляционной СУБД, включая поддержку доступных в ней расширений этого языка;
-
предоставлять механизмы описания модели данных с помощью метаданных и давать возможность использовать эти метаданные для построения запросов в реальном масштабе времени;
-
включать в себя механизм, позволяющий оценивать качество построения сводных таблиц с точки зрения скорости вычисления, желательно с накоплением статистики по их использованию.
3 класс OLAP-систем — инструменты генерации запросов и отчетов для настольных ПК, дополненные OLAP-функциями или интегрированные с внешними средствами, выполняющими такие функции. Эти весьма развитые системы осуществляют выборку данных из исходных источников, преобразуют их и помещают в динамическую многомерную БД, функционирующую на ПК конечного пользователя. Указанный подход, позволяющий обойтись как без дорогостоящего сервера многомерной БД, так и без сложного промежуточного слоя метаданных, необходимого для ROLAP-средств, обеспечивает в то же время достаточную эффективность анализа. Эти средства для настольных ПК лучше всего подходят для работы с небольшими, просто организованными БД. Потребность в квалифицированном обслуживании для них ниже, чем для других OLAP-систем, и примерно соответствует уровню обычных сред обработки запросов. В числе основных участников этого сектора рынка — компания Brio Technology со своей системой Brio Query Enterprise, Business Objects с одноименным продуктом и Cognos с PowerPlay.
7.2. OLTP-системы
OLTP-системы, являясь высокоэффективным средством реализации оперативной обработки, оказались малопригодны для задач аналитической обработки. Это вызвано следующим.
-
Средствами традиционных OLTP-систем можно построить аналитический отчет и даже прогноз любой сложности, но заранее регламентированный. Любой шаг в сторону, любое нерегламентированное требование конечного пользователя, как правило, требует знаний о структуре данных и достаточно высокой квалификации программиста;
-
Многие необходимые для оперативных систем функциональные возможности являются избыточными для аналитических задач и в то же время могут не отражать предметной области. Для решения большинства аналитических задач требуется использование внешних специализированных инструментальных средств для анализа, прогнозирования и моделирования. Жесткая же структура баз не позволяет достичь приемлемой производительности в случае сложных выборок и сортировок и, следовательно, требует больших временных затрат для организации шлюзов.
-
В отличие от транзакционных, в аналитических системах не требуются и, соответственно, не предусматриваются развитые средства обеспечения целостности данных, их резервирования и восстановления. Это позволяет не только упростить сами средства реализации, но и снизить внутренние накладные расходы и, следовательно, повысить производительность при выборке данных.
7.3. Задачи, решаемые OLTP- и OLAP-системами
Таблица 7.1.
Задачи, решаемые OLTP- и OLAP-системами
Характеристика |
||
Частота обновления данных |
Высокая частота, небольшие «порции» |
Малая частота, большие «порции» |
Источники данных |
В основном внутренние |
По отношению к аналитической системе, в основном внешние |
Возраст данных |
Текущие (несколько месяцев) |
Исторически (за годы) и прогнозируемые |
Уровень агрегации данных |
Детализированные данные |
В основном агрегированные данные |
Возможности аналитических операций |
Регламентированные отчеты |
Последовательность интерактивных отчетов, динамическое изменение уровней агрегаций и срезов данных |
Назначение системы |
Фиксация, оперативный поиск и обработка данных, регламентированная аналитическая обработка |
Работа с историческими данными, аналитическая обработка, прогнозирование, моделирование |
Таблица 7.2.
Сравнение OLTP и OLAP
Характеристика | ||
Преобладающие операции |
Ввод данных, поиск |
Анализ данных |
Характер запросов |
Много простых транзакций |
Сложные транзакции |
Хранимые данные |
Оперативные, детализированные |
охватывающие большой период времени, агрегированные |
Вид деятельности |
Оперативная, тактическая |
Аналитическая, стратегическая |
Тип данных |
Структурированные |
Разнотипные |
Основные выводы
-
В области ИТ управления существуют два взаимно дополняющих друг друга направления:
-
технологии, ориентированные на оперативную (транзакционную) обработку данных — OLTP (online transaction processing) системы;
-
технологии, ориентированные на анализ данных и принятие решений — OLAP (online analytical processing) системы.
-
-
Основное назначение OLAP-систем — динамический многомерный анализ исторических и текущих данных, стабильных во времени, анализ тенденций, моделирование и прогнозирование будущего.
OLAP-системы можно разбить на три класса.
1 класс. Серверы многомерных БД. Эти системы обеспечивают полный цикл OLAP-обработки и либо включают в себя, помимо серверного компонента, собственный интегрированный клиентский интерфейс, либо используют для анализа данных внешние программы работы с электронными таблицами.
2 класс. Реляционные OLAP-системы (ROLAP). Здесь для хранения данных используются старые реляционные СУБД, а между БД и клиентским интерфейсом организуется определяемый администратором системы слой метаданных. Через этот промежуточный слой клиентский компонент может взаимодействовать с реляционной БД как с многомерной.
3 класс. Инструменты генерации запросов и отчетов для настольных ПК, дополненные OLAP-функциями или интегрированные с внешними средствами, выполняющими такие функции. Эти системы осуществляют выборку данных из исходных источников, преобразуют их и помещают в динамическую многомерную БД, функционирующую на ПК конечного пользователя.
OLTP-системы, являясь высокоэффективным средством реализации оперативной обработки, оказались малопригодны для задач аналитической обработки.
Data Warehousing — «хранилища (склады) данных». Под этим понимается набор организационных решений, программных и аппаратных средств для обеспечения аналитиков информацией на основе данных из систем обработки транзакций нижнего уровня и других источников.
Контрольные вопросы
-
Какие два взаимно дополняющих друг друга направления существуют в области ИТ управления?
-
Сформулируйте основное назначение OLAP-систем
-
Сформулируйте основное назначение OL T P-систем
-
Что понимается под термином Data Warehousing?
Задания для самостоятельной работы
В тетради-практикуме выполните задания к теме 7.
После того как данные получены, очищены, приведены к единому виду и помещены в хранилище, их необходимо анализировать. Для этого используется технология OLAP.
Двенадцать определяющих принципов OLAP были сформулированы в 1993 году Е.Ф.Коддом, «изобретателем» реляционных баз данных. OLAP — это OnLine Analytical Processing, то есть оперативный анализ данных. Позже определение Кодда было переработано в так называемый тест FASMI (Fast Analysis of Shared Multidimensional Information — быстрый анализ разделяемой многомерной информации), который требует, чтобы OLAP-приложение предоставляло следующие возможности быстрого анализа разделяемой многомерной информации: высокая скорость; анализ; разделение доступа; многомерность; работа с информацией..
Высокая скорость. Анализ должен производиться одинаково быстро по всем аспектам информации. При этом допустимое время отклика составляет не более 5 секунд.
Анализ. Должна существовать возможность производить основные типы числового и статистического анализа — предопределенного разработчиком приложения или произвольно определяемого пользователем.
Разделение доступа. Доступ к данным должен быть многопользовательским, при этом должен контролироваться доступ к конфиденциальной информации.
Многомерность. Основная, наиболее существенная характеристика OLAP.
Работа с информацией. Приложение должно иметь возможность обращаться к любой нужной информации, независимо от ее объема и места хранения.
Многомерное представление. OLAP предоставляет организациям максимально удобные и быстрые средства доступа, просмотра и анализа деловой информации. Что наиболее важно — OLAP обеспечивает пользователя естественной, интуитивно понятной моделью данных, организуя их в виде многомерных кубов (Cubes). Осями (dimensions) многомерной системы координат служат основные атрибуты анализируемого бизнес-процесса. Например, для процесса продаж это может быть категория товара, регион, тип покупателя. Практически всегда в качестве одного из измерений используется время. Внутри куба находятся данные, количественно характеризующие процесс, — так называемые меры (Measures). Это могут быть объемы продаж в штуках или в денежном выражении, остатки на складе, издержки и т.п. Пользователь, анализирующий информацию, может «нарезать» куб по разным направлениям, получать сводные (например, по годам) или, наоборот, детальные (по неделям) данные и осуществлять прочие операции, которые необходимы ему для анализа.
Хранение данных OLAP. В первую очередь нужно сказать о том, что, поскольку аналитик всегда оперирует некими суммарными (а не детальными) данными, в базах данных OLAP практически всегда хранятся наряду с детальными данными и так называемые агрегаты, то есть заранее вычисленные суммарные показатели. Примерами агрегатов может служить суммарный объем продаж за год или средний остаток товара на складе. Хранение заранее вычисленных агрегатов — это основной способ повышения скорости выполнения OLAP-запросов.
Однако построение агрегатов может привести к значительному увеличению объема базы данных.
Другой проблемой хранения OLAP-данных является разреженность многомерных данных. Например, если в 2000 году продаж в некотором регионе не было, то на пересечении соответствующих измерений куба не будет никакого значения. Если OLAP-сервер будет хранить в таком случае некое отсутствующее значение, то при значительной разреженности данных количество пустых ячеек (требующих, тем не менее, места для хранения) может во много раз превысить количество заполненных, и в результате общий объем неоправданно возрастет. Решения, предлагаемые для этого компанией Microsoft, приводятся ниже.
Разновидности OLAP. Для хранения OLAP-данных могут использоваться:
Специальные многомерные СУБД (OLAP-серверы). В этом случае говорят о MOLAP (Multidimensional OLAP). При выполнении сложных запросов, анализирующих данные в различных измерениях, многомерные СУБД обеспечивают большую производительность, чем реляционные. При этом скорость выполнения запроса не зависит от того, по какому измерению производится «срез» многомерного куба.
Традиционные реляционные СУБД — ROLAP (Relational OLAP). Применение специальных структур данных — схемы «звезды» (star) и «снежинки» (snowflake), а также хранение вычисленных агрегатов делают возможным многомерный анализ реляционных данных. Реляционные СУБД исторически более привычны, и в них сделаны значительные инвестиции, поэтому пока ROLAP более распространен.
Комбинированный вариант — HOLAP (Hybrid OLAP), совмещающий и тот и другой вид СУБД. Одним из вариантов совмещения двух типов СУБД является хранение агрегатов в многомерной СУБД, а детальных данных (имеющих наибольший объем) — в реляционной.
Компания Microsoft предлагает следующие средства OLAP-анализа:
В комплект Microsoft SQL Server 7.0 входит полнофункциональный OLAP-сервер — SQL Server OLAP Services. Сервер, естественно, предназначен для обслуживания запросов клиентов, а для этого требуется некий протокол взаимодействия и язык запросов. Например, для взаимодействия клиента с серверной реляционной СУБД — SQL Server — используются протоколы ODBC или OLE DB и язык запросов SQL. Для доступа к OLAP-серверу компанией Microsoft был разработан протокол OLE DB for OLAP и язык запросов к многомерным данным — MDX (MultiDimensional eXpression). Аналогично тому, как для упрощения и удобства над OLE DB разработан слой объектов ADO (ActiveX Data Objects), над OLE DB for OLAP построен ADO MD (MultiDimensional ADO).
Средства анализа данных в Microsoft Office 2000.Microsoft Excel 2000 содержит новый механизм сводных таблиц — OLAP PivotTable, который заменил собой одноименный механизм предыдущих версий. Наряду с прежними возможностями анализа реляционных данных, механизм PivotTable теперь включает возможности анализа OLAP-данных, то есть выступает в качестве OLAP-клиента. В качестве сервера может использоваться Microsoft SQL Server 7.0, а также любой продукт, поддерживающий интерфейс OLE DB for OLAP. Механизм сводных таблиц Excel в полном объеме поддерживает возможности, предоставляемые описанным выше сервисом PivotTable Services (PTS). Таким образом, анализируемые OLAP-данные могут находиться как в локальных кубах, так и на OLAP-сервере.
Microsoft Office 2000 содержит также набор ActiveX-компонентов, называемых Office 2000 Web Components, которые позволяют организовать анализ OLAP-данных средствами просмотра Web. К ним относятся следующие четыре компонента:
Spreadsheet — реализует ограниченную функциональность листа Excel.
PivotTable — «близнец» сводных таблиц Excel; может работать с данными OLAP Services.
Chart — позволяет строить диаграммы, основанные как на реляционных, так и на OLAP-данных.
Data Source — служебный компонент для привязки остальных компонентов к источнику данных.
При работе с OLAP-данными Web Components обращаются к PivotTable Services.
5.5. ТЕХНОЛОГИЯ АНАЛИЗА «DATA MINING»
Появление технологии Data Mining связано с необходимостью извлекать знания из накопленных информационными системами разнородных данных. Возникло понятие, которое по-русски стали называть «добыча», «извлечение» знаний. За рубежом утвердился термин «Data Mining».
Широко использовавшиеся раньше методы математической статистики оказались полезными главным образом для проверки заранее сформулированных гипотез (verification-driven data mining) и для «грубого» разведочного анализа, составляющего основу оперативной аналитической обработки данных (online analytical processing – OLAP).
Ключевое достоинство «Data Mining» по сравнению с предшествующими методами – возможность автоматического порождения гипотез о взаимосвязи между различными параметрами или компонентами данных. Работа аналитика при работе с традиционным пакетом обработки данных сводится фактически к проверке или уточнению одной-двух порожденных им самим гипотез. В тех случаях, когда начальных предположений нет, а объем данных значителен, существующие системы теряют работоспособность и превращаются в пожирателей времени аналитика.
Еще одна важная особенность систем Data Mining возможность обработки многомерных запросов и поиска многомерных зависимостей. Уникальна также способность систем data mining автоматически обнаруживать исключительные ситуации – т.е. элементы данных, «выпадающие» из общих закономерностей.
Выделяют пять стандартных типов закономерностей, которые позволяют выявлять методы Data Mining
ассоциация
последовательность
классификация
кластеризация
прогнозирование
Поиск шаблонов производится методами, не ограниченными рамками априорных предположений о структуре выборки и виде распределений значений анализируемых показателей. Примеры заданий на такой поиск при использовании Data Mining приведены в таблице 1.
Таблица 1 – Сравнение формулировок задач при использовании методов OLAP и Data Mining
OLAP | Data Mining |
Каковы средние показатели травматизма для курящих и некурящих? | Встречаются ли точные шаблоны в описаниях людей, подверженных повышенному травматизму? |
Каковы средние размеры телефонных счетов существующих клиентов в сравнении со счетами бывших клиентов (отказавшихся от услуг телефонной компании)? | Имеются ли характерные портреты клиентов, которые, по всей вероятности, собираются отказаться от услуг телефонной компании? |
Какова средняя величина ежедневных покупок по украденной и не украденной кредитной карточке? | Существуют ли стереотипные схемы покупок для случаев мошенничества с кредитными карточками? |
Data Mining является мультидисциплинарной областью, возникшей и развивающейся на базе достижений прикладной статистики, распознавания образов, методов искусственного интеллекта, теории баз данных и др. (см. рис. 2).
Рис.2. Data Mining как мультидисциплинарная система
Системы Data Mining интегрируют в себе сразу несколько подходов, но, как правило, с преобладанием какого-то одного компонента.
Приведем примеры некоторых возможных бизнес-приложений Data Mining.
Предприятия розничной торговли сегодня собирают подробную информацию о каждой отдельной покупке, используя кредитные карточки с маркой магазина и компьютеризованные системы контроля. Типичные задачи, которые можно решать с помощью DataMining в сфере розничной торговли, это анализ покупательской корзины, исследование временных шаблонов, создание прогнозирующих моделей.
Анализ покупательской корзины (анализ сходства) предназначен для выявления товаров, которые покупатели стремятся приобретать вместе. Знание покупательской корзины необходимо для улучшения рекламы, выработки стратегии создания запасов товаров и способов их раскладки в торговых залах.
Исследование временных шаблонов помогает торговым предприятиям принимать решения о создании товарных запасов. Оно дает ответы на вопросы типа: «Если сегодня покупатель приобрел видеокамеру, то через какое время он вероятнее всего купит новые батарейки и пленку?».
Создание прогнозирующих моделей дает возможность торговым предприятиям узнавать характер потребностей различных категорий клиентов с определенным поведением, например, покупающих товары известных дизайнеров или посещающих распродажи. Эти знания нужны для разработки точно направленных, экономичных мероприятий по продвижению товаров.
Достижения технологии Data Mining используются в банковском деле для решения следующих распространенных задач:
Выявление мошенничества с кредитными карточками. Путем анализа прошлых транзакций, которые впоследствии оказались мошенническими, банк выявляет некоторые стереотипы такого мошенничества.
Сегментация клиентов. Разбивая клиентов на различные категории, банки делают свою маркетинговую политику более целенаправленной и результативной, предлагая различные виды услуг разным группам клиентов.
Прогнозирование изменений клиентуры. Data Mining помогает банкам строить прогнозные модели ценности своих клиентов и соответствующим образом обслуживать каждую категорию.
Страховые компании в течение ряда лет накапливают большие объемы данных. Здесь также можно использовать методы Data Mining: для выявления мошенничества и анализа риска.
Выявление мошенничества. Страховые компании могут снизить уровень мошенничества, отыскивая определенные стереотипы в заявлениях о выплате страхового возмещения, характеризующих взаимоотношения между юристами, врачами и заявителями.
Анализ риска. Путем выявления сочетаний факторов, связанных с оплаченными заявлениями, страховщики могут уменьшить свои потери по обязательствам. Известен случай, когда в США крупная страховая компания обнаружила, что суммы, выплаченные по заявлениям людей, состоящих в браке, вдвое превышают суммы по заявлениям одиноких людей. Компания отреагировала на это новое знание пересмотром своей общей политики предоставления скидок семейным клиентам.
В настоящее время для решения задач DM используются нейросетевые технологии, статистические пакеты SAS, SPSS, STATISTICA, STATGRAPHICS и др. Исследование данных (Data Mining – DM) – одно из самых ценных новшеств SQL Server 2000.
В версии SQL Server 7.0 специалисты Microsoft впервые реализовали аналитическую службу OLAP, предоставляющую возможности составления нерегламентированных (гибких) запросов и анализа данных. В процессе работы с нерегламентированными запросами аналитик точно знает, на какие вопросы клиент хотел бы получить ответы, и просто извлекает нужную информацию из куба OLAP. Например, управляющий заведением типа Fast-food мог бы спросить: «Какова тенденция роста доходов и прибыли от продажи гамбургеров за последние четыре квартала?»
При проведении специального анализа данных аналитик имеет представление о том, что интересует его клиента, но перечня точно сформулированных вопросов у него нет. Например, в компании известно, что некоторые принадлежащие ей магазины розничной торговли не приносят дохода, но никто не понимает, чем это вызвано. Аналитик начинает навигацию по кубу данных OLAP, следуя за предположением, которое кажется ему наиболее верным. При этом он то углубляется в детали, то вращает размерности многомерного куба данных.
Исследование данных средствами DM отличается и от работы с нерегламентированными запросами, и от специального анализа данных. При проведении исследования данных службы Analysis Services путешествуют по информационным измерениям самостоятельно, отыскивают данные, которые относятся к делу, и представляют эти данные пользователю.
SQL Server 2000 применяет для предоставления возможностей DM новый интерфейс приложений (API), называемый OLE DB for Data Mining (OLE DB for DM).
В состав SQL Server 2000 вошли два алгоритма DM, так называемые деревья принятия решений и алгоритм кластеризации.
it-konsultant.ru
Начиная разговор об OLAP не обойтись без экскурса в историю. Безусловно, мы проследуем интересной витиеватой дорогой, которую для нас проложили разработчики этой технологии, но сперва определимся, о чем же будет речь.
Расшифровка аббревиатуры OLAP звучит как online analytical processing. Дословный перевод этого словосочетания с английского языка – онлайновая аналитическая обработка данных. Однако англоязычное понятие онлайна несколько изменилось с тех времен, когда термин OLAP зазвучал в миру программистов и аналитиков впервые. В ту пору онлайн означал скорее интерактивность процесса обработки, нежели факт присутствия в сети интернет, как это принято трактовать сейчас.
Итак, OLAP – это технология интерактивной обработки данных. Возможности технологии сосредоточены в её быстродействии, с которым OLAP анализирует сложные пользовательские запросы к хранилищу данных. Также, технология включает в себя возможность развертывания разнообразных отчетов и документов.
Нужно ли говорить, что за более чем 30-ти летнюю историю развития технология нашла широчайшее применение практически во всех сферах бизнеса. Продажи, маркетинг, управление, экономический анализ, аудит – нет такого направления работы, где технология OLAP была бы бесполезной.
Но обо всем по порядку, а для начала – обещанная история.
Краткий экскурс в историю OLAP
Возникновение систем OLAP было спровоцировано развитием систем поддержки принятия решений (DSS — Decision Support Systems). Первой в своём роде стала IBM System 360 – масштабная система корпоративного менеджмента, появившаяся в 1965 году. До её появления такой масштаб системы данных казался несбыточной мечтой, подкрепленной нереальностью финансовых затрат на проектирование и содержание, даже будь эта мечта реализованной. Первые системы информационного менеджмента, MIS — management information systems, имели цель оповещения руководителей упорядоченными массивами данных о жизнедеятельности предприятия.
К началу 70-ых годов системы поддержки принятия решений оказались на волне популярности, а продукты этой отрасли уже насчитывали сотни наименований. Дальше – больше. Так, к середине 70-ых годов проблемам поддержки принятия решений в лице компьютерных технологий посвящались форумы и собрания, академические исследования и научные конференции.
К концу 70-ых выделились критерии оценки систем, разрабатываемых на основе технологии DSS. В ту пору и стали выделяться первые интерактивные компьютерные приложения, способные структурировать небольшие массивы данных для решения информационных задач.
Лишь к началу 90-ых годов интерактивные терминалы стали сменяться персональными компьютерами. В итоге, изменение архитектуры DSS-систем произошло, как говориться, в корне. Системы перестали быть сервер-ориентированными, вместо чего появились решения типа «клиент-сервер».
Следующему ключевому событию в истории технологии OLAP суждено было случиться в 1993 году. В это время Эдгар Кодд предложил 12 критериев соответствия приложения технологии OLAP. Немногим позже, критерии были сформированы в тест, получивший название FASMI.
Критерии FASMI
Fast (Быстрый) – максимальная скорость доступа приложения OLAP к хранилищу данных. В среднем, время обработки запроса составляет 5 секунд. Конечно, для простых запросов срок ожидания может быть сокращен и до секунды, а для сложных – растянут до 20 секунд. Однако независимо от сложности обрабатываемого массива ожидание отклика от системы не должно превышать 30 секунд. Это установлено статистикой, по которой пользователь, ожидая свыше данного интервала времени, принимает однозначное решение – система бесполезна, и после этого перестает к ней обращаться.
Разумеется, что разработчикам систем OLAP приходится отыскивать всё новые и более сложные решения по увеличению быстродействия своих продуктов. Для этого используются методы непрерывной динамической предварительной обработки базы данных, создание специальных конструкций и другие.
Analysis (Анализ) – возможность осуществления приложением OLAP числового и статистического анализа данных из базы. В соответствии с этим критерием продукт OLAP должен справляться с любой логикой, задаваемой пользователем или прикладной программой. В этот же критерий включена возможность графического представления результатов анализа, и гибкость к пользовательским запросам.
При этом совершенно неважно, какими средствами достигнут результат OLAP анализа, главное – удобство для пользователя и результат. В числе аналитических возможностей такие операции, как: анализ распределения ресурсов, анализ поиска цели, анализ изменений структуры, анализ транзакций, анализ последовательности временных диаграмм, и другие инструменты.
Shared (Разделяемый доступ) – приложение OLAP подразумевает одновременную работу с многомерными базами данных нескольких пользователей. Этот критерий OLAP накладывает свои ограничения, в частности – конфиденциальность информации. Это в свою очередь подразумевает использование механизмов авторизации пользователей и распределенные возможностей управления.
Зачастую это свойство приложений OLAP не всегда реализовано на должном уровне. Многие системы OLAP нашли простое решение – работу в режиме «только чтение». Более сложные продукты OLAP, например многопользовательская система Microsoft OLAP Services, поддерживают режим «чтение-запись», но без проявления достаточной гибкости.
Multidimensional (Многомерность) – приложения OLAP должны состоять из многомерных информационных массивов. Так, любые данные в OLAP представляются в виде многомерной структуры. Следовательно, OLAP системы должны работать в многомерном пространстве и уметь оперировать развитыми иерархиями. Однако этот критерий не накладывает ограничений на определенную размерность пространств данных или размеры этих измерений.
Information (Информация) – этот критерий предписывает приложениям OLAP обеспечивать пользователям возможность получать данные со всех электронных хранилищ информации. При этом приложения OLAP решают задачи предоставления данных, действительно имеющих ценность для пользователя, а не всех хранимых в базе.
Важно отметить, что различные системы OLAP реализуют разные способы обработки информации, а не что-либо конкретное и обязательное для всех. В общем виде, этих способов обработки данных OLAP тысячи. Естественно, что такое разнообразие, да и само количество способностей систем OLAP требует значительных ресурсов постоянной и оперативной памяти, а также других вычислительных средств, объединенных в масштабные комплексы, объемных хранилищ данных и сопутствующих компонентов анализа информации.
Таким образом, подытоживая результаты критериев FASMI, дадим ещё одно определение OLAP-приложениям. OLAP приложения – это системы скоростного доступа множества пользователей к многомерному пространству аналитических данных, с предоставлением числовых и статистических анализов.
OLAP и хранилища данных
Для большинства людей, знакомых с термином OLAP, он ассоциируется с хранилищами данных (Data Warehouse). Билл Инмон, основатель как самого термина «хранилище данных», так и его реализации на практике определил это понятие так: «Хранилище данных — это предметно-ориентированное, привязанное ко времени и неизменяемое собрание данных для поддержки процесса принятия управляющих решений».
Наполнением хранилищ данными занимаются оперативные системы (OLTP-систем), используемые в контексте автоматизации бизнес-процессов. Также, в хранилища поступает и внешняя информация в виде различных отчетов.
Здесь у многих пользователей возникает вопрос: для чего нужны хранилища данных?
Любой здравомыслящий человек понимает, что, по сути, они избыточны и оперируют информацией, которая уже есть в операционной системе в виде файлов, баз и статистических отчетов. Загвоздка состоит в том, что анализировать такие данные, пусть даже имеющиеся в операционной системе в избытке, невозможно, или же очень и очень сложно. Данные представлены в разрозненном виде и рассредоточены по разным узлам корпоративной сети предприятия.
Хранилища данных строятся с целью предоставления материала для анализа в понятной форме и в одном месте. Кроме того, структура этого материала, то есть данных, должна быть предельно простой. Наконец, есть ещё одно назначение выделенных хранилищ данных – разгрузка сетевых и серверных ресурсов. Без организации хранилища данных, запросы пользователей, требующие сложного анализа имеющейся информации, будут «сводить на нет» работу сервера и сети, и при том надолго.
OLAP: простота, скорость, удобство
Однако, для анализа данных не достаточно простоты структурирования и централизации хранения. Нужны возможности удобного просмотра, визуализации и гибкости этих инструментов. Зачастую, результаты анализа не так наглядны, как хотелось бы. И им может не хватать самой малости – возможности «прокрутки», «развертывания», «вращения», «разреза» оперируемых массивов информации. При этом желательно получать быстрый отклик от системы по предоставлению результата этих действий. Простота, скорость, удобство – вот характеристики инструмента OLAP.
Как же работает инструмент OLAP?
Максимально эффективно. Прежде всего, идет сбор данных со всевозможных источников. Поступающая информация фильтруется, объединяется по группам, и сосредотачивается в реляционном хранилище. После этого идет подготовка данных к анализу OLAP. Для этого потоки информации могут быть направлены в отдельные базы данных, или же сгруппированы непосредственно в реляционном хранилище. Здесь наиболее значимыми являются метаданные – информация о самой структуре хранилища, порядке размещения и преобразования данных. С помощью метаданных технология становится эффективной и реализует оптимальное взаимодействие всех компонентов хранилища.
Итак, OLAP – это быстродействующий инструмент доступа, просмотра и различного анализа корпоративной информации.
При этом приложения OLAP интуитивны для пользователя благодаря представлению массивов данных в виде наглядных многомерных кубов (Cubes). В качестве системы координат используются критерии анализируемого бизнес-процесса. Например, месяца, года, наименования товаров, объем продаж в различных торговых точках, процент выполнения планов представительствами и другие необходимые оси развертывания данных.
Важно, что пользователь может перекраивать такой куб по своему усмотрению, получая необходимый ему результат. Манипуляции с ячейками куба, заполненными необходимой информацией могут быть любыми, при этом, результаты сводов данных будут независимыми или наоборот, спровоцированными предыдущими действиями.
Многомерность
Приложения OLAP многомерны. Это свойство можно разделить по уровням:
Многомерность представления данных – благодаря чему достигается многомерная визуализация и возможность различных манипуляций данными.
Многомерность обработки – в основе которой лежит язык программирования многомерных запросов;
Многомерность хранения – полный набор средств физического размещения данных.
Производители
Сегодня существует немало компаний, выпускающих различные приложения на основе OLAP. К их числу принадлежит и ряд крупнейших разработчиков систем управления реляционными базами данных.
Среди лидеров рынка продукция компаний Microsoft, IBM, Oracle, Sybase, Computer Associates.
Также к числу производителей надежных приложений OLAP относится компания Radar-Soft, LLC. В основе её OLAP продуктов отдельные компоненты для бизнес-процессов (Business Intelligence), так и компоненты для анализа и визуализаций.
С помощью OLAP приложений, интегрированных в единый бизнес-процесс, пользователи получают возможности:
- Анализа данных в реальном времени посредством OLAP браузера;
- Получения качественных отчетов;
- Графического представления анализа;
- Быстрого и действенного манипулирования многомерных массивов данных;
- Наглядного отображения «горячих» точек;
- Детализации полученных результатов;
- Принятия оптимальных решений.
OLAP – это инструмент, жизненно необходимый бизнесу.