Рассматривается методология и технология компании SAS Institute по созданию, управлению и эксплуатации Хранилищ Данных.

Методология и архитектура

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

В течение последнего десятилетия термин DataWarehouse или Хранилище Данных стал одной из самых популярных тем для обсуждения. Любая система, хранящая собираемые данные, претендует на название Хранилища Данных. Ведутся ожесточенные теоретические споры по поводу, что называть Хранилищем Данных, чем оно отличается от OLTP систем и какое определение более точно описывает его сущность. Мы попробуем подойти с другой стороны – практической.

Методология

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

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

Думать стратегически, начинать с решения самых насущных задач – вот лозунг, под которым идет создание и развитие Хранилища Данных. Практически это означает, что на первой стадии важно создать ясную картину будущего содержания Хранилища Данных в самых грубых чертах, затем выбрать наиболее актуальную задачу, и руководствуясь концепцией архитектуры Хранилища Данных работать над ней, не забывая об общей картине. Этот подход включает в себя определение стратегических путей развития на самых ранних этапах построения Хранилища и поэтапную реализацию этих планов с учетом заданных приоритетов в виде краткосрочных (4-8 месяцев) проектов. Такой подход позволяет получить ощутимые результаты в очень короткие сроки и при этом сохранить уверенность в том, что дальнейшее расширение создаваемого Хранилища не приведет к перестройке всей его структуры.

Каждый этап построения Хранилища реализуется как отдельный проект, который имеет основные стадии, представленные на Рис. 1.

Рис. 1. Основные стадии построения хранилища данных

Оценка проекта

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

Затем необходимо получить четкое «видение» основных проблем организации в целом, а также определить основные источники данных, чтобы, получив общую, концептуальную модель деятельности организации, использовать ее как базис для стратегии построения Хранилища.

Из всего разнообразия задач выбирается наиболее значимая задача, как цель первого (или очередного) этапа построения Хранилища Данных.

Сбор требований

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

  • Структура данных в источниках
  • Основные предметные области, связанные с задачей
  • Требования пользователей

На этой же стадии вводится четко определенный и согласованный со всеми участниками проекта критерий завершенности проекта или его очередной итерации.

Проектирование

На этой стадии, на основе информации с предыдущих стадий, производится анализ и проектирование структуры будущего проекта, включающие построение:

  • Моделей Данных (логической и физической)
  • Модели Процессов загрузки
  • Модели Приложений

Разработка

Эта стадия включает следующие шаги:

  • Разработка процедур начальной загрузки
  • Проведение начальной загрузки
  • Разработка процедур регулярной загрузки
  • Разработка приложений
  • Проведение тестовых испытаний

Ввод в эксплуатацию

Ввод в эксплуатацию включает в себя:

  • Обучение пользователей;
  • Перевод проекта в стадию эксплуатации (определение администраторов, регламентов и т.д.)

Оценка результатов

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

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

Архитектура

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

  • Загрузка данных из источников, в число которых входят различные СУБД, ERP (Enterprise Resource Planning) системы, а также электронные таблицы, текстовые файлы, ленты новостей и другие
  • Хранение данных в специально спроектированных структурах, отражающих их предметную специфику и обеспечивающих эффективный доступ
  • Использование информации через многочисленные типы приложений в различных разрезах и терминах хорошо понятных конечному пользователю

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

  • Логическая и физическая структура Хранилища
  • Процессы загрузки и их регламент
  • Приложения и возможные способы представления информации

Общая схема Информационной системы в технологии Хранилищ Данных представлена на Рис. 2.

Рис. 2 . Общая схема информационной системы в технологии хранилищ данных

Метаданные

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

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

Не удивительно поэтому, что средствам работы с Метаданными уделяется такое серьезное внимание. По функциональным требованиям эти средства можно разделить на две основные группы: средства просмотра и поиска, и средства создания и поддержки.

Система SAS предлагает средство MetaSpace Explorer для осуществления просмотра и поиска Метаданных Хранилища для конечных пользователей и имеет следующую функциональность:

  • Навигация по объектам Метаданных Хранилища в разрезах: предметная область, тип, владелец и др.;
  • Навигация по распределенному Хранилищу в разрезе серверов;
  • Поиск объектов Хранилища Данных по заданному критерию;
  • Отображение метаданных, связанных с объектами

