Разработка IT Архитектуры: Семантика данных


Семантика данных

Семантика (значение данных) – комплексное понятие в мире ИТ, и может быть разделено на 4 категории:

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

Направление информационной разработки с начала 1990-х годов было основано на неправильном представлении, которое определяло что предприятие может иметь одну последовательную модель данных без избыточности. Более точный способ понимания информации представляет собой:
Информация = Данные + Контекст

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

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

Существуют очень незаметные различия в значениях, которые скрыты внутри приложений и баз данных, которые их контролируют. Одним из таких примеров является объектно-реляционное рассогласование импеданса, которое возникает из-за наличия инкапсуляций и скрытых представлений, различия типов данных, структурных и целостных различий, и транзакционных различий. Импеданс возникает во вполне конкретной конфигурации, которая, в самом общем виде, включает ОО-систему программирования и реляционную систему управления БД (в самых разных её воплощениях). Надо понимать, что, несмотря на распространенность, эта конфигурация есть результат хаотичной, зависящей от тысяч случайных фактов эволюции взаимодействия систем с быстрой (ОЗУ) и медленной (внешние накопители) памятью.

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

Статьи курса:

1. Принципы построения модели данных

Ссылка на курс ITIL