OLAP.ru   Rambler's Top100
Вы находитесь на страницах старой версии сайта. Перейдите на новую версию OLAP.ru
  
Поиск по сайту
Новости
Основы OLAP
Продукты
Business Objects/ Crystal Decisions
Каталог
OLAP в жизни
Тенденции
Download
Яndex
 
 
 
TopList
 
 Business Objects/Crystal Decisions  Oracle  Microsoft  IBM 
 Hyperion  Sybase  Informix  Actuate  SAS Institute  Brio 

Технологии хранилищ данных


Потребность в анализе данных

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

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

Хранилища данных

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

  • Предметная ориентированность. Информация в хранилище данных организована в соответствии с основными аспектами деятельности предприятия (заказчики, продажи, склад и т.п.); это отличает хранилище данных от оперативной БД, где данные организованы в соответствии с процессами (выписка счетов, отгрузка товара и т.п.). Предметная организация данных в хранилище способствует как значительному упрощению анализа, так и повышению скорости выполнения аналитических запросов. Выражается она, в частности, в использовании иных, чем в оперативных системах, схемах организации данных. В случае хранения данных в реляционной СУБД применяется схема "звезды" (star) или "снежинки" (snowflake). Кроме того, данные могут храниться в специальной многомерной СУБД в n-мерных кубах.
  • Интегрированность. Исходные данные извлекаются из оперативных БД, проверяются, очищаются, приводятся к единому виду, в нужной степени агрегируются (то есть вычисляются суммарные показатели) и загружаются в хранилище. Такие интегрированные данные намного проще анализировать.
  • Привязка ко времени. Данные в хранилище всегда напрямую связаны с определенным периодом времени. Данные, выбранные их оперативных БД, накапливаются в хранилище в виде "исторических слоев", каждый из которых относится к конкретному периоду времени. Это позволяет анализировать тенденции в развитии бизнеса.
  • Неизменяемость. Попав в определенный "исторический слой" хранилища, данные уже никогда не будут изменены. Это также отличает хранилище от оперативной БД, в которой данные все время меняются, "дышат", и один и тот же запрос, выполненный дважды с интервалом в 10 минут, может дать разные результаты. Стабильность данных также облегчает их анализ.

Вышеприведенные особенности были впервые сформулированы в 1992 году "отцом-основателем" хранилищ данных Биллом Инмоном (Bill Inmon) в его книге "Building the Data Warehouse".

Архитектура и компоненты хранилища данных

Непрерывный процесс

Англоязычный термин "Data Warehousing", который сложно перевести лаконично на русский язык, означает "создание, поддержку, управление и использование хранилища данных" и хорошо подтверждает тот факт, что речь идет о процессе. Цель этого процесса - непрерывная поставка необходимой информации нужным сотрудникам организации. Этот процесс подразумевает постоянное развитие, совершенствование, решение все новых задач и практически никогда не кончается, поэтому его нельзя уместить в более или менее четкие временные рамки, как это можно сделать для разработки традиционных систем оперативного доступа к данным.

Хранилища и киоски данных

Хранилища данных могут быть разбиты на два типа: корпоративные хранилища данных (enterprise data warehouses) и киоски данных (data marts).

Корпоративные хранилища данных содержат информацию, относящуюся ко всей корпорации и собранную из множества оперативных источников для консолидированного анализа. Обычно такие хранилища охватывают целый ряд аспектов деятельности корпорации и используются для принятия как тактических, так и стратегических решений. Корпоративное хранилище содержит детальную и обобщающую информацию; его объем может достигать от 50 Гбайт до одного или нескольких терабайт. Стоимость создания и поддержки корпоративных хранилищ может быть очень высокой. Обычно их созданием занимаются централизованные отделы информационных технологий, причем создаются они сверху вниз, то есть сначала проектируется общая схема, и только затем начинается заполнение данными. Такой процесс может занимать несколько лет.

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

Киоски и хранилища данных строятся по сходным принципам и используют практически одни и те же технологии.

Основные компоненты

Основными компонентами хранилища данных являются следующие:

  • оперативные источники данных;
  • средства проектирования/разработки;
  • средства переноса и трансформации данных;
  • СУБД;
  • средства доступа и анализа данных;
  • средства администрирования.

Среда Microsoft Data Warehousing Framework

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