В качестве рабочего инструмента Администратора Хранилища Данных и разработчиков создан продукт SAS/Warehouse Administrator, позволяющий осуществлять следующие операции:

  • Определять объекты Хранилища, их атрибуты и взаимосвязи;
  • Задавать доступ к внешним источникам;
  • Описывать процедуры загрузки в Хранилище;
  • Задавать физическую модель Хранилища;
  • Выполнять процедуры загрузки;
  • Регламентировать выполнение процедур загрузки;
  • Генерировать метаданные автоматически;
  • Представлять структуру Хранилища в удобной графической форме.

Продукт SAS/Warehouse Administrator состоит из следующих основных компонент:

  • Warehouse Explorer – проводник по Хранилищу позволяет создавать, редактировать, удалять, группировать и просматривать основные объекты Хранилища Данных. В их состав входят: описания внешних источников данных, предметные область и их логические структуры, таблицы детальных данных, таблицы агрегированных данных и MDDB, витрины данных, информационные витрины и приложения, а также вспомогательные объекты. Также это средство позволяет задавать основные атрибуты Хранилища: рабочие библиотеки, сервера данных и доступ к ним, лиц, ответственных за эксплуатацию и разработку элементов Хранилища.
  • Process Editor – редактор процессов позволяет задавать процедуры загрузки для всех элементов Хранилища, от процедур выборки данных из внешних источников до обновления информации в Информационных Витринах и Витринах Данных, атрибуты выполнения этих процедур, задавать связи между объектами Хранилища, графически представлять процесс загрузки любого объекта Хранилища в виде дерева процессов.
  • Scheduler – диспетчер процессов позволяет регламентировать выполнение процессов загрузки Хранилища Данных. Включает поддержку распределенных Хранилищ Данных.

Продукт SAS/Warehouse Administrator имеет следующие возможности для расширения функциональности и настройки под конкретный проект:

  • MetaData API – программный интерфейс доступа к Метаданным Хранилища;
  • Scheduler API – программный интерфейс управления диспетчером загрузки;
  • Средства расширения функциональности – стандартный интерфейс вызова, дополнительных средств работы с Хранилищем Данных. Расширения могут быть созданы группой разработчиков для удовлетворения специфических требований проекта. Ряд весьма полезных дополнительных средств расширения функциональности имеется в Общем Фонде SAS средств, который пополняется разработками из реальных проектов по всему миру и включает такие полезные средства как средство автоматического создания документации Хранилища Данных, импорт описания структур данных из разнообразных CASE средств и другие.

Загрузка

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

  1. Доступ к источникам данных
  2. Доставка на сервер репозитария Хранилища
  3. Преобразование данных(унификация, изменение структуры и т.д.)
  4. Проверка на корректность и непротиворечивость, очистка
  5. Очистка
  6. Агрегирование

Доступ к источникам

Компания SAS Institute предоставляет возможности для доступа ко всем данным в организации независимо от места и формата хранения. Доступ осуществляется посредством продукта SAS/ACCESS и позволяет работать напрямую с данными из таких известных СУБД как: Oracle, Sybase, Informix, Rdb, DB2, ADABAS, SAP R/2 и R/3, Ingres и другие, а также обеспечивает доступ к стандартным интерфейсам ODBC и OLE DB и файлам со стандартными форматами: VSAM, XLS, DIF, DBF, WKn и др. Всего система SAS имеет прямой доступ к более чем 40 различным форматам данных на 15 различных платформах.

Отличительной чертой системы SAS является тот факт, что данные доступные через дескрипторы SAS/ACCESS для всех процедур, работающих с данными, не отличаются друг от друга и от собственного формата хранения SAS. Это свойство системы позволяет легко изменять форматы внешних источников данных практически не внося никаких изменений в Хранилище Данных. Единственным изменением будет смена дескриптора доступа к внешним данным.

Доставка на сервер

При реализации Хранилища Данных для организации, автоматизированные системы которой работают на нескольких серверах и даже на разных платформах, процесс транспортировки данных может создавать определенные проблемы. Система SAS функционирует на многочисленных платформах и имеет хорошо развитые средства межплатформенного общения: SAS/CONNECT и SAS/SHARE между такими платформами как: MVS, VM/CMS, различные UNIX, OpenVMS VAX & AXP, OS/2, Window, Windows NT, Macintosh и другие.

Преобразование данных

