Журнал ВРМ World

Мировая история развития технологий управления эффективностью бизнеса – обзоры зарубежных публикаций

Метаданные и их место в Хранилище. Представление метаданных с помощью XML

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

Метаданные (от греч. Meta и лат. Data), буквально переводится как «данные о данных», информация о другом наборе данных.

Одно из полезных определений следующее: «Метаданные — это структурированные, кодированные данные, которые описывают характеристики объектов-носителей информации, способствующие идентификации, обнаружению, оценке и управлению этими объектами».

Майкл Брэкет1 (Michael Brackett) определяет метаданные (которые он называет «данными о ресурсах данных») как «любые данные об информационных ресурсах организации». Адриен Танненбаум2 (Adrienne Tannenbaum) называет метаданные «детальным описанием сущности данных». Эти определения раскрывают формулировку «данные о данных».

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

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

Метаданные Хранилища данных

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

Метаданные систем Хранилищ данных иногда подразделяют на два типа:

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

Ральф Кимболл3 (Ralph Kimball) перечисляет следующие типы метаданных в Хранилище:

  • метаданные исходной системы
  • спецификации источников данных, таких как репозитории;
  • описательная информация (например, частота обновления, юридические ограничения и методы доступа);
  • информация о процессах, таких как график заданий и коды извлечения.
  • метаданные преобразования данных
  • информация о получении данных (например, планирование передачи данных и результатов, а также сведения об использовании файлов);
  • управление таблицами измерений, например, определения измерений и присвоения суррогатных ключей;
  • преобразование и агрегирование, например, расширение и отображение данных, программы (скрипты) загрузки СУБД, определения агрегатов данных;
  • документирование проверок, работ и журналов, например: журналов преобразования данных и записей слежения за происхождением данных.
  • метаданные СУБД, такие как:
  • содержание системных таблиц СУБД;
  • рекомендации по обработке.

Роль метаданных в Хранилище

Лучше всего объяснить суть метаданных, описывая их роль и назначение в реализации процессов ХД. Метаданные можно использовать тремя способами:

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

Создание и управление метаданными служит двум целям:

  1. минимизации работ по разработке и администрированию ХД;
  2. более эффективному извлечению информации из ХД.

Первая цель в основном относится к:

  • поддержке интеграции систем. Схемы и интеграция данных зависят от метаданных, описывающих структуру и смысл отдельных источников данных и целевых систем. Правила преобразования можно применить к исходным данным и хранить в качестве метаданных. Более того, интеграция различных инструментов возможна только тогда, когда они разделяют «данные», которые в данном случае представляют собой метаданные системы Хранилища данных;
  • поддержке анализа и проектирования новых приложений. Метаданные повышают контролируемость и надежность процесса разработки приложений, обеспечивая информацию о смысле данных, их структуре и источниках. Более того, метаданные касающиеся решений по проектированию приложений, можно использовать повторно;
  • повышению гибкости системы и возможности повторного использования существующих программных модулей. Это возможно только для активного и полуактивного использования метаданных. Быстро изменяющиеся семантические аспекты явным образом хранятся в виде метаданных вне прикладных программ. Поддержка поэтому существенно проще. Систему можно расширить и адаптировать без всяких трудностей. Данный подход также дает возможность повторного использования «фрагментов кода»;
  • автоматизации административных процессов. Метаданные управляют запуском различных процессов ХД (например, загрузки и обновления). Информация об их исполнении (журналы доступа, количество добавленных в Хранилище записей и т.п.) также содержится в репозитории, легко доступном администратору;
  • усилению механизмов безопасности. Метаданные должны обеспечить правила доступа и пользовательские права для всей системы ХД. Управление доступом в Хранилище иногда требует применения сложных методов. Например, оперативный источник может содержать безобидную информацию об отдельных показателях работы компании, однако суммарные значения в Хранилище иногда оказываются важнейшим секретом. С другой стороны, персональные доходы каждого сотрудника являются тайной, но при этом итоговая сумма зарплат в ХД может вовсе не быть критической информацией.

Вторая цель относится к эффективному извлечению информации, а точнее к :

  • повышению качества данных. Качество данных определяется следующими характеристиками:
    1) согласованностью (является ли представление данных однородным, нет ли дубликатов, данных с пересекающимися или конфликтующими определениями);
    2) полнотой (все ли данные присутствуют);
    3) точностью (совпадением хранимых и фактических значений);
    4) своевременностью (актуально ли хранимое значение).

  • Правила проверки качества данных необходимо задать, сохранить в виде метаданных и проверять при каждом обновлении Хранилища. Кроме того, высокое качество требует поддержки контроля данных. Метаданные обеспечивают информацию о времени создания и об авторе данных, об источнике, значении данных в момент получения (о наследовании данных), и о дальнейшем пути от источника к текущему местоположению (data lineage — о происхождении данных). Таким образом пользователи могут восстановить цепочку, по которой проходят данные за время преобразования, и проверить точность возвращенной информации;
  • улучшению взаимодействия внутри системы ХД. Взаимодействие происходит как посредством выполнения простых запросов и отчетных приложений, так и с использованием сложных аналитических инструментов. Метаданные обеспечивают сведения о значении данных, терминологию и бизнес-концепции предприятия, а также их связь с данными. Поэтому метаданные повышают качество выполняемых запросов за счет более точной и строгой формулировки, а также сокращают расходы на пользователей, которым необходимы доступ, оценка и применение соответствующей информации;
  • улучшению анализа данных. Методы анализа данных представлены широко — начиная от простых приложений отчетности и OLAP и заканчивая сложными приложениями data mining. В этом направлении метаданные необходимы для понимания предметной области и ее представления в Хранилище, с тем чтобы адекватно применить и интерпретировать результаты;
  • применению общей терминологии и языка взаимодействия внутри корпорации. Доступность метаданных как уникального источника документации для пользователей имеет и другие преимущества. Она гарантирует согласованные средства взаимодействия и интерпретации информации из Хранилища. А также устраняет двусмысленность и обеспечивает согласованность сведений внутри компании, позволяет разделять знания и опыт.

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

