Методология интеграции гетерогенных информационных систем по свойствам неорганических веществ (1090084), страница 32
Текст из файла (страница 32)
Данные извлекаются вформате исходного источника данных ИС. В случае выполнения запроса в средеMicrosoft SQL Server Management Studio результат может быть таким, как показано нарис. 4.5.3.Рис. 4.5.3. SQL–запрос на извлечение данных о химических веществах.168По аналогии с данным примером, данные извлекаются не только о химическихвеществах, но и о кристаллических модификациях и свойствах веществ, содержащихсяв БД «Кристалл», «Фазы» и «Диаграмма».Результатом процедуры извлечения являются данные в табличной форме,которые затем с помощью алгоритмов обработки данных должны преобразовываться вформат хранилища данных для преследующей их загрузки в описанное выше ХД посвойствам неорганических веществ.4.5.2. Процедура преобразования данныхГетерогенные ИС СНВМ отличаются форматами представления данных (БДиспользуют различные по синтаксическому описанию и структуре данные).
В ряде БДиспользуются реляционные СУБД, в других иерархические СУБД. В последнее времянередко строятся ИС, которые используют XML или какие–либо его известныеприложения, например, RDF для хранения информации. В ИС СНВМ, разработкакоторых велась довольно давно, нередко можно встретить двоичные форматы храненияданных. Все это многообразие форматов данных и способов представления и обработкиинформации приводит к тому, что БД в том виде, в котором они существуют, зачастуюявляются несовместимыми с другими программными продуктами.
Следует отметить,что изначально при проектировании большинства ИС СНВМ, взаимодействие свнешней программной средой не предусматривалось вовсе.Разрешить синтаксические и структурные конфликты можно посредствомвведения общей схемы представления информации и обмена данными, построеннойсогласно описанию предметной области. При описании химических сущностей, какбыло показано ранее, можно использовать три уровня: система, вещество икристаллическая модификация. Следовательно, все подсистемы интегрированного ХДдолжны оперировать данными типами объектов при ссылке на химические сущности.При этом стоит учитывать, что если описывается определенная химическаямодификация, то определена также и химическая система с веществом, модификациякоторого описывается. То есть если описание химической сущности ведется на уровнемодификаций, то все вышележащие уровни (вещество и система) тоже описаны.Следует заметить, что обратное неверно.
То есть, если описывается химическаясистема, то вещество и модификация четко не определены. Однако необходимопонимать, что при описании сущности на уровне системы, все описанные свойстваавтоматически распространяются на все вещества и модификации, образованные этойхимической системе.169Как было отмечено, в интегрируемых БД содержится информация по различнымсвойствамхимическихсущностей.Например,плотность,растворимость,теплопроводность. При этом для каждой химической сущности в БД нередкосодержится несколько записей для описания значения свойства. Это обусловленонесколькими обстоятельствами.
Во–первых, информация, содержащаяся в БД, можетбыть взята из различных источников, при этом данные нередко расходятся. Этообъясняется как различными способами измерения, так и точностью измеряющейаппаратуры. Таким образом, часто в ИС СНВМ приводится несколько вариантовзначения,например,плотностиразличныхкристаллов.Во–вторых,значениярассматриваемых свойств зачастую зависят от внешних условий, при которыхприводились измерения. Например, такие параметры как растворимость и шириназапрещенной зоны зависят от температуры, при которой проводились измерения.Другими словами, значения свойств часто являются функциями от различныхаргументов, число которых, строго говоря, не фиксировано.
Это означает, что разныесвойства могут иметь разную структуру представления данных. Более того, одно и тоже свойство в разных ИС СНВМ может являться функцией от разного числааргументов, и поэтому невозможно предложить универсальный формат представлениязаданного типа свойства для всех ИС СНВМ. Это во многом может быть объяснено темфактом, что при детальном исследовании какого–либо свойства число такихфункциональныхзависимостейотвнешнихпараметровможетвозрастать.Следовательно, если такое свойство будет подробно рассмотрено в некоторой ИС,которая еще не включена в общее интегрированное ХД, то при ее включении в составинтегрированного ХД возникнет проблема согласования форматов представленияуказанного свойства.
Таким образом, невозможно заранее предусмотреть всезависимости и заложить их в общий формат представления данных даже для отдельновзятого конкретного свойства, не говоря о представлении свойств в целом.Такимобразом,необходимнекоторыймеханизм,позволяющийгибкопредставлять значения свойств в рамках интегрированного ХД. В настоящее времясуществует общепризнанное средство описания произвольных форматов данных – этоXML (eXtensible Markup Language).
С помощью этого языка разметки удобноописывать различные структуры данных, он является межплатформенным форматом иподдерживается большинством языков и библиотек. На сегодняшний день именно этотязык является тем звеном, которое может служить основой для обеспечениявзаимодействия различных программно–аппаратных платформ. В настоящее время все170большее информации в современных промышленных системах представляется в техили иных XML форматах.Формат данных для химических системДля разрешения конфликтов разработаны форматы представления описанныххимических сущностей и свойств в рамках интегрированного ХД на языке XML.
Тоесть,былиразработаныформатысоответствующихXML–документовдляпредставления химических сущностей и их свойств.Например, химическая система In–S представлена следующим образом:<SystemXML><ChemicalSystem><Item Element="In" /><Item Element="S" /></ChemicalSystem></SystemXML>Стоит обратить особое внимание на то, что приведенный XML–документсодержит только список химических элементов, входящих в состав системы.
Другимисловами, задается множество химических элементов {In, S}, принадлежащихконкретной системе.Формат данных для химических веществОписание вещества по сравнению с химической системой дополнительновключает данные о количественном вхождении химических элементов. Рассмотримпример представления двух разных веществ, относящихся к системе In–S (на самомделе, для системы In–S их больше). Так формула вещества состава In2S3 будетпредставлена в XML-формате следующим образом:<SubstanceXML><ChemicalSubstance><Item Element="In" value="2" /><Item Element="S" value="3" /></ChemicalSubstance></SubstanceXML>Как видно из XML-документа, количественные вхождения элементов в составвещества указаны в атрибуте value, принадлежащем соответствующему узлу,описывающему химических элемент. Другим примером вещества в системе In–Sявляется InS (в вещество входит по одному атому индия и серы), которое будетпредставлено следующим образом:171<SubstanceXML><ChemicalSubstance><Item Element="In" value="1" /><Item Element="S" value="1" /></ChemicalSubstance></SubstanceXML>Формат данных для кристаллических модификацийКристаллическая модификация – это вспомогательный геометрический образ,вводимый для анализа строения кристалла.
Поэтому на уровне кристаллическихмодификаций, помимо информации о количественном составе вещества, содержатсяданные о его сингонии (иногда о кристаллической системе). Всего известно шестьсингоний: триклинная, моноклинная, ромбическая, тетрагональная, гексагональная,кубическая.Разбиение на кристаллические системы выполняется в зависимости от набораэлементов симметрии, описывающих кристалл. Такое деление приводит к семикристаллическим системам, две из которых (тригональная и гексагональная) имеютодинаковую по форме элементарную ячейку и поэтому относятся к одной,гексагональной, сингонии.
Говорят, что гексагональная сингония подразделяется на двеподсингонии или гипосингонии. Это обстоятельство учитывается при разрешенииконфликтов гетерогенности, т.к. в разных ИС СНВМ кристаллические модификациимогут указываться в разных терминах (сингонии или кристаллической системы). Такимобразом, имеем семь кристаллических систем: триклинная, моноклинная, ромбическая,тетрагональная, тригональная, гексагональная, кубическая.Предлагается следующий формат данных для преставления кристаллическихмодификаций (с учетом данных по количественному составу) веществ.
На примерекубической модификации In2S3 XML-документ будет следующей структуры:<ModificationXML><ChemicalModification><Item Element="In" value="2" /><Item Element="S" value="3" /><Modification>cubic</Modification></ChemicalModification></ModificationXML>Таким образом, предложенный формат данных учитывает качественный иколичественный состав веществ, а также тип кристаллической модификации.172Формат данных для представления значений свойствПри разработке форматов представления данных особое внимание уделялосьспособу представления значений свойств, так как было необходимо обеспечитьвозможностьпредоставленияразличныхтиповсвойств(текстовыеописания,графические или табличные представления). Для обеспечения кроссплатформеннойвозможности работы со значениями из столь широкого диапазона типов данных былопринято решение использовать XML–документы для представления значений свойств.Например, для соединения LiNbO3 растворимость в воде, заданная таблицей в БД«Кристалл», являющаяся функцией от температуры, представляется в виде XML–документа:<root><val dbid="1" mime="text/xml"><row p_TempK="273"p_SuspName="H<sub>2</sub>O" value="0.34" /><row p_TempK="298"p_SuspName="H<sub>2</sub>O" value="0.41" /><row p_TempK="323"p_SuspName="H<sub>2</sub>O" value="0.64" /><row p_TempK="348"p_SuspName="H<sub>2</sub>O" value="0.89" /><row p_TempK="373"p_SuspName="H<sub>2</sub>O" value="1.09" /></val></root>Значения свойств хранятся в таблице DW_PropertyValues, а составной ключ IDp,IDs, IDc, IDm указывает на описываемое свойство из таблицы DW_Propeties ихимическую сущность, определяемую тройкой (IDs, IDc, IDm).
Это позволяетсохранять в ХД значения свойств для химических сущностей на уровне систем,веществ и модификаций. Так, при описании значения свойства для неорганическоговещества IDc содержит идентификатор соответствующего химического соединения(IDs – указывает на соответствующую химическую систему), а IDm=0, т.е. указывает наотсутствие информации по модификации химической сущности (использование NULLнедопустимо, в силу вхождения поля IDm в состав первичного ключа).При работе с двоичными данными, например, с графическими рисунками илианалитическими обзорами используется представление бинарных данных в виде строки173Base64 с обязательным указанием MIME–типа ресурса (например, “image/gif” или“application/pdf”).