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

кандидата технических наук
Бутенко, Игорь Всеволодович
город
Санкт-Петербург
год
2011
специальность ВАК РФ
05.13.11
Диссертация по информатике, вычислительной технике и управлению на тему «Разработка моделей и методов построения и автоматизированного наполнения системы метаданных»

Автореферат диссертации по теме "Разработка моделей и методов построения и автоматизированного наполнения системы метаданных"

На правах рукописи

005005493

Бутенко Игорь Всеволодович

Разработка моделей и методов построения и автоматизированного наполнения

системы метаданных

Специальность 05.13.11 -Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

Автореферат

диссертации на соискание ученой степени кандидата технических наук

- 8 ДЕК 2011

Санкт - Петербург 2011

005005493

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

Научный руководитель - доктор технических наук, профессор Устинов Сергей Михайлович

Официальные оппоненты - доктор технических наук, профессор

Гаврилова Татьяна Альбертовна, - кандидат технических наук

Абдрахманов Руслан Леонидович

Ведущая организация - Федеральное государственное унитарное предприятие «Научно-исследовательское объединение «Импульс»

Защита состоится «22.» декабря 2011 г. в 16 часов на заседании диссертационног совета Д 212.229.18 в федеральном государственном бюджетном образовательно: учреждении высшего профессионального образования "Санкт-Петербургский государственный политехнический университет" по адресу: 195251, Санкт-Петербург, Политехническая ул., д.29, 9 уч. корп., ауд. 325.

С диссертацией можно ознакомиться в Фундаментальной библиотеке университета.

Автореферат разослан » ноября 2011 г.

Ученый секретарь диссертационного совета

Васильев А.Е.

Общая характеристика работы

Актуальность проблемы

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

В связи с этим при создании новых информационных систем разработчики используют аппарат, базирующийся на метаданных (МД). Он предоставляет возможности описания и манипулирования метаданными в рамках либо общей модели CWM (Common Warehouse Metamodel), сформированной группой OMG (Object Management Group), либо модели конкретной метасистемы (МС). Этим вопросам посвящены многочисленные работы ученых, как в нашей стране, так и за рубежом (Д. Марко, А. Танненбаум, Р. Кимбалл, Б. Инмон), а также такие программные продукты как Oracle Data Integrator, IBM Information Server, SAP BusinessObjects Metadata Manager, CA ERwin Saphir Option, SAS® Metadata Server.

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

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

Цель работы

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

Для достижения поставленной цели в работе ставились и решались следующие задачи:

1) Разработка методики построения МС на основе существующих информационных систем.

2) Построение моделей описания МД и классификаторов.

3) Создание алгоритмов наполнения МС данными и классификации этих данных.

4) Реализация на практике МС для решения реальных прикладных задач. Методы исследования

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

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

1) Формальная модель описания МД, согласованная с общей моделью С\УМ, и поддерживающая связи пользовательских понятий и объектов базы данных.

2) Формальная модель описания классификатора на базе преложенной модели МД.

3) Алгоритм наполнения МС данными из внешних источников на основе предложенной модели.

4) Алгоритм построения дерева классификаторов на основе их моделей и данных. Достоверность результатов

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

Практическая ценность н внедрение результатов работы

1) Разработанная методика построения МС, модели описания МД и классификаторов носят формализованный характер и могут быть использованы при построении различных баз данных МС.

2) Предложенные алгоритмы могут быть использованы при построении модуля загрузки и классификации данных в различных прикладных задачах.

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

В частности, построенная МС была включена в коммерческие программные продукты:

• «СКАУТ-Навигатор» в качестве средства поддержки формирования различных отчетов,

• «СКАУТ-УКОИ» в качестве средства построения многомерных ОЬАР-отчетов,

• «СКАУТ-Сервисный центр» в качестве элемента модуля генератора отчетов,

• другие продукты, производимые ООО «Деловые консультации, СПб».

Результаты диссертационно» работы используются в рамках учебного курса «Базы данных» кафедры «Информационные и Управляющие Системы» СПбГПУ.

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

• база данных МС,

• модуль выгрузки МД из исходных систем.

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

Положения, выносимые на защиту

На защиту выносятся следующие научные и практические результаты:

1) Методика построения МС на основе существующих SQL-ориентированных информационных систем.

2) Формализованные модели описания МД и классификаторов МД.

3) Алгоритм наполнения МС данными из внешних источников на основе предложенной модели.

4) Расширяемая база данных МС, основанная на описанных моделях.

5) Модуль выгрузки МД из исходных информационных систем.

Апробация работы и публикации

Основные результаты диссертационной работы обсуждались в рамках научно-практических конференций «Технологии Microsoft в теории и практике программирования» (СПб, 2004, 2005, 2006, 2009, 2010 гг.) и «Фундаментальные исследования в технических университетах» (СПб, 2005 г.), на семинарах «Педеля науки» СПбГПУ (XXXI - 2003 г., XXXII - 2004 г.), а также были опубликованы в сборниках «Труды молодых ученых» и «Научно-технические ведомости СПбГПУ».

По материалам диссертации опубликовано 15 печатных работ, в том числе 3 из Перечня

ВАК.

Структура н объем работы

Диссертация содержит 144 страниц основного текста, 35 рисунков, 4 таблицы и состоит из введения, четырех глав, заключения, списка литературы и одного приложения.

Содержание работы

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