Корпорация Microsoft давно осознала важность направления, связанного с хранилищами данных, и необходимость принятия мер по созданию инструментальной и технологической среды, которая позволила бы минимизировать затраты на создание хранилищ данных и сделала бы этот процесс доступным для массового пользователя. Это привело к созданию Microsoft Data Warehousing Framework (рис. 4) - спецификации среды создания и использования хранилищ данных. Данная спецификация определяет развитие не только новой линии продуктов Microsoft (например, Microsoft SQL Server 7.0), но и технологий, обеспечивающих интеграцию продуктов различных производителей. Открытость среды Microsoft Data Warehousing Framework обеспечила ее поддержку многими производителями ПО, что, в свою очередь, дает возможность конечным пользователям выбирать наиболее понравившиеся им инструменты для построения своих решений.

Рис. 4. Microsoft Data Warehousing Framework
Рис. 4. Microsoft Data Warehousing Framework

Цель Microsoft Data Warehousing Framework - упростить разработку, внедрение и администрирование решений на основе хранилищ данных. Эта спецификация призвана обеспечить:

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

Основные компоненты Microsoft Data Warehousing Framework

OLE DB - стандарт обмена данными

Построение хранилищ данных требует, с одной стороны, взаимодействия с различными оперативными БД для извлечения данных, а с другой - обмена данными и метаданными между различными компонентами. И та и другая задача решается крайне сложно - при отсутствии единого интерфейса для доступа к разнородным данным. Но такой интерфейс существует - это OLE DB. OLE DB целиком основан на открытой модели COM (Component Object Model) и представляет собой набор интерфейсов, которые могут быть использованы, например, в приложениях на Visual C++. Для упрощения использования OLE DB создан набор ActiveX-компонентов - ActiveX Data Objects (ADO). Эти компоненты могут вызываться из приложений на Visual Basic, Access, Excel, встраиваться в активные Web-страницы и т.п.

Практически все компоненты, которые мы будем обсуждать ниже, используют OLE DB для доступа к данным.

OLE DB обеспечивает доступ не только к реляционным данным, но и к таким ресурсам, как почтовые сообщения, файловые каталоги, полнотекстовые индексы и т.п.

Метаданные

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

Центральным компонентом Data Warehousing Framework является хранилище метаданных (репозитарий) - Microsoft Repository, поставляемое как один из компонентов Microsoft SQL Server 7.0. Microsoft Repository - это база данных, которая хранит описательную информацию о компонентах программного обеспечения и об их отношениях. Microsoft Repository состоит из набора Открытых информационных моделей (Open Information Model, OIM), а также набора опубликованных COM-интерфейсов. Открытые информационные модели - это объектные модели определенного типа информации, при этом они достаточно гибки, чтобы обеспечить поддержку новых типов информации. Корпорация Microsoft, опираясь на сотрудничество с представителями отрасли, уже разработала модели (OIM) для схемы баз данных (Database Schema), преобразования данных (Data Transformations) и OLAP. Последующие модели будут поддерживать репликацию, планирование задач, семантические модели и информационный справочник, который предназначен для обеспечения метаданными конечного пользователя.

Коалиция метаданных (The Metadata Coalition), отраслевой консорциум 53 производителей, заявила о поддержке Microsoft Repository. Открытые информационные модели получили широкую поддержку у независимых разработчиков ПО.

Средства хранения данных

Сердцем хранилища данных является, безусловно, СУБД, обеспечивающая надежное и производительное хранение и обработку данных. Как правило, данные из оперативных БД перемещаются в реляционное хранилище, где они становятся доступными для анализа. В дальнейшем, при использовании OLAP-средств, они могут быть перемещены в многомерную СУБД либо будут выбираться процессором многомерных запросов прямо из реляционных таблиц. Microsoft SQL Server 7.0 обеспечивает как реляционный, так и многомерный вид хранения. Подробную информацию о Microsoft SQL Server можно найти в разделе "Microsoft SQL Server". Ниже кратко перечислены его основные характеристики: сначала возможности реляционной СУБД, а затем - многомерной.

Microsoft SQL Server 7.0 обладает целым рядом свойств, делающих его превосходной платформой для построения хранилищ данных:

  • поддержка баз данных, размер которых исчисляется терабайтами;
  • масштабируемость как "вверх" - в сторону мощнейших современных аппаратных платформ для поддержки очень больших баз данных, так и "вниз" - в сторону серверов небольших рабочих групп и даже настольных и мобильных компьютеров (при этом обеспечивается полная совместимость);
  • улучшенная обработка запросов, обеспечивающая оптимизацию и эффективное выполнение сложных запросов, типичных для хранилищ данных, в частности, запросов по схеме типа "звезда";
  • средства параллельного выполнения сложных запросов;
  • эффективные средства настройки производительности, загрузки данных и построения индексов;
  • распределенные запросы, позволяющие выбирать связанные данные из различных ОLE DB-источников;
  • надежные и эффективные средства тиражирования данных, незаменимые при поддержке нескольких связанных хранилищ или киосков данных.

