Методология интеграции гетерогенных информационных систем по свойствам неорганических веществ (1090084), страница 31
Текст из файла (страница 31)
DFD–диаграмма хранилища данных совместно с СППР.ХД по свойствам неорганических веществ служит информационной основой дляСППР при прогнозировании свойств неорганических веществ. СППР (в роли которой вданной работе выступает информационно-аналитическая система для компьютерногоконструированиянеорганическихсоединений)выполняетсложныйанализнакопленных данных и на его основе осуществляет прогнозирование. Результатыпрогнозов (после экспертной оценки) должны проходить экспериментальную проверку,направленную на синтез спрогнозированных веществ и оценку их свойств.
В этомсмысле можно сказать, что прогнозы, полученные с помощью системы компьютерногоконструирования, являются важными для существенного сужения области поискановых функциональных материалов, т.к. СППР позволяет априорно, т.е. до проведенияреального химического эксперимента, оценить перспективы синтеза тех или иныхвеществ.161При использовании в рамках системного подхода декомпозиции блока“Инструменты ETL” получим DFD-диаграмму, содержащую модули для извлечения,преобразования и загрузки данных в ХД (рис. 4.1.2).Рис.
4.1.2. DFD–диаграмма декомпозиции блока “Инструменты ETL”.4.2. Методология функционального моделирования IDEF0Для более полного описания информационных процессов использованаметодологияфункциональногомоделированияIDEF0.Контекстнаядиаграммафункциональной модели методов интеграции данных представлена на рис. 4.2.1.Отметим, что эта диаграмма одинакова для всех методов интеграции данных (EII иETL), т.к. отличия проявляются на более позднем этапе декомпозиции функциональноймодели методов интеграции.Рис.
4.2.1. Контекстная диаграмма функциональной модели методов интеграцииданных.Первый уровень декомпозиции представлен на рис. 4.2.2. В блоке A1происходит извлечение данных из ИС источников данных на основе метаданных о162правилах и способах извлечения информации. Блок A2 с помощью специальныхалгоритмов осуществляет преобразование извлеченных данных из форматов ИСисточников данных к форматам данных, принятых в качестве стандартов дляхранилища данных. Блок A3, получая на входе преобразованные к единому форматуданные, осуществляет их обработку в соответствии с требованиями интегрированнойИС.
Блок A4 использует алгоритмы для поиска затребованных пользователем данных иих представления в удобной форме.Рис. 4.2.2. Первый уровень декомпозиции функциональной модели методов интеграцииданных.4.3. ER-модель хранилища данныхНа основе предложенной и иерархии химический понятий (система → вещество→ модификация) была разработана ER-модель ХД (рис. 4.3.1). Следует учесть, чтосвязи многие ко многим (N:M) потребуют ввода дополнительных отношений на этапереализации реляционной структуры ХД [136].163Рис.
4.3.1. ER-модель ХД.4.4. Реляционная структура ХДВ главе 3 было принято решения использовать продукты компании Microsoft дляреализации ХД. Для управления ХД, лежащим в основе интегрированной ИС на уровнеорганизации, было принято решение использовать Microsoft SQL Server 2008.Структура ХД базируется на описанной выше ER-модели. На рис.
4.4.1 приведена частьлогической модели ХД, включающая все сущности с ER-диаграммы, кромелитературных ссылок.164Рис. 4.4.1. Логическая модель ХД по свойствам неорганических веществ.Рассмотрим подробнее назначение таблиц полученной схемы данных. В таблицеDW_Systems хранится информация о химических системах, данные о которыхпомещены в хранилище.
При этом информация об образующих систему химическихэлементах содержится в таблице DW_SystemElements, ссылающейся на справочникхимических элементов DW_Elements. В поле DW_Systems.SystemXML содержитсяXML-документ, описывающий химическую систему. Формат XML-документов будетрассмотрен ниже (глава 4.5.3) при описании процедуры прообразования данных.Аналогично описывается информация о содержащейся в ХД информации похимическим соединениям с помощью таблицы DW_Compounds, связанной с таблицейэлементов через промежуточную таблицу DW_CompoundElements, позволяющуюхранить сведения о соотношении химических элементов в соединении (возможно,переменного состава) с помощью полей MinIndex и MaxIndex. Информация окристаллических модификациях хранится в таблице DW_Modifications, котораядобавляет к данным о количественном составе соединения информацию о типе однойизкристаллическихмодификаций,описанныхвсправочнойтаблицеDW_ModificationTypes.Основное внимание уделялось способу представления значений свойств.
Важнообеспечить представление свойств разных типов: скалярные значения, табличные165наборыданных,графическиеиполнотекстовыеописания.Дляобеспечениякроссплатформенной возможности работы со значениями из столь широкого диапазонатипов данных было принято решение использовать XML-документы для представлениязначений свойств. При работе с двоичными данными, например, с графическимирисунками или аналитическими обзорами используется представление бинарныхданных в виде строки Base64 с обязательным указанием MIME-типа ресурса(например, “image/gif” или “application/pdf”).
Сами значения хранятся в таблицеDW_PropertyValues,асоставнойключPropertyID,SystemID,CompoundID,ModificationID указывает на описываемое свойство из таблицы DW_Propeties ихимическуюсущность,определяемуютройкой(SystemID,CompoundID,ModificationID). Это позволяет сохранять в ХД значения свойств для химическихсущностей на уровне систем, веществ и модификаций. Так, при описании значениясвойства для неорганического вещества CompoundID содержит идентификаторсоответствующегохимическогосоединения(SystemID–указываетнасоответствующую химическую систему), а ModificationID=0, т.е. указывает наотсутствие информации по модификации химической сущности (использование NULLнедопустимо, в силу вхождения поля ModificationID в состав первичного ключа).Отмечается, что при использовании ХД в качестве источника информации длясистем прогнозирования значение свойства необходимой химической сущности можетбыть получено из XML-формата двумя способами: 1) путем наложения на XMLдокумент специального XSLT-преобразования (XML + XSLT => требуемый форматданных); 2) путем программной обработки XML документа с использованием средстворганизации запросов к XML-документу на языках XPath и/или XQuery.
Важнойособенностью является возможность выполнения данных преобразований как настороне ХД с использованием хранимых процедур на SQL CLR (SQL CommonLanguage Runtime – реализация размещения и запуска управляемого кода на .NetFramework в рамках СУБД Microsoft SQL Server), так и на стороне сервера приложений(например, Microsoft IIS), что улучшает масштабируемость ИС.4.5. Извлечение, преобразование и загрузка данных в ХДРазработана методика извлечения, преобразования и загрузки данных в ХД.Данные извлекаются из исходных источников данных, преобразуются в формат ХД изагружаются в ХД.
Последовательность этих процессов является основополагающейпри заполнении ХД информацией по свойствам неорганических веществ. На рис. 4.5.1.показано, что данные извлекаются из материаловедческих БД, затем преобразуются наETL-сервере и загружаются в ХД. В процессе извлечения, преобразования и загрузки166информации используются метаданные, которые описывают правила извлеченияданных из исходных БД, формат исходных данных, а также правила их преобразованияк формату единого ХД и последующей загрузки в него.Рис. 4.5.1. Методика извлечения, преобразования и загрузки данных.4.5.1.
Процедура извлеченияПроцедура извлечения исходных данных из БД информационных источниковявляется первым шагом в подходе к интеграции средствами ETL. Учитывая то, чтоисходные ИС (из которых извлекается информация) построены на основе современныхреляционных СУБД, предлагается использование SQL–запросов для извлечениятребуемых наборов данных.В качестве примера рассмотрим процедуру извлечения данных о химическихсоединениях на основе основной таблицы БД ИС “Кристалл” HeadTabl (рис. 4.5.2).167Рис. 4.5.2. Часть данных таблицы HeadTabl в БД “Кристалл”.Посколькудлянаполненияхранилищатребуетсяинформацияпоколичественному составу веществ, которая содержится в атрибуте System таблицыHeadTabl, извлекаем ее с помощью соответствующего SQL-запроса:SELECT [System] FROM dbo.HeadTablПосле выполнения данного SQL–запроса мы получаем сведения о необходимыххимических соединениях, находящихся в данной таблице.