Первая глава посвящена изучению различных подходов к построению метаданных в информационных аналитических системах (ИАС). Детально рассматривается процесс построения ИАС с использованием метаданных (МД) и репозиторий, как средство хранения метаданных. Проводится обзор существующих моделей ИАС: хранилищ данных, федеративных систем, основным источником данных для которых является информация из внешних источников. Именно поэтому одним из важнейших этапов построения ИАС является этап интеграции и загрузки данных. В работе рассматриваются три основных метода интеграции данных: консолидация, федерализация и распространение. Какой бы способ интеграции не был выбран, необходимо решать вопросы переноса данных. Обычно перенос состоит из извлечения, преобразования и загрузки данных. Отмечается важный момент: каждое из этих решений требует четкого понимания структуры исходной системы. Таким образом, для построения ИАС требуется механизм просмотра объектов в исходной системе, поскольку аналитику необходимо работать не с самими данными, а с их описанием. Для него предпочтительней работать в понятной для себя предметной области и не вникать в технические детали БД. А это, в свою очередь, означает, что необходим инструментарий работы с метаданными.

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

В качестве стандарта для обмена метаданными ИАС принят Common Warehouse Metamodel основанный на стандартах XML, XMI и UML. Это обеспечивает мощную объектную модель с набором API, форматов обмена и услуг, которые охватывают весь спектр метаданных. Для возможности обмена метаданных с внешними источниками одним из требований к потенциальной метасистеме должна быть возможность поддержки стандарта CWM.

Рассматриваются существующие метасистемы: IBM Information Server, SAS®) Metadata Server, CA ERwin Saphir Option, Oracle Data Integrator, SAP BusinessObjects Metadata Manager. Вводятся критерии сравнения этих метасистем. В качестве основного критерия была выбрана возможность «обратного проектирования», т.е. возможность строить по схеме БД ее модель. Даже те системы, которые формально поддерживают обратное проектирование, на деле предоставляют только пользовательский интерфейс и возможность частичной загрузки начальных данных. Основной этап непосредственно ассоциирования данных той или иной предметной области с конкретными метаданными ложится на плечи пользователя. Серьезный недостаток с точки зрения практики - цена (все рассматриваемые системы дороги). Таким образом, на основе анализа делается вывод о необходимости разработать свою собственную систему по работе с МД. При

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

• Построение единого хранилища и описание всех объектов существующей системы.

• Возможность классификации и поиска необходимой информации.

• Обеспечение отслеживания версий объектов БД на сервере.

• Повышение уровня языка доступа к данным - возможность строить запросы из МС.

• Создание базиса для построения федеративных систем и ХД.

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

1) Разработка структуры БД МС. Результатом данного этапа является информационная структура МС, для создания которой необходимо построить модель объектов, хранящихся в системе.

2) Разработка модели классификатора, как элемента структуры БД МС.

3) Загрузка метаданных. Необходимо разработать алгоритм загрузки данных в структуры соответствующих моделей, созданных на этапе 1. Для этого также надо описать модель загрузки объектов в МС.

4) Построение дерева классификатора. Для качественного функционирования репозитория МД необходима подсистема настройки классификаторов. Для этого требуется построить модель, которая будет опираться на модель данных из п.2.

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

6) Выбор средств реализации МС. Для реализации МС необходимо выбрать следующие программные средства: СУБД, средства загрузки данных, средства реализации клиентского приложения.

Во второй главе подробно рассматриваются модели описания объектов БД и классификаторов, а также проектирование структуры БД МС по предложенным моделям.

В рамках ИАС разработчики оперируют следующим набором сущностей БД, которые и являются объектами МС: таблицы, хранимые процедуры (ХП), колонки таблиц, параметры процедур, типы данных и их описания.

В работе предлагается следующая модель описания этих объектов:

0—<п,I, ¡О}, Р, С>, где п - имя объекта (в терминах БД); / - тип объекта (таблица, ХП, колонка, параметр ХП); Р - параметры объекта, необходимые (и, может быть, достаточные) для построения объекта О на базе; С - описания объекта.

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

Р - четко заданная последовательность параметров.

Р-{р>}■ где р, - значение параметра I из вектора типов параметров П=)11ь,<.

С -четко заданная последовательность описаний.

С={с,}, где с, - значение параметра /' из вектора типов описаний АГ=/А,/.

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

На основе Р строятся предустановленные классификаторы. При необходимости расширить набор классификатора требуется добавить новый параметр в описание МС, загрузить данные в этот параметр и на его основе построить классификатор.

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

По мере развития МС увеличивается количество описанных параметров и для новых проектов минимизируется вероятность расширения этого множества. Это обеспечивается благодаря тому, что для каждого проекта Пм з П1, где \ - порядковый номер проекта.

Таким образом, задав вектор Р для таблицы и колонок таблицы, мы можем:

• однозначно идентифицировать каждую такую таблицу и колонку в ней,

• построить на любой базе таблицу аналогичной структуры,

• строить запросы к исходной таблице, основываясь только на ее описании.

Значения из вектора С - это всевозможные описания объекта О на языке пользователя. Таким образом, С - это основа МС, именно он обеспечивает отображение описания системы с языка БД на язык пользователя Элементы С должны полностью описать объект О. Количество элементов С зависит от многих факторов: предметная область, полнота описания уже существующей БД, требования к системе и др. Но при этом, по мере развития МС и появления новых элементов С, которые не будут использоваться в других проектах, будем предоставлять возможность пользователю при необходимости их настраивать. Таким образом, будет поддерживаться возможность развивать исходные системы в плане расширения описаний их объектов. Так же, как и для множества П, получаем, что для каждого проекта эЛ", где 1 -порядковый номер проекта.

