Jump to content

Моделирование якоря

Рисунок, демонстрирующий концепцию якорного моделирования.

Якорное моделирование — это гибкий базы данных метод моделирования , подходящий для информации, которая со временем меняется как по структуре, так и по содержанию. Он предоставляет графическую нотацию, используемую для концептуального моделирования, аналогичную модели сущностей-связей , с расширениями для работы с временными данными . Методика моделирования включает в себя четыре конструкции моделирования: якорь, атрибут, связь и узел, каждая из которых отражает различные аспекты моделируемой области. [1] Полученные модели можно преобразовать в физические конструкции баз данных с использованием формализованных правил. Когда такой перевод будет выполнен, таблицы в реляционной базе данных в основном будут иметь шестую нормальную форму .

В отличие от звездообразной схемы ( мерное моделирование ) и классической реляционной модели (3NF), моделирование хранилища данных и привязки хорошо подходят для фиксации изменений, которые происходят при изменении или добавлении исходной системы, но считаются продвинутыми методами, требующими опытных архитекторов данных. . [2] И хранилища данных, и модели привязки являются на основе сущностей . моделями [3] но якорные модели имеют более нормализованный подход. [ нужна ссылка ]

Философия [ править ]

Якорное моделирование было создано для того, чтобы воспользоваться преимуществами высокой степени нормализации , избегая при этом ее недостатков, которые имеют высшие нормальные формы в отношении удобочитаемости для человека. Получаются такие преимущества, как возможность неразрушающего развития модели, избежание нулевых значений и сохранение информации без избыточности. Проблем с производительностью из-за дополнительных соединений можно избежать благодаря функции современных СУБД. [ когда? ] называется ликвидацией соединения или ликвидацией таблицы. Чтобы обрабатывать изменения в информационном содержании, моделирование привязки имитирует аспекты временной базы данных в результирующей схеме реляционной базы данных .

История [ править ]

Самые ранние установки с использованием якорного моделирования были осуществлены в 2004 году в Швеции, когда с использованием этой технологии было построено хранилище данных для страховой компании.

В 2007 году этот метод использовался в нескольких хранилищах данных и одной системе онлайн-обработки транзакций (OLTP), и он был представлен на международном уровне Ларсом Рённбеком на конференции Transforming Data with Intelligence (TDWI) 2007 года в Амстердаме . [4] Это вызвало достаточный интерес к технике, требующей более формального описания. С тех пор исследования, касающиеся якорного моделирования, проводятся в сотрудничестве между создателями Олле Регардтом и Ларсом Рённбеком и командой факультета компьютерных и системных наук Стокгольмского университета .

Первая статья, в которой формализовано якорное моделирование, была представлена ​​в 2008 году на 28-й Международной конференции по концептуальному моделированию и получила награду за лучшую статью. [5]

Коммерческий веб-сайт предоставляет материалы по моделированию якорей, которые можно использовать бесплатно по лицензии Creative Commons . Также доступен онлайн-инструмент моделирования, который можно использовать бесплатно и имеет открытый исходный код . [6]

Основные понятия [ править ]

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

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

Пример моделирования якоря

Временные аспекты [ править ]

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

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

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

Реляционное представление [ править ]

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

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