Кроме того, средства тиражирования по-прежнему остаются одним из механизмов перемещения данных из оперативной БД в хранилище. Ниже рассматривается ряд механизмов, входящих в состав SQL Server 7.0.

Средства OLAP-анализа

OLAP (Online Analytical Processing, оперативная аналитическая обработка) - все более популярная технология, которая может коренным образом усовершенствовать анализ данных. Microsoft SQL Server OLAP Services - это новый, полнофункциональный OLAP-сервер, поставляемый в составе SQL Server 7.0. OLAP Services включает в себя собственно сервер, доступный по протоколу OLE DB for OLAP, а также клиентский компонент, являющийся поставщиком протокола OLE DB for OLAP и обеспечивающий эффективное кэширование и возможность локального сохранения многомерных выборок для их дальнейшего анализа без подключения к OLAP-серверу.

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

Средства OLAP-анализа более подробно освещены в статье "Анализ данных в корпоративных системах".

Средства переноса и трансформации данных

Организация извлечения данных из оперативных БД, их очистки, интеграции и помещения в хранилище может потребовать значительных усилий и затрат, если не пользоваться встроенной в Microsoft SQL Server службой - Data Transformation Services (DTS). DTS обладает следующими свойствами:

  • Он на 100% использует OLE DB для доступа как к источнику, так и к приемнику данных. Благодаря этому DTS может извлекать и преобразовывать данные практически из любых источников (и, соответственно, помещать их в любые приемники данных).
  • Для переноса и трансформации данных используется расширяемый набор ActiveX-объектов, которыми легко управлять при помощи языка сценариев, например VBScript или JavaScript. Таким образом, имеются практически неограниченные возможности управления переносом и преобразованием данных.
  • DTS способен интегрироваться с Microsoft Repository для использования метаданных об источнике, приемнике и схеме преобразования данных.
  • Задания по переносу и преобразованию данных, которые могут включать в себя множество последовательных шагов, оформляются в виде пакетов (DTS Package), которые могут быть сохранены в хранилище метаданных (Repository), в базе SQL Server или в файле. Пакеты могут затем автоматически выполняться по расписанию при помощи сервиса SQL Server Agent.

Средства представления и анализа данных

Именно в сфере средства представления и анализа данных следует ожидать (и уже можно видеть) наибольшее количество продуктов, предлагаемых третьими фирмами, хотя и Microsoft предлагает здесь не только базовые технологии, но и средства для конечного пользователя. К ним относятся компоненты нового поколения Microsoft Office - Office 2000, прежде всего Microsoft Excel. Его популярное средство анализа данных PivotTable® теперь сможет задействовать всю мощь OLAP-сервера, подключаясь к нему через упоминавшийся выше клиентский компонент PivotTable Services.

Еще одно средство от Microsoft - English Query - позволяет строить запросы к SQL Server на естественном языке (по-английски).

Средства представления и анализа более подробно освещены в разделе "Анализ данных в корпоративных системах".

Средства администрирования

Существенной составляющей расходов на внедрение хранилища данных являются расходы на текущее сопровождение и администрирование хранилища. Средства администрирования, в том числе средства автоматизации выполнения административных задач, предусмотренные Data Warehousing Framework и включенные в состав Microsoft SQL Server 7.0, позволяют значительно сократить эти расходы.

Единой средой администрирования различных компонентов является Microsoft Management Console. Средства управления каждым конкретным компонентом (например, SQL Server или OLAP Services) представляют собой так называемый snap-in, то есть модуль администрирования, использующий единые средства пользовательского интерфейса.

Средство управления SQL Server 7.0 - SQL Enterprise Manager включает в себя более 25 программ-мастеров (Wizards), помогающих не слишком искушенному администратору решать самые важные задачи, в том числе создавать и копировать базы данных, производить настройку тиражирования, импорт/экспорт данных, управлять правами пользователей и т.п.

Кроме того, в SQL Enterprise Manager входят средства создания и редактирования графических диаграмм баз данных, значительно облегчающих создание и модификацию структуры хранилища.

Средства автоматизации администрирования позволяют создавать многоступенчатые задания, состоящие как из команд языка Transact-SQL, так и из сценариев на языках VBScript или JavaScript. При этом выполнение последующих шагов может быть поставлено в зависимость от результатов выполнения предыдущих. Эти задания могут охватывать множество серверов и выполняются по заданному расписанию.

Оригинал статьи в формате Microsoft Word (59kb)

 Обсудить на форуме   Написать вебмастеру 

© 2001 Interface Ltd