Модель данных

Материал из wikixw
Перейти к навигации Перейти к поиску

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

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

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

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

Обзор

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

Роль моделей данных

Основной целью моделей данных является поддержка развития информационных систем предоставляя определение и формат данных. Согласно West and Fowler (1999) "если это делается последовательно в разных системах, то совместимость данных может быть достигнута. Если для хранения данных и доступа к ним используются одни и те же структуры данных, то данные могут совместно использоваться различными приложениями. Результаты этого указаны выше. Тем не менее, системы и интерфейсы часто стоят дороже, чем они должны, для создания, эксплуатации и обслуживания. Они также могут ограничивать бизнес, а не поддерживать его. Основная причина заключается в том, что качество моделей данных, реализованных в системах и интерфейсах, оставляет желать лучшего".

  • "Бизнес-правила, специфичные для того, как все делается в определенном месте, часто фиксируются в структуре модели данных. Это означает, что небольшие изменения в способах ведения бизнеса приводят к большим изменениям в компьютерных системах и интерфейсах".
  • "Типы сущностей часто не идентифицируются или неправильно идентифицируются. Это может привести к репликации данных, структуры данных и функциональности вместе с сопутствующими затратами на это дублирование при разработке и обслуживании".
  • "Модели данных для разных систем произвольно различны. В результате между системами, совместно использующими данные, требуются сложные интерфейсы. Эти интерфейсы могут составлять от 25-70% стоимости существующих систем".
  • "Данные не могут быть переданы в электронном виде клиентам и поставщикам, поскольку структура и значение данных не стандартизированы. Например, проектно-конструкторские данные и чертежи технологической установки до сих пор иногда обмениваются на бумаге".

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

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

Три перспективы

Экземпляр модели данных может быть одним из трех видов согласно ANSI в 1975: [9]

  • Концептуальная модель данных: описывает семантику области, являющейся областью действия модели. Например, это может быть модель области интересов организации или отрасли. Он состоит из классов сущностей, представляющих виды вещей, имеющих значение в области, и утверждений отношений об ассоциациях между парами классов сущностей. Концептуальная схема определяет типы фактов или предложений, которые могут быть выражены с помощью модели. В этом смысле он определяет допустимые выражения на искусственном "языке" с областью действия, ограниченной областью действия модели.
   Логическая модель данных: описывает семантику, представленную конкретной технологией обработки данных. Он состоит, среди прочего, из описаний таблиц и столбцов, объектно-ориентированных классов и тегов XML.
   Физическая модель данных: описывает физические средства хранения данных. Это касается разделов, процессоров, табличных пространств и тому подобного.

Значение этого подхода, согласно ANSI, заключается в том, что он позволяет трем перспективам быть относительно независимыми друг от друга. Технология хранения данных может изменяться, не затрагивая ни логическую, ни концептуальную модель. Структура таблицы / столбца может изменяться без (обязательно) влияния на концептуальную модель. В каждом случае, конечно, структуры должны оставаться совместимыми с другой моделью. Структура таблицы / столбца может отличаться от прямого перевода классов сущностей и атрибутов, но в конечном итоге она должна выполнять задачи концептуальной структуры классов сущностей. На ранних этапах многих проектов разработки программного обеспечения особое внимание уделяется разработке концептуальной модели данных . Такая конструкция может быть детализирована в логическую модель данных . На более поздних стадиях эта модель может быть преобразована в физическую модель данных . Однако можно также реализовать концептуальную модель напрямую. История

Одна из самых ранних новаторских работ в области моделирования информационных систем была выполнена Young and Kent (1958), ВОЗ высказалась за "точный и абстрактный способ определения информационных и временных характеристик задачи обработки данных". Они хотели создать " нотацию, которая должна позволить аналитику организовать проблему вокруг любой части оборудования ". Их работа была первой попыткой создать абстрактную спецификацию и инвариантную основу для проектирования различных альтернативных реализаций с использованием различных аппаратных компонентов. Следующий шаг в моделировании IS был сделан CODASYL, в 1959 году был создан консорциум ИТ-индустрии, который, по сути, нацелен на то же, что и Young и Kent: разработку "надлежащей структуры для машинного независимого языка определения проблем, на системном уровне обработки данных". Это привело к развитию специфической информационной алгебры .

В 1960-х годах моделирование данных приобрело большее значение с появлением концепции управленческой информационной системы (МИС). По словам Леондеса (2002), "за это время информационная система предоставила данные и информацию для целей управления. Система баз данных первого поколения , названная интегрированным хранилищем данных (IDS), была разработана Чарльзом Бахманом в General Electric. За это время были предложены две известные модели баз данных-сетевая модель данных и иерархическая модель данных".[12] к концу 1960-х, Эдгар Ф. Кодд разработал теории организации данных и предложил реляционную модель управления базами данных, основанную на логике предикатов первого порядка .[13]

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

В 1970-х годах Г. М. Нейссен разработал метод анализа информации на естественном языке (NIAM) и разработал его в 1980-х годах в сотрудничестве с Терри Халпином в объектно-ролевое моделирование (ORM). Тем не менее, именно Диссертация Терри Халпина 1989 года создала формальную основу, на которой основано объектно-ролевое моделирование.

Билл Кент, в своей книге "данные и реальность"1978 года [14] сравнил модель данных с картой территории, подчеркнув, что в реальном мире" автомагистрали не окрашены в красный цвет, реки не имеют линий графства, идущих посередине, и вы не можете видеть контурные линии на горе". В отличие от других исследователей, которые пытались создать математически чистые и элегантные модели, Кент подчеркивал существенную беспорядочность реального мира и задачу моделиста данных создать порядок из хаоса без чрезмерного искажения истины.

В 1980-х годах, по словам Яна л. Харрингтона (2000), "развитие объектно-ориентированной парадигмы привело к фундаментальным изменениям в том, как мы смотрим на данные и процедуры, которые работают с данными. Традиционно данные и процедуры хранятся отдельно: данные и их взаимосвязь в базе данных, процедуры в прикладной программе. Однако объектная ориентация объединила процедуру сущности с ее данными." Типы моделей данных Модель базы Главная статья: модель базы данных

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

Было предложено несколько таких моделей. Общие модели включают:

Плоская модель

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

Иерархическая модель

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

Сетевая модель

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

Реляционная модель

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

Объектно-реляционная модель

  • Аналогично модели реляционной базы данных, но объекты, классы и наследование поддерживаются непосредственно в схемах баз данных и на языке запросов.

Объектно-ролевое моделирование

  • Метод моделирования данных, который был определен как "без атрибутов"и" основанный на фактах". Результатом является верифицируемо правильная система, из которой могут быть получены другие общие артефакты, такие как ERD, UML и семантические модели. Связи между объектами данных описываются во время процедуры проектирования базы данных, так что нормализация является неизбежным результатом процесса.

Звездная схема

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