Определим классификатор метасистемы следующим образом:

П = {в)->0,с0

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

Поскольку любой объект множества О может быть записан в виде 0=<пХ{0},Р,0, то получаем, что описание ограничений должно включать пять подмножеств.

СО = (<у„, со,, {«}, со,,, (У(,)

Из этого описания может быть исключено соп путем объединения с со,,, поскольку наименование объекта является подмножеством Р.

Рассмотрим рекурсивное описание объектов и ограничений. Для объектов рекурсия получается из того, что описывается объект через другие объекты МС. При этом важно, что эти объекты всегда другого типа. Описание параметра - в описании типа параметра.

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

со = {сопсо,,,сос)

В итоге получаем общую формулу описания классификатора:

П = {со,, со,,, сос}

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

9

должны быть предметнонезависимыми и включать описания самого объекта как физического файла на диске и объекта БД, но без привязки непосредственно к предметной области. Таким образом, получается, что свойства Р должны быть заполнены всегда, причем заполняться они должны в автоматическом режиме. Свойства, описываемые через С, наоборот - полностью зависимы от предметной области. Здесь основная нагрузка ложится на пользователя. Именно он должен сформулировать, откуда получать то или иное значение. Если же данных пока нет, то пользователю придется их вводить.

Одной из важных особенностей разрабатываемой МС является ее расширяемость. При этом первые реализации МС выявили набор атрибутов, которые в большинстве своем покрывают основные необходимые свойства элементов системы.

Поскольку МС разрабатывалась на основе данных реляционных СУБД и предполагалось, что в качестве ядра для МС будет выступать также реляционная СУБД, то проектирование БД МС производилось с использованием аппарата реляционной алгебры.

При построении БД за основу был взят принцип деления типов объектов на классы, применяемый в стандартных репозиториях, поставляемых вместе с промышленными СУБД. При этом он был расширен в рамках предлагаемой модели. Были выделены следующие классы:

• процедуры, функции, таблицы и представления (1 класс),

• параметры процедур и столбцы таблиц (2 класс),

• типы данных (3 класс).

В результате анализа свойств объектов, входящих в каждый из классов, сформирован эффективный вид связи объектов в БД (рисунок 1).

Рисунок I

Именно для такой архитектуры была реализована БД МС.

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

Для наполнении БД МС данными необходимо построить модели загрузки данных в МС из различных внешних систем.

Рассмотрим работающую систему, построенную на некоторой СУБД. Пусть в такой системе есть множество объектов хранящееся в БД. Для каждого объекта системы существует своё

описание и, соответственно, свой объект в МС. Таким образом, целью загрузки данных из исходной системы в МС является преобразование исходного объекта Я в его описание О.

5, —» О/, / е {1 ,и},у > 1, где п - количество рассматриваемых объектов в Системе, у - номер описания объекта 5.

Для того, чтобы каждый раз не загружать все множество объектов системы в МС, необходимо обрабатывать только те данные, которые изменились с даты последней загрузки. Поэтому для загрузки данных в МС будет рассматриваться подмножество 5(пи(/сХ, где -измененные после последней загрузки в МС объекты. Очевидно, что при первоначальной загрузке

^„„, = 5.

БД

Рисунок 2. Схема загрузки данных в МС

Процедура синтаксического анализатора будет обрабатывать набор На выходе

получается множество описаний данных объектов Оиша. При этом количество элементов в 01пш1 не может быть меньше, чем в .

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

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

бд2 у

Рисунок 3. Загрузка метаданных При таком подходе можно разделить этап выгрузки данных из внешних источников и этап

загрузки данных в МС. Требуется написать только один загрузчик данных в МС П и, поскольку

он будет получать данные в универсальном формате, его можно использовать при загрузке данных

из любой системы, при этом нет различия в СУБД, на которой построена система-источник.

Поскольку порядок наложения условий на объекты системы с помощью классификаторов не

имеет значения, то будем строить систему классификаторов таким образом, чтобы

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

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

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

• Подготовку исходной информации для загрузки. Введение соответствующих требований на оформление кода в плане ведения комментариев.

• Введение пользовательских типов. В исходной системе нужно выделить основные часто используемые домены и для каждого такого домена завести свой пользовательский тип.

Методика построения метасистемы

Результаты, представленные в главах 2 и 3, позволяют сформировать методику построения МС, которая базируется на моделях описания объектов исходной базы данных (п. 2.2) и описания классификаторов (п. 2.3), схеме предложенной базы данных (п. 2.4) и использует в качестве инструментальной поддержки разработанный программный модуль загрузки данных (п. 3.1).

Методика представлена в виде последовательности шагов, при реализации которых могут быть использованы:

• уже существующие модели данных;

• алгоритмы наполнения данными МС;

• предложенные рекомендации.

В качестве основы при построении методики использовался анализ задач и требований из главы 2.1, а также введенные в главах 2.2, 2.3 модели объектов, описаний классификаторов и загрузки данных соответственно. Основными шагами методики являются:

1) Выбор средств реализации МС.

Для реализации МС необходимо выбрать следующие программные средства: СУБД, средства загрузки данных, средства реализации клиентского приложения. Эти вопросы рассмотрены подробно в главе 4.

2) Реализация структуры БД МС.

В качестве структуры БД следует воспользоваться результатом п. 2.4. Как показал опыт автора, этой структуры достаточно для реализации МС в различных предметных областях и для различных конечных целей (построение аналитических отчетов, использование в качестве справочника по системе). При этом в моделях из п. 2.2, на основе которых построена структура БД, допускается расширение базового набора параметров объектов, что может привести к изменению структуры БД. На практике расширение свойств объектов в рамках моделей п.2.2 влечет за собой увеличение количества параметров у объекта МС. А это, в свою очередь, реализуется добавлением необходимого количества столбцов в таблицу описания.

3) Загрузка метаданных.

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

• для уменьшения объемов загрузки данных будут обновляться данные только по объектам, измененным после последней загрузки,

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

4) Построение дерева классификатора.