Примером привязки личностей племянников Дональда Дака является набор кортежей из 1:
{⟨#42⟩, ⟨#43⟩, ⟨#44⟩}

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

Примером узла для рода является набор из двух кортежей:
{⟨#1, 'Male'⟩, ⟨#2, 'Female'⟩}

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

Примером статического атрибута для их имен является набор из двух кортежей:
{⟨#42, 'Huey'⟩, ⟨#43, 'Dewey'⟩, ⟨#44, 'Louie'⟩}

Примером связанного статического атрибута для их пола является набор из двух кортежей:
{⟨#42, #1⟩, ⟨#43, #1⟩, ⟨#44, #1⟩}

Примером исторического атрибута (меняющихся) цветов их одежды является набор из трех кортежей:
{⟨#44, 'Orange', 1938-04-15⟩, ⟨#44, 'Green', 1939-04-28⟩, ⟨#44, 'Blue', 1940-12-13⟩}

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

Примером статической связи для родственных отношений является набор из двух кортежей:
{⟨#42, #43⟩, ⟨#42, #44⟩, ⟨#43, #42⟩, ⟨#43, #44⟩, ⟨#44, #42⟩, ⟨#44, #43⟩}

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

По сравнению с другими подходами [ править ]

В 2000-х годах было введено несколько шаблонов моделирования данных в хранилищах данных с целью создания гибких хранилищ данных, включая формы ансамблевого моделирования, такие как моделирование привязки, моделирование хранилища данных, моделирование фокусной точки и другие. [7]

Сравнение хранилищ данных [ править ]

В 2013 году на конференции по моделированию данных BI Podium в Нидерландах Ларс Рённбек представил сравнение якорного моделирования и моделирования хранилища данных. [8]

Сравниваемая функция Хранилище данных Преимущество* Моделирование якоря
Семья Ансамблевое моделирование - Ансамблевое моделирование
Парадигма Управление данными
Проверяемость имеет приоритет
- Управление данными
Потребности в приоритете
Архитектура Гибридный (несколько объектов обслуживания) - Реплицированные (отдельные объекты обслуживания)
Группировка Как можно больше - Как можно меньше
Основной график Время записи - Изменение времени
Обнаружение изменений Доступ к нескольким строкам/столбцам ЯВЛЯЮСЬ Доступ к одной строке/столбцу
Строгость Слабо формализовано
Нет соглашения об именах
- Строго формализовано
Имеет соглашение об именах
Эволюция схемы Разрушительный ЯВЛЯЮСЬ Неразрушающий
Темпорализация Любое-временное вручную,
дата окончания необязательна (не рекомендуется)
ЯВЛЯЮСЬ Одновременно-временной по замыслу,
нет конечной даты
Затягивание Обновления могут потребоваться ЯВЛЯЮСЬ Только вставить
Поддержка инструментов Множество инструментов
В основном коммерческий
ДВ Мало инструментов
Только с открытым исходным кодом
Адаптация к изменениям Все еще громоздко ЯВЛЯЮСЬ Почти без усилий
Обмен моделями Необработанный SQL с распечатанным
диаграммы какого-то вкуса
ЯВЛЯЮСЬ Стандартизированный формат XML
и графические обозначения
Неизменяемость Суррогатная личность
и естественный ключ
ЯВЛЯЮСЬ Только суррогатная личность
Естественное суррогатное материнство Один к одному, статический
Физически реализовано (концентратор)
ЯВЛЯЮСЬ Многие к одному, историзируемые
Логическое представление данных
Оптимизация запросов Несколько важно
Последние базы данных
ДВ Очень важно
Базы данных последней версии
Возможность написания сценариев С некоторым усилием ЯВЛЯЮСЬ Формализованное, автоматизированное
для всего
Представления и триггеры Упоминание, ручная работа
и от случая к случаю
ЯВЛЯЮСЬ Формализованное, автоматизированное
для всего
Предположения Создан, чтобы служить долго
Нужны предположения
ЯВЛЯЮСЬ Создан, чтобы меняться
Никаких предположений
Доля рынка Небольшие <1000 установок (2013 г.) ДВ Очень маленькие <100 установок (2013 г.)

Ссылки [ править ]

  1. ^ Л. Рённбек; О. Регардт; М. Берггольц; П. Йоханнессон; П. Вохед (2010). «Якорное моделирование — гибкое информационное моделирование в развивающихся средах данных». Инженерия данных и знаний . 69 (12): 1229–1253. дои : 10.1016/j.datak.2010.10.002 . ISSN   0169-023X . (Препринт доступен здесь )
  2. ^ Порсби, Йохан. «Необработанное хранилище вместо структурированного хранилища данных» . www.agero.se (на шведском языке) . Проверено 22 февраля 2023 г.
  3. ^ Порсби, Йохан. «Модели данных для хранилища данных» . www.agero.se (на шведском языке) . Проверено 22 февраля 2023 г.
  4. 6-я Европейская конференция TDWI — домашняя страница TDWI. Архивировано 20 июля 2011 г., в Wayback Machine.
  5. ^ Регардт, Олле; Рённбек, Ларс; Берггольц, Мария; Йоханнессон, Пол; Вохед, Петия (2009). «Якорное моделирование». Материалы 28-й Международной конференции по концептуальному моделированию . скорая помощь '09. Грамаду, Бразилия: Springer-Verlag: 234–250. ISBN  978-3-642-04839-5 .
  6. ^ Ларс Рённбек. «Якорная модельная академия» . Промо-сайт . Проверено 20 мая 2017 г.
  7. ^ «Якорное моделирование» . Блог Ганса . Проверено 15 марта 2023 г.
  8. ^ Ларс Рённбек; Ганс Хультгрен (2013). «Сравнение моделирования привязки с моделированием хранилища данных» (PDF) .

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 865582c0f461c0d72af0a714e620cbf2__1711524660
URL1:https://arc.ask3.ru/arc/aa/86/f2/865582c0f461c0d72af0a714e620cbf2.html
Заголовок, (Title) документа по адресу, URL1:
Anchor modeling - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)