Физическая структура Хранилища Данных часто сильно отличается от структуры источников. Основной причиной обычно является требования к эффективному исполнению запросов и прогнозируемое время отклика. Кроме изменения структуры, при интеграции данных из разных источников необходимо унифицировать форматы представления. В системе SAS разработчику доступны следующие средства обработки и преобразования данных:

  1. SQL – стандартный язык обработки реляционных данных;
  2. Data Step – эффективный 4GL язык обработки данных, разработка SAS Institute;
  3. SAS/IML – язык для работы с матрицами, в виде математической нотации;
  4. Различные специализированные процедуры обработки данных на основе эффективных алгоритмов сортировки (SORT), преобразования временных рядов (EXPAND), шкалирования (RANK) и пр.

Проверка на корректность и очистка

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

Кроме простых и достаточно тривиальных процедур, легко реализуемых с помощью стандартных языков обработки данных, возникает необходимость определять данные, выпадающие из общего набора. Система SAS включает в себя процедуры: ANOVA для анализа дисперсий, REG , NREG и LOGISTIC для использования моделей линейной, нелинейной и логистической регрессии, MODEL для более сложных моделей, а также анализ на основе нейронных сетей. Эти процедуры входят в состав следующих продуктов: SAS/Base Software, SAS/STAT, SAS/OR и SAS/Enterprise Miner.

Агрегирование

Исследования, проведенные на работающих в промышленной эксплуатации Хранилищах Данных, показали, что 90% конечных пользователей нуждаются в сильно агрегированной информации, и лишь изредка возникает необходимость анализа информации детального уровня. Поэтому, для обеспечения эффективности отрабатываемых запросов и обеспечения удовлетворительного времени отклика на них, часто используемые агрегированные показатели рассчитываются заранее и включаются в состав Хранилища. Для агрегирования данных, хранящихся в многомерных базах данных, используется процедура MDDB. В зависимости от типа производимых вычислений система SAS предоставляет целый спектр процедур агрегирования, входящих в продукты SAS/Base Software, SAS/ETS и SAS/MDDB Server.

Хранение

Структура Репозитария Хранилища

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

  • Персональная информация – это информация, используемая пользователями со строго определенными обязанностями и информационными потребностями. Обычно требует большой предварительной обработки или другими словами имеет высокий уровень агрегации (под агрегацией мы будем понимать не только суммирование, но и другие преобразования данных производимых с помощью как аддитивных так и не аддитивных статистик). Чаще всего хранятся в многомерных базах данных.
  • Информация по бизнес темам – информация, относящаяся к определенной тематике, такой, например, как финансовая деятельность организации. Для организаций имеющих, близкие функциональные и организационные структуры ее можно определить как информация для подразделения (например, для финансовой службы). Имеет более широкий спектр, как в предметных областях, так и во времени, но в то же время напрямую используется реже, чем персонализированная информация. Обычно хранятся в смешанных структурах: многомерные базы данных и реляционные таблицы.
  • Текущие детальные данные – самая подробная информация доступная в Хранилище Данных. Обычными пользователями используется весьма редко, только в случае необходимости сильного уточнения информации. Обычно является полем деятельности аналитиков по поиску знаний (или поиску скрытых зависимостей в больших объемах информации). Обычно хранится в реляционных структурах.
  • Старые детальные данные, – по сути, это тот же самый низкий уровень агрегирования, что и у текущих детальных данных. Выделяется в особой тип по следующей причине. С одной стороны, детальные данные часто требуют больших ресурсов для хранения, а с другой детальные данные с возрастом, например, несколько лет необходимы в очень редких случаях. Решением в данном случае является использование более дешевых и емких способов хранения, например, ленты или роботизированные библиотеки. Для системы SAS доступ к таким данным не отличается от доступа к таблицам, хранящимся на диске. Единственное отличие – медленная скорость чтения, что делает реализацию такой схемы особенно легкой и предпочтительной.
Рис. 3. Структура репозитория распределенного хранилища данных

ROLAP, MOLAP и HOLAP