При построении дерева классификаторов следует использовать рекомендации из п. 3.2. Так, при первоначальной загрузке необходимо выделить в описании Р такие свойства, по которым можно было бы разграничить объекты по:

• области применения,

• области действия,

• типу объекта.

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

5) Дальнейшее использование (организационные мероприятия).

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

Подготовка исходной информации для загрузки

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

• Описание значений С для всех объектов Системы

• Загрузка данных в МС

• Первичная классификация данных

• Доопределение объектов, если это необходимо в самой МС.

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

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

Введение пользовательских типов

Рекомендуется использовать механизм пользовательских типов, встроенный в стандартные поставки большинства промышленных СУБД. Для этого в исходной системе нужно выделить основные часто используемые домены и для каждого такого домена завести свой пользовательский тип. Выделение доменов может производиться в рамках самой МС. В этом случае, после первоначальной загрузки данных начинается выделение и классификация основных типов, которые в дальнейшем переносятся в сами объекты БД.

Построенная по предложенной методике МС обладает следующими свойствами:

1) Непротиворечивость метаданных в МС.

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

• привязка к месту загрузки самих данных (физически, откуда производилась загрузка)

• дата и время загрузки в МС

• пользователь, производивший загрузку

Также в самом имени объекта МС содержится код исходной информационной системы.

2) Актуальность данных.

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

3) Возможность классификации метаданных пользователями МС.

Для этого предоставляется механизм классификаторов в рамках схемы БД, построенной по соответствующей модели данных.

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

В главе подробно рассмотрены шаги реализации МС по уже готовой структуре БД МС и описанному алгоритму наполнения данных. В качестве СУБД была выбрана Microsoft SQL Server 2005. Клиентские приложения были реализованы с использованием различных средств: настройкой инструмента СКАУТ фирмы «Деловые Консультации, Санкт-Петербург» и программированием доступа к нужным таблицам и интерфейса работы с ними напрямую в С#. Для демонстрации возможностей МС в рамках данной работы был выбран второй вариант. Большая часть бизнес-логики была реализована на серверной части с тем, чтобы иметь широкие возможности работы с данными, используя разные клиентские средства. Для загрузки данных в МС выбран алгоритм, предложенный в главе 3.

В качестве примера рассмотривается система автоматизации учета работы 2500 единиц уборочной техники. От каждой из них ежеминутно поступают данные по 19 параметрам (местоположение, скорость, состояние датчиков и т.п.). Таким образом, в данной системе каждый день появляется 2500x60x24 = 3600000 записей. Через месяц данных станет больше 100 млн. Кроме сохранення оперативных данных, система должна обеспечивать возможность пользователю получать отчеты в различных срезах за различные периоды времени. При приведенных объемах данных задача получения отчетов за разумное время представляется сложной.

Типичным средством решения является построение OLAP-куба. Поскольку исходные объекты системы лежат в MS SQL Server 2005, то в качестве средства построения OLAP выбран продукт, также входящий в MS SQL Server - Analyzes Services.

Использование предлагаемой МС позволило одновременно предоставить пользователям интерфейс настройки показателей для анализа данных и уменьшить само время на настройку

требуемых отчетных форм на 33% (для 8 отчетов). Но главным достоинством внедрения является резкое снижение требований к обслуживающему персоналу.

В качестве второго примера была выбрана задача построения аналитической подсистемы для коммерческого банка. Сложностью данной задачи было очень большое количество различных объектов системы (более 70 справочников и примерно столько же таблиц с оперативными данными). В этом примере, как и в первом случае, удалось существенно снизить требования к исполнителям, а также сократить время самой настройки отчетов на 44% (для 5 отчетов).

При наличии готовой МС затраты на ее подготовку и настройку к новой предметной области для приведенных задач полностью окупились. Первый проект дополнительно окупил более трети затрат на разработку самой МС.

В заключении 4-й главы сформулирован класс решаемых задач, использование в которых предложенной МС было бы наиболее эффективно.

1. Описание системы, поиск тех или иных объектов по их описаниям или получение информации об объекте по его имени.

2. Построение различного рода отчетов из системы (текстовые, графические, OLAP).

3. Различные варианты разработки импорта-экспорта данных в/из системы.

4. Расширения функциональных возможностей системы.

5. Проектирование новых БД, в качестве источника к которым будет выступать исходная рассматриваемая система.

В заключении приводятся основные результаты работы.

Основные результаты работы

В работе проведен анализ различных ИАС, рассмотрены этапы их построения. Отмечено, что для построения и работы с ИАС необходим механизм метаданных. Рассмотрены различные аспекты использования метаданных: стандарты, классификация по пользователям, классификация по классам систем. Рассматриваются существующие метасистемы и на основе анализа делается вывод о необходимости разработать свою собственную систему по работе с МД. К основным результатам работы можно отнести следующие положения:

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