Существуют различные способы определения и хранения метаданных в Хранилище. Один из методов — использование технологии XML.

XML и метаданные

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

Основная функция XML - определять другие языки разметки. XML — это метаязык, а поэтому он оказывается очень эффективным форматом представления и обмена метаданными.

XML имеет множество преимуществ, которые делают его идеальным средством описания:

  1. Он понятен людям в чтении и написании. А следовательно, доступен новичкам и не вызывает страха.
  2. Это открытая технология. Стандарт XML предложен W3C. Никто им не имеет прав собственности на этот язык. Он — платформо-независимый.
  3. XML может применяться повсеместно. Анализатор XML можно найти везде, и, используя соответствующие инструменты, несложно сразу же внедрить эту технологию.
  4. Язык гибок. Пожалуй, одна из главных причин использования XML в том, что нет четких рамок применения. Каждый самостоятельно решает, как использовать его в своем приложении.5. XML недорог для внедрения как в большой, так и в малой организации.

Можно привести и иные причины использования XML, а не других средств. В первую очередь, структура метаданных часто бывает сложной, в ней множество вложенных отношений, а некоторые элементы метаданных могут повторяться. Во-вторых, если для хранения метаданных используется, например, РСУБД (реляционная система управления базой данных), то таблицы в базе не отражают сложных связей между элементами метаданных (трудно сгенерировать определения таблиц для описания отношений). И наоборот, XML задает структуру документа «самоописательным» образом. Его можно использовать для задания не только содержания, но и схемы. А следовательно, не сложно найти взаимосвязь между различными участками XML-документа.

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

Если имеется программное обеспечение, которое может прочесть и расшифровать XML-файлы, то метаданные в любом Хранилище можно представить в виде обычного XML-файла, созданного на основе общего DTD (document type definition — описание типа документа).

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

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

А что будет, если таких XML файлов окажется 1000, причем все они будут написаны в соответствии с разными стандартами? Вроде бы у современных грамотных специалистов этого не должно случиться. XML — открытый стандарт, в распоряжении специалистов есть DTD и схемы, и в нужный момент появятся необходимые инструменты. Но так ли это? Где же эти инструменты, стандарты, где профессионалы, решающие такие проблемы? Не похоже, что они занимаются написанием XML-кода.

А кто готов перед лицом руководства поставить следующие задачи, возникающие в XML-среде:

  • согласованный стиль тэгов;
  • непротиворечивые соглашения об именовании;
  • совместимые определения тэгов;
  • управление XML-объектами для их последующего повторного использования;
  • инструменты для динамической проверки DTD и схем;
  • документированные наборы кодов;
  • четко заданные пространства имен бизнес-модели.

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

Очевидно, что метаданные еще пять лет назад были в поле зрения большинства крупных компаний. Сегодня они на передовой линии XML-технологии, и это их лучшее место.



[1] Майкл Брэкет (Michael Brackett) — признанный лидер в области обработки данных. Основатель справочного интернет-портала проектирования и моделирования ресурсов данных (Data Resource Design and Remodeling — http://members.aol.com/mhbrackett/). Работал координатором ресурсов данных штата Вашингтон, где разрабатывал общую архитектуру данных штата. Кроме того, занимался преподаванием проектирования и моделирования данных в Университете Вашингтона и написал пять книг по этой теме, в том числе «Проблема Хранилища данных: устранение хаоса данных» (The Data Warehouse Challenge: Taming Data Chaos). Занимает должность президента ассоциации DAMA International.

[2] Адриен Танненбаум (Adrienne Tannenbaum) — президент консалтинговой компании Database Design Solutions (www.dbdsolutions.com), специализирующейся на восстановлении корпоративных данных. Является автором двух популярных книг о метаданных: «Решения для метаданных: использование метамоделей, репозиториев, XML и корпоративных порталов для генерации информации» (Metadata Solutions: Using Metamodels, Repositories, XML, and Enterprise Portals to Generate Information on Demand) (2001, изд. Addison Wesley) и «Внедрение корпоративного репозитория» (Implementing a Corporate Repository) (1994, изд. Wiley).

[3] Ральф Кимболл (Ralph Kimball) (ralph@kimballgroup.com) известен во всем мире как новатор, писатель, преподаватель, лектор и консультант в области Хранилищ данных.

Автор: По материалам зарубежных сайтов