Обсуждение преимуществ, недостатков и особенностей использования этих подходов к хранению данных в последнее время стало любимым делом множества авторов (одной из причин этого, возможно является завораживающая магия звучания этих сокращений). Действительно одним из основных средств представления информации в системах, построенных в технологии Хранилищ Данных, являются OLAP приложения. Поэтому вопрос о выборе способа хранения данных для этих приложений не является праздным, хотя, увлекшись обсуждением форматов хранения, часто забывают о второй составляющей эффективности работы – какие агрегированные данные хранить, а какие вычислять на лету. В системе SAS OLAP приложения могут работать, как с реляционными таблицами (ROLAP), так и с многомерными базами данных (MOLAP). Особое место занимает смешанный подход (HOLAP), который является в системе SAS не промежуточным решением между ROLAP и MOLAP, а их объединением. Таким образом, использование HOLAP в построении Хранилищ Данных позволяет гибко использовать все достоинства различных способов хранения данных, предоставляя конечному пользователю удобный и высокоэффективный механизм работы с данными Хранилища.

Различные информационные требования пользователей Хранилища Данных приводят к необходимости распределенного хранения данных. При этом также необходимо учитывать, что существующая инфраструктура обычно бывает гетерогенной. Распределенность – вот ключевое слово реализации HOLAP в системе SAS. Используя богатые возможности многоплатформенного подхода системы SAS, смешанный подход позволяет использовать достоинства как распределенного хранения (по платформам и форматам хранения), так и распределенной обработки (см. Рис. 4).

Рис. 4. Гибридный OLAP. Распределенное хранение и распределенная обработка

Иерархические Хранилища

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

Рис. 5. Реализация иерархических хранилищ

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

Использование

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

Архитектура клиент-сервер

Объемы информации, собираемой в Хранилищах, могут со временем достигать колоссальных размеров. Зачастую это приводит к тому, что имеющихся вычислительных ресурсов становятся недостаточно для обработки прикладными системами, и перед руководством предприятия стоит вопрос, как строить в дальнейшем стратегию решений информационных задач, как минимизировать затраты на приобретение новой аппаратуры и компьютеров, как оптимальным образом использовать все то, что уже отлажено и работает. Альтернатива безудержному наращиванию мощностей компьютеров и проведению ежегодных обновлению технической базы – использование продуманной и хорошо спланированной архитектуры клиент-сервер.

При работе системы SAS в схеме «клиент-сервер» SAS Institute основывается на принципе сегментации приложений. Концепция сегментации приложений достаточно не нова. Программисты уже давно делят свои приложения на такие части, как данные, обработка данных (анализ) и представление результатов (вывод). Но в системе с распределенными ресурсами сегментация приложений несет уже принципиально новый характер, ведь необходимо размещать эти логические части на различных платформахНеобходимо добавить, что SAS/CONNECT, один из продуктов системы SAS, предоставляет пользователям информационных систем, построенных на основе программного обеспечения SAS, средство распределенной обработки – возможность запуска заданий с удаленного компьютера.

Система SAS предоставляет несколько различных технологий работы в среде клиент-сервер и возможность их комбинировать в различных сочетаниях.

Удаленный доступ к данным.

Удаленный доступ к данным (RLS) обеспечивается либо продуктом SAS/CONNECT на клиенте и сервере, либо продуктом SAS/SHARE на сервере. Режим RLS предназначен для доступа к данным по отдельным записям, при этом все данные перекачиваются по сети. Если обращение происходит не к наборам данных (таблицам) SAS, а к VIEW, содержащим сохраненные программы на языке SAS или SQL, то выполнять эти программы можно на сервере не перекачивая все данные по сети. Продукт SAS/SHARE позволяет, кроме того, осуществлять многопользовательскую запись в базу данных, это необходимо, например, при работе более одного администратора метаданных в продукте SAS/Warehouse Administrator

Удаленное выполнение программ

Удаленное выполнение программ возможно при наличии продукта SAS/CONNECT на обоих компьютерах. Для выполнения программ компьютер клиент вызывает удаленную машину по одному из сетевых протоколов и запускает на ней удаленный сеанс SAS. После этого можно любую часть программного кода на языках SAS (Base SAS, SCL, SQL, IML) перенести для выполнения на другой компьютер.

Перекачка данных

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

Удаленный доступ к базам данных

Удаленный доступ к базам данных возможен с помощью продукта SAS/ACCESS к соответствующей СУБД. Например, SAS может работать как клиент Oracle SQL*Net, передавая серверу базы данных любые SQL запросы, в том числе содержащие специфику языка Oracle SQL+.

Интересное применение технология клиент-сервер нашла в продукте SAS/EIS при использовании SAS средств OLAP. Об этом будет рассказано далее.

Web-технологии