2) Предложены формальные модели описания объектов МС и классификаторов.

3) На основе предложенной модели сформулированы и обоснованы критерии построения БД МС. Предложена структура БД МС.

4) Разработан способ наполнения данными МС и предложен универсальный алгоритм такого наполнения.

5) Предложен механизм работы с пользовательскими классификаторами в рамках МС.

6) Определены организационные мероприятия, облегчающие использование МС.

7) Предложены этапы реализации МС по уже готовой структуре БД МС и описанному алгоритму наполнения данных.

8) Определен общий класс решаемых МС задач, а также рассмотрены примеры реальных задач из различных предметных областей, которые были решены с использованием инструментария МС.

Также в результате работы был программно реализован механизм загрузки данных, который может быть использован отдельно от разработанной в рамках работы метасистемы.

Публикации по теме диссертации

1) Бутенко И.В. Метасистема как инструмент для построения аналитических отчетов в информационных системах // Научно-технические ведомости СПбГПУ. - СПб.: СПбГПУ, 2011, №2 (120). с. 32-38 (из перечня ВАК).

2) Бутенко И.В., Устинов С.М. Методика построения репозитория метаданных для существующей информационной системы. // Научно-технические ведомости СПбГПУ. - СПб.: СПбГПУ, 2010, №4(103). с. 92-99 (из перечня ВАК).

3) Бутенко И.В., Зотов А.А., Устинов С.М. Метасистема как основа доступа в неоднородной распределенной базе данных. // Научно-технические ведомости СПбГПУ. - СПб.: СПбГПУ, 2007, №2(50). с. 247-252 (из перечня ВАК).

4) Бутенко И.В. Принципы построения метаданных при разработке аналитической системы. // Технологии Microsoft в теории и практике программирования. - СПб.: изд-во Политехи, ун-та, 2004. с. 14-15

5) Бутенко И.В., Басин В.В., Дробинцев Д.Ф., Якимайнен А.Ю. Методика описания информационных структур на базе стандарта CWM // Фундаментальные исследования в технических университетах. - СПб.: изд-во Политехи, ун-та, 2005. с. 161-163

6) Бутенко И.В., Бороздин М.А. Использование LINQ и ENTITY FRAMEWORK при написании приложений для работы с базами данных // Технологии Microsoft в теории и практике программирования. - СПб.: изд-во Политехи, ун-та, 2009. с. 77-78

7) Бутенко И.В., Зотов А.А. Архитектура построения автоматизированной банковской системы для многофилиального банка. // XXXI неделя науки СПбГПУ. 4.IV: Материалы межвузовской научной конференции. - СПб.: СПбГПУ, 2003. С.8 - 9.

8) Бутенко И.В., Зотов А.А., Устинов С.М. Система управления метаданными. // Технологии Microsoft в теории и практике прогр-ия. - СПб.: изд-во Политехи, ун-та, 2006. с. 96-98

9) Бутенко И.В., Дробинцев Д.Ф. Выбор средств организации метаданных для информационно-аналитических систем. // Технологии Microsoft в теории и практике программирования. - СПб.: изд-во Политехи, ун-та, 2005. с. 78-80

10) Бутенко И.В., Дробинцев Д.Ф., Колесник A.C. Принципы построения классического хранилища данных на основании развиваемых витрин данных. // Технологии Microsoft в теории и практике программирования. - СПб.: изд-во Политехи, ун-та, 2005. с. 32-34

П)Бутенко И.В., Кауров И.В., Дробинцев Д.Ф. Разработка модуля анализа и прогнозирования на базе Microsoft Analysis Services // Технологии Microsoft в теории и практике программирования. - СПб.: изд-во Политехи, ун-та, 2010. с. 93-95

12) Бутенко И.В., Ковалевский В.Э. Использование многомерных структур для обработки больших объемов аналитических данных // Технологии Microsoft в теории и практике программирования. - СПб.: изд-во Политехи, ун-та, 2010. с. 96-97

13) Бутенко И.В., Ковалевский В.Э., Дробинцев Д.Ф.Реализация механизма загрузки метаданных в Microsoft Analysis Services П Технологии Microsoft в теории и практике программирования. - СПб.: изд-во Политехи, ун-та, 2010. с. 97-98

14) Бутенко И.В., Устинов С.М. Разработка моделей и методов построения и автоматизированного наполнения системы метаданных. // Выч-ые, измерительные и упр-ие системы: сб. научн. трудов. - СПб.: изд-во Политехи, ун-та, 2009. с.3-10.

15) Бутенко И.В., Якимайнен А.Ю., Дробинцев Д.Ф. Механизм формирования метаданных на базе стандарта CWM. // Технологии Microsoft в теории и практике программирования. -СПб.: изд-во Политехи, ун-та, 2005. с. 71-73

Подписано в печать 09.11.2011. Формат 60x84/16. Печать цифровая. Усл. печ. л. 1,0. Тираж 100. Заказ 8303b.

Отпечатано с готового оригинал-макета, предоставленного автором, в типографии Издательства Политехнического университета. 195251, Санкт-Петербург, Политехническая ул., 29. Тел.:(812)550-40-14 Тел./факс: (812)297-57-76

Оглавление автор диссертации — кандидата технических наук Бутенко, Игорь Всеволодович

Оглавление.

Список используемых сокращений.

Введение.

1 Метаданные в информационных аналитических системах.

1.1 ИАС как средство обработки больших объемов данных.

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

1.1.2 Федеративные системы.

1.2 Способы построения ИАС.

1.2.1 Системная интеграция.

1.2.2 Перенос данных.

1.2.3 Метаданные.

1.3 Использование метаданных в ИАС.

1.3.1 Операционные системы.

1.3.2 Метаданные в аналитических системах.

1.3.3 Системы будущего.

1.3.4 Средства работы с метаданными.

1.4 Способы повышения качества хранимой информации в ИАС.

1.4.1 Стандартизация и интероперабельность.

1.4.2 История стандартизации метаданных.

1.4.3 Международные проекты и инициативы в области моделей и схем метаданных.

1.5 Требования к метасистеме.

1.6 Обзор существующих метасистем.

1.6.1 Критерии сравнения метасистем.

1.6.2 Сравнение метасистем.

1.7 Постановка задачи.

2 Модели описания объектов метасистемы.

2.1 Формирование требований к разработке.

2.1.1 Введение.

2.1.2 Общий вид взаимодействия в рамках метасистемы.

2.1.3 Подхо/цл к построению рспозитория метаданных.

2.1.4 Выбор мстамодели.

2.1.5 Определение архитектуры высокого уровня.

2.1.6 11остроение базы метасистемы.

2.1.7 Добыча данных.

2.1.8 Этапы построения МС.

2.2 Модель описания объектов исходной базы данных.

2.2.1 Представление объекта.

2.2.2 Параметры объекта.

2.2.3 Описание объекта.

2.3 Модель описания классификаторов.

2.3.1 Определение.

2.3.2 Поддержка многоуровневое™.

2.4 Построение базы данных метасистемы.

2.4.1 Конкретизация свойств объектов.

2.4.2 Построение базы данных.

2.4.3 Поддержка версионности данных.

2.4.4 Выбор варианта хранения объектов в метасистеме.

2.4.5 Структура базы данных описания объектов.

2.4.6 Схема базы данных метасистемы.

3 Инструментальная поддержка основных этапов построения метасистемы.

3.1 Наполнение данных метасистемы.

3.1.1 Модель загрузки данных в метасистему.

3.1.2 Закачка данных в метасистему.

3.1.3 Особенности загрузки.

3.1.4 Выбор способа загрузки данных.

3.1.5 Алгоритм наполнения данных метасистемы.

3.2 Построение дерева классификаторов.

3.2.1 Выбор способа описания пользовательских классификаторов.

3.2.2 Описание классификаторов.

3.3 Организационные мероприятия.

3.3.1 Подготовка исходной информации для загрузки.1 Об

3.3.2 Введение пользовательских типов.

3.4 Методика построения МС.

3.5 Выводы по

главам 2иЗ.

4 Реализация и примеры использования.

4.1 Реализация МС.

4.1.1 Выбор средств реализации.

4.2 Примеры использования МС.

4.2.1 Задача анализа работы уборочной техники.

4.2.2 Решение задачи с использованием МС.

4.2.3 Создание пользовательского интерфейса.

4.2.4 Загрузка данных в ОЬАР-куб.

4.2.5 Задачи построения аналитической подсистемы для коммерческого банка.

4.3 Характеристика решаемых задач.

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

4.5 Выводы.

Введение 2011 год, диссертация по информатике, вычислительной технике и управлению, Бутенко, Игорь Всеволодович

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

В связи с этим при создании новых информационных систем разработчики используют аппарат, базирующийся на метаданных (МД). Он предоставляет возможности описания и манипулирования метаданными в рамках либо общей модели CWM (Common Warehouse Metamodel), сформированной группой OMG (Object Management Group), либо модели конкретной метасистемы (МС).

Этим вопросам посвящены многочисленные работы ученых как в пашей стране, так и за рубежом (Д. Марко, А. Тагшенбаум, Р. Кимбалл, R. Инмон), а также такие программные продукты как Oracle Data Integrator , IBM Information Server, SAP BusinessObjccts Metadata Manager, CA ERwin Saphir Option, SAS® Metadata Server.

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

Особую потребность в МД испытывают быстро меняющиеся информационные системы. Например, такими системами являются банковские системы, системы бухгалтерского учета, аналитические системы.

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

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

Для достижения поставленной цели в работе ставились и решались основные задачи:

1. Разработать методику построения МС на основе существующих информационных систем.

2. Для ее реализации предложить модели описания МД и классификаторов.

3. Создать алгоритмы наполнения МС данными и классификации этих данных.

4. Реализовать на практике МС для решения реальных задач.

Практическую ценность в работе представляют:

1. Разработанная методика построения МС, модели описания МД и классификаторов носят формализованный характер и могут быть использованы при построении различных базах данных МС.

2. Предложенные алгоритмы могут быть использованы при построении модуля загрузки и классификации данных в различных прикладных задачах.

3. Реализованная МС может быть использована для решения широкого круга прикладных задан.

В частности, построенная МС была включена в коммерческие программные продукты:

• «СКЛУТ-Навигатор» в качестве средства поддержки формирования различных отчетов,

• «СКЛУТ-УКОИ» в качестве средства построения многомерных ОЬАР-отчетов.

Самостоятельную практическую ценность представляют отдельные фрагменты созданной

МС, в частности:

• база данных МС,

• модуль выгрузки МД из исходных систем.

15 данной работе выносятся на защиту следующие положения:

1. Методика построения МС на основе существующих 80Ь-ориентироваппых информационных систем.

2. Формализованные модели описания МД и классификаторов МД.

3. Алгоритм наполнения МС данными из внешних источников на основе предложенной модели.

4. Расширяемая база данных МС, основанная на описанных моделях.

5. Модуль выгрузки МД из исходных информационных систем.

Заключение диссертация на тему "Разработка моделей и методов построения и автоматизированного наполнения системы метаданных"

4.5 Выводы

Отмстим основные результаты главы 4.

• Описаны шаги реализации МС по уже готовой структуре БД МС и описанному алгоритму наполнения данных.

• Сформулирован общий вид решаемых МС задач.

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

• Описан алгоритм оценки эффективности предложенной методики построения МС.

Заключение

11сречисл1Ш основные результаты работы:

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

2. Предложены формальные модели описания объектов МС и классификаторов.

3. Па основе предложенной модели сформулированы и обоснованы критерии построения БД МС. Предложена структура БД МС.

4. Выбран способ наполнения данными МС и предложен универсальный алгоритм такого наполнения.

5. Описан механизм работы с пользовательскими классификаторами в рамках МС.

6. Определены организационные мероприятия, облегчающие использование МС.

7. Описаны шаги реализации МС по уже готовой структуре БД МС и описанному алгоритму наполнения данных.

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

Также в результате работы был программно реализован механизм загрузки данных, коюрый может' быть использован отдельно от разработанной в рамках работы метасистемы.

Библиография Бутенко, Игорь Всеволодович, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

1. Архиттснков С., Голубев Д., Максимепко О. Хранилища /данных. Or общей концепции до внедрения /1 Год общ. ред. С.Я. Лрхипенкова. М.: ДИАЛОГ-МИФИ, 2002. - 528 с.

2. Баргесян A.A., Куприянов М.С., Степаненко В.В., Холод И.И. Технологии анализа данных: Data Mining, Visual Mining, Text Mining, OLAP. 2-е изд. иерераб. и доп. - СПб.: БХВ-ГГегербург, 2007. - 384 е.: ил. I- CD-ROM.

3. Белова M С., Крюков А.Ф., Мещанинов Д.Г. Онтологическая классификация документов. // BC7NW. 2006. №2 (9) // http://network-iournal.mDci.ac.ru/cgi-bin'mnin.pl'.'l ni&n---9&ра= 12&ai~ 1

4. Бергер А.Б. Горбач И.В., Мсломед ЭЛ., Щербинин В.А. Степаненко В.П. / под общ. ред. Бергер А.Б., Горбач И.В. Microsoft SQL Server 2005 Analysis Services. OL.АР и многомерный анализ данных. СПб.: БХВ-Пстсрбург, 2007. - 928 е.: ил. - в подлиннике.

5. Богородицкая И. Системная интеграция под прицелом // http: //wwv» .inik s.ru/search/2535 K02.html

6. Большой энциклопедический словарь M: Советская энциклопедия, 1991.

7. Брптов П.А., Линчинский Е.А. Практика построения хранилищ данных: SAS System. // Kopiiopaiивиые системы. 1999. № 3.

8. Бутепко И.В. Метасистема как инструмент для построения аналитических отчетов в информационных системах //Научно-технические ведомости СПбГПУ. СПб.: СПбГГТУ, 201 1, №2 (120). с. 32-38.

9. Бутепко И.В. Принципы построения метаданных при разработке аналитической системы. Н Технологии Microsoft в теории и практике программирования. СПб.: нзд-во Политехи, ун-та, 2004. с. 14-15.

10. Бугенко И.В., Зоюв A.A. Архитектура построения автоматизированной банковской системы /тля многофилиальттого банка. // XXXI педеля науки СПбГПУ. 4.IV: Материалы межвузовской научной конференции. -- СПб.: СПбГПУ, 2003. с. 8 9.

11. Бутепко П.В , Зотов A.A., Устинов С.М. Система управления метаданными. // Технологии Microsoft в теории и практике программирования. СПб.: изд-во Политехи, ун-та, 2006. с. 96-98.

12. Бутенко И.В., Дробинцев Д.Ф. Выбор средств организации метаданных для информационно-аналитических систем. // Технологии Microsoft в теории и практике программирования. СПб.: изд-во Политехи, ун-та, 2005. с. 78-80.

13. Бутенко И.В., Дробинцев Д.Ф., Колесник A.C. Принципы построения классического хранилища данных на основании развиваемых витрин данных. // Технологии Microsoft в теории и практике программирования. СПб.: изд-во Политехи, ун-та, 2005. с. 32-34.

14. Бутенко И.В., Зотов A.A., Устинов С.М. Метасистема как основа доступа в неоднородной распределенной базе данных. // Научно-технические ведомости СПбГ'ПУ. СПб.: СИбГПУ, 2007, №2(50). с. 247-252.

15. Бутенко И.В., Кауров И.В., Дробинцев Д.Ф. Разработка модуля анализа и прогнозирования на базе Microsoft Analysis Services // Технологии Microsoft в теории и практике программирования. СПб.: изд-во Политехи, ун-та, 2010. с. 93-95.

16. Бутенко И.В., Ковалевский В.Э. Использование многомерных структур для обработки больших объемов аналитических данных // Технологии Microsoft в теории и практике программирования. -- СПб.: изд-во Политехи, ун-та, 2010. с. 96-97.