Одним из самых удобных и простых способов предоставления доступа к информации из Хранилища Данных как внутри организации, так и внешним пользователям является использование Web-технологий. Интеграция Web-технологий и системы SAS позволяет пользователям приложений системы SAS иметь доступ к Web, а через Web-навигаторы к информации и приложениям Хранилища Данных.

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

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

По уровню функционального взаимодействия выделяют три уровня использования Web-технологий:

  • Публикации
    Отчеты формируются на стадии загрузки Хранилища, публикуются в виде страничек HTML в информационных каталогах Web. Пользователь имеет возможность просматривать статические, заранее подготовленные отчеты с помощью Web-навигатора;
  • Запросы-Отчеты
    Простые запросы формируются пользователем, обрабатываются на Web сервере, который имеет доступ к данным Хранилища. Результирующие отчеты, обычно в виде страничек HTML, просматриваются клиентом с помощью Web-навигатора;
  • Динамические приложения
    Web сервер предлагает пользователю набор информационных услуг в виде приложений. Основная часть приложения выполняется на сервере приложений, результаты просматриваются клиентом с помощью Web-навигатора или Java applet.

Система SAS предоставляет следующие возможности для использования Web-технологий любого из вышеназванных уровней:

Публикации
  • Формирование табличных отчетов:
    • Output Formatter – преобразование содержимого стандартного окна вывода системы SAS в HTML формат;

    • Data Set Formatter – формирование табличного отчета на основе SAS набора данных

    • Tabulate Formatter – формирование сложного многомерного табличного отчета с использованием специальных возможностей процедуры Tabulate.

  • Формирование графических отчетов:
    • В формате GIF и Animation GIF;
    • В формате JPEG;
    • В формате GraphApplet (плюс Java Applet для просмотра);
    • В формате VRML (плюс Java Applet для просмотра VRML).
  • Формирование сложных смешанных отчетов.
Запросы-Отчеты

Для осуществления доступа к данным из Хранилища система SAS предлагает следующие средства:

  • ODBC драйвер;
  • JDBC драйвер;
  • htmSQL драйвер.
  • Динамические приложения

Продукт SAS/IntrNet включает, созданный для реализации приложений с использованием Web-технологии в себя:

  • Application Dispatcher как средство управления приложений SAS через CGI;
  • Jconnect – библиотеку Java классов для создания высоко интерактивных Web-приложений;
  • WebAF и WebEIS как удобное средство построения Java приложений с использованием объектов соответствующим объектам продуктов SAS/AF и SAS/EIS (для создания приложений в архитектуре клиент-сервер).

Группы пользователей

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

  • Аналитики
  • Среднее звено руководящих работников
  • Высший эшелон руководства

Наиболее интенсивно используют данные по всем уровням агрегации аналитики. В их задачи входит глубокое и тщательное исследование данных с применением всех доступных средств анализа и представления данных. Решение таких задач сопровождается серьезным изучением содержательной наполненности Хранилища, а также построением дополнительных структур данных в персональных Витринах Данных. Используя средство SAS/EIS аналитики, методом создания приложений без программирования, могут строить приложения реализующие найденные в процессе исследований (с помощью средств анализа из продуктов SAS/STAT, SAS/ETS, SAS/QC, SAS/OR и других) закономерности и результаты в наиболее удобном для использования виде. Альтернативой этому подходу является использование нового продукта SAS/Enterprise Miner включающего в себя средства анализа и построения отчетов и позволяющий проводить исследование по методологии SEMMA. Таким образом, аналитики должны владеть не только методами исследования их предметной области, но и иметь представление о Хранилище, а также владеть инструментом SAS/EIS или SAS/Enterprise Miner. Во взаимодействии с группой развития аналитик может оказать помощь в разработке дополнительных структур данных в ХД.

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

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

OLAP приложения

Выше говорилось о различных группах пользователей по характеру их деятельности, использующих или эксплуатирующих Хранилище Данных. Если же разделить их по средствам анализа и представления данных, то самая многочисленная группа – это пользователи OLAP приложений.

В Системе SAS за OLAP приложения отвечает продукт SAS/EIS, который одновременно является и средством конечного пользователя, и средством для разработки OLAP приложений.

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

  • Наиболее часто употребляемые объекты это
  • Многомерная таблица (Multidimensional report)
  • Многомерная диаграмма (3-d chart)
  • Географическая карта (Map)
  • Навигатор по измерениям (Dimension navigator)
  • Показатель успешной деятельности (Critical success factor)

Помимо перечисленных объектов существует по крайней мере 20 специализированных графических и табличных стандартных отчетов.

Если вы решили использовать технологию гибридного OLAP (HOLAP) и храните данные на разных платформах и в разных форматах хранения одновременно (SAS таблицы, многомерные базы, реляционные СУБД), то объекты автоматически обеспечат прозрачный доступ к нужным данным, подключение к соответствующим компьютерам и базам данных. Такая гибкость обеспечивается объектно-ориентированной архитектурой «Model-Viewer» представленной на рисунке. Здесь Viewer это то, что видит перед собой на экране пользователь – таблица, карта, диаграмма или график. Формируя свой запрос (например, двойной щелчок мыши на элементе карты или столбце диаграммы вызывает запрос на «сверление» данных) пользователь запрашивает ту или иную комбинацию классифицирующих и анализируемых переменных. Этот запрос передается в объект Data Model, который обращается к метаданным, чтобы выявить месторасположения необходимых таблиц и узнать, нужно ли выполнять какие либо вычисления «на лету». После этого он обращается к данным и передает результат обратно во Viewer. См. Рис. 5

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

Все объекты EIS имеют открытый API, то есть при знании объектно-ориентированного программирования на языке SCL (продукт SAS/AF) разработчик может серьезно модифицировать внешний вид и поведение объектов, а так же создавать свои собственные объекты типа Viewer или Data Model.

Продукт SAS/AF требует отдельного обсуждения, т.к. представляет собой развитое средство для объектно-ориентированной разработки приложений, переносимых между платформами. Среда разработки позволяет создавать экранные формы и диалоговые окна, содержащие различные элементы управления и объекты, обеспечивающие отображение информации – таблицы, графики, диаграммы, географические карты и пр. Созданные приложения являются действительно объектно-ориентированными, т.к. позволяют динамически подгружать новые классы и объекты во время работы. Приложения созданные на SAS/AF полностью интегрированы в Систему SAS и могут использовать все функциональные возможности остальных продуктов, таких как SAS/GRAPH, SAS/EIS или даже SAS/GIS (гео-информационная система).

Добыча знаний (Data Mining)

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

Система SAS имеет набор аналитических средств в областях стандартной статистической обработки (SAS/STAT), исследования временных рядов (SAS/ETS), исследования операций (SAS/OR), контроля за качеством (SAS/QC) и прочих. Накопленный за время работы компании на этом рынке опыт был обобщен, что привело к созданию методологии проведения поиска знаний в больших массивах информации. Последним достижением в этой области стал выпуск продукта SAS/Enterprise Miner, средства имеющего графический интерфейс и развитую систему отчетности, логически основанного на методологии и полностью интегрированного с всеми продуктами системы SAS, базируясь на методологии построения систем в технологии Хранилищ Данных.

SAS/Enterprise Miner пользователю-аналитику наглядно представлять проводимое исследование в виде блок-схемы процессов. Динамическая схема позволяет следить за стадиями аналитической обработки в процессе их выполнения.

Методология проведения аналитических исследований, также известная как методология SEMMA, логически состоит из следующих этапов:

Выборка

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

Исследование

На этом этапе определяется состав данных для дальнейшего анализа, с выявлением общих тенденций и аномалий в базовых данных. Этот этап включает две ключевых техники. Во-первых, представление данных в виде интерактивных диаграмм, трехмерных вращающихся графиков и использования возможностей гео-информационных систем (ГИС). Во-вторых, традиционные методы факторного, кластерного анализа, а также анализа корреляций.

Преобразование

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

Моделирование

Данные подготовленные на предыдущих этапах и корректно сфокусированные на решения поставленной задачи теперь готовы к проведению моделирования – самой сути процесса поиска знаний. На этом этапе данные автоматически анализируются и формируется модель связывающая входные и выходные показатели. Основными методами для построения моделей являются:

  • Нейронные сети;
  • Деревья решений;
  • Развитые статистические методы (дискриминантный анализ, логистическая регрессия, кластерный анализ и другие).

Оценка результатов

На этом этапе полученные модели проверяются на основных данных. Если полученный результат не удовлетворяет по качеству или не полностью позволяет ответить на поставленный вопрос, то процесс повторяется до получения необходимого ответа.

Заключение

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