17. Бутенко И.В., Ковалевский В.Э. Дробинцев Д.Ф.Реализация механизма загрузки метаданных в Microsoft Analysis Services // Технологии Microsoft в теории и практике программирования. СПб.: изд-во Политехи, ун-та, 2010. с. 97-98.

18. Бутенко И.В., Устинов С.М. Методика построения рспозитория метаданных для сущее 1вующсй информационной системы. // Научно-технические ведомости СИбГПУ. СПб.: СИбГПУ, 2010, №4(103). с. 92-99.

19. Бутенко И.В., Устинов С.М. Разработка моделей и методов построения и автоматизированного наполнения системы метаданных. // Вычислительные, измерительные и управляющие системы: сб. паучп.трудов. СПб.: изд-во Политехи, унта, 2009. с.3-10.

20. Грпщенко А., Макаренко И. Системы на основе мстаонисанпй. // Открытые системы. 2001. № 10.

21. Дейт Д. Дж. Введение в базы данных, 7-е издание. Пер. с англ. • М.: Издательский дом ""Вильяме", 2001,- 1072 е.: ил.

22. Интеграция данных и Хранилища // Клуб знатоков Data Warehouse, OLAP, XML. 2005. № 53 // http: 'www.iso.ru/journal/articles/441 .html.

23. Hineiрация корпоративной информации: повое направление // Клуб знатоков Data Warehouse, Ol AI', XML. 2005. № 37 // htlp./Avwu .iso.ru journal articlcso66.html

24. Карпов В.ГЭ., Карпова И.П. К вопросу о принципах классификации систем. И Информационные технологии. 2002. №2'.

25. К о 11 с I а 11 т a fi н JI., Локвуд Л. Разработка программного обеспечения. СПб.: Птпср. 2004. -592 е. пл.

26. Кузнецов С.Д. Базы данных. Модели и языки. М.: Бином-Пресс. 2008. - 720 с.

27. Ларсои Б. Разработка бизнес-апалшики в Microsoft SQL Server 2005. СПб.: Пшер. 2008. 31 Мак-Дональд M. WPF: Windows Presentation Foundation в .Nl£T 3.5 с примерами на СИ2008 для профессионалов. 2-ое М.: Вильяме, 2008. -- 928 е.: пл. - пер. с англ.

28. Макконнелл С. Профессиональная разработка иротраммното обеспечения. Символ-Плюс. 2007.-240 е.: ил.

29. Месарович М., Мако Д., Такахара И. Теория иерархических многоуровневых систем. М.: Мир. 1973.

30. Общая метамодель Хранилища данных. // Клуб знатоков Data Warehouse, OLAP, XML. -2003 Л« 23 // http "vs ww.iso.ru |ournal/articles'229.htmll

31. Орам r)., Уилсон 1". Идеальный код. СПб.: Пшер. 2009. - 624 е.: пл.

32. Петров В.И. Информационные системы. СПб.: Питер. 2002. - 688 е.: ил.

33. Репин В.В., Нлиферов В.Г. Процессный подход к управлению: моделирование бизнес-процессов Изд. 4-е. М.: Стандарты и качество. 2006. - 404 с.

34. Российские электронные библиотеки // http://www.elbib.ru/index.phtml?page=elbib/rus/methodology

35. Салливатт Т., Шварц Э. Девятый вал SAS. // Computerworld. 2004. № 12.

36. Смирнов П. Н., На одном языке. // Computerworld. 2005. № 21. // hUPi/1 nlerlech.ru/Aboul/coiTipprcss.asp?niename~compprcss 51

37. Смирнов Г.IL. Сорокин A.A. Тельнов Ю.Ф. Проектирование экономических информационных систем. М.: Финансы и статистика. 2001. - 502 с.

38. С'пирли Э Корпоративные хранилища данных. Планирование, разработка, реализация. Том 1.:Пср с англ. М.: Вильяме, 2001.- 400 е.: ил. - Иарал. шт. англ.

39. Стсйначср С. LTI. ключ к готовности и корректности данных. // Computerworld. - 2001. j\'»3

40. Туманов В. L., Маклаков С. В. Проектирование реляционных хранилищ данных. Диалог-МИФИ. 2007. 336 е.: ил.

41. Хендереон К. Профессиональное руководство rio SQL Server: хранимые процедуры, XML, HTML (ICD). СПб.: Питер, 2005. - 620 с: ил.

42. Чаудхурп С., Дай ал У., Гаити 13. Технология баз данных в системах поддержки принятия решений // Открытые системы. 2002. № 1.

43. Шаша Д., Бонне Ф. Оптимизация баз данных: принципы, практика, решение проблем. -М.: КУДИЦ-ОБРЛЗ. 2004. 432 с.

44. Шмаков Л. Платформа разработки аналитических приложений. // Открытые системы. -2007. №5.

45. Inmon W.II. Metadata in the Data Warehouse. White Paper, 2000.50. nimm W.U. What is Data Warehouse. NY: John Wiley, 1993.

46. Kimball R. The Data Warehouse Toolkit: Practical Techniques for Building Dimensional Data Warehouses. John Wiley & Sons. 1996.

47. Kimball R. The Data Warehouse Toolkit: Building the Web-Fnabled Data Warehouse. John Wiley & Sons. 2000

48. Wadhwa P.S., Kamalapur P. Customized Metadata Solutions for a Data Warehouse A Success Story. White Paper. 2004.

49. Marco D. Meta Data Repository Myths. DM Review Magazine. 2002.