제이의 블로그

Логическое моделирование данных

  • Язык написания: Корейский
  • Страна: Все страныcountry-flag
  • ИТ

Создано: 2024-04-09

Создано: 2024-04-09 12:21

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

Основу процесса составляет преобразование ERD, являющегося результатом концептуального моделирования данных, в соответствии с парадигмой реляционных баз данных на основе правил сопоставления (Mapping Rule).

Правила сопоставления

  • Прямоугольные сущности преобразуются в таблицы.
  • Круглые атрибуты преобразуются в столбцы.
  • Связи преобразуются в PK или FK.

В первую очередь удобнее всего представлять таблицы без FK.

Связи

  • В зависимости от кардинальности и опциональности представляется взаимосвязь между таблицами.
  • Представление начинается с наиболее простой связи 1:1, затем 1:N и, наконец, N:M.

Обработка связи 1:1

В случае связи 1:1 проверяется зависимость между двумя таблицами и устанавливается FK.

Можно рассматривать как родительскую и дочернюю таблицу.

Обработка связи 1:N

В связи 1:N, поскольку 1 ссылается на N, FK устанавливается в N.

Обработка связи N:M

Для обработки связи N:M в реляционной базе данных создается промежуточная таблица (также называемая таблицей сопоставления или связующей таблицей).

В этом случае важно представить кардинальность и опциональность обеих таблиц, на которые ссылается таблица сопоставления.

Нормализация (Normalization)

Логическое моделирование данных

Wikipedia - Нормализация базы данных

Это процесс преобразования необработанных таблиц в таблицы, подходящие для реляционных баз данных.

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

Нормализация должна выполняться поэтапно, по одному этапу за раз.

Первая нормальная форма (1st Normal Form, 1NF)

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

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

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

Вторая нормальная форма (2nd Normal Form, 2NF)

  • Должна быть выполнена первая нормальная форма.
  • Необходимо устранить частичные зависимости.

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

Третья нормальная форма (3rd Normal Form, 3NF)

  • Должна быть выполнена первая нормальная форма.
  • Должна быть выполнена вторая нормальная форма.
  • Необходимо устранить транзитивные зависимости.

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

Комментарии0

[Дневник создания многоязычного веб-сайта - 41-й день] Что такое настройка схемы?Запись 41-го дня создания многоязычного веб-сайта с использованием RankMath. Подробно описывается способ настройки схемы, которая структурирует данные веб-сайта и помогает в оптимизации для поисковых систем (SEO).
aghkuh1
aghkuh1
aghkuh1
aghkuh1

February 6, 2025

[Для неспециалистов, выживание разработчика] 14. Краткое изложение часто задаваемых вопросов на техническом собеседовании для начинающих разработчиковМы обобщили и систематизировали часто задаваемые технические вопросы на собеседовании для начинающих разработчиков (области памяти, структуры данных, базы данных и т. д.). Надеемся, что это поможет вам подготовиться к собеседованию по разработке.
투잡뛰는 개발 노동자
투잡뛰는 개발 노동자
투잡뛰는 개발 노동자
투잡뛰는 개발 노동자

April 3, 2024

Что такое маркировка данных? Типы, преимущества и недостаткиМаркировка данных — это процесс присвоения тегов данным, чтобы искусственный интеллект мог их понять. Он используется в различных областях, например, для различения собак и кошек, и помогает повысить производительность моделей.
세상 모든 정보
세상 모든 정보
세상 모든 정보
세상 모든 정보

March 29, 2024

[Эффективный Java] Элемент 6. Избегайте ненужного создания объектовНенужное создание объектов приводит к расточительности памяти, поэтому для объектов, таких как строки или логические значения, лучше использовать литералы или статические фабричные методы.
제이온
제이온
제이온
제이온

April 28, 2024

[Объекты] Глава 1. Объекты, проектированиеВ данной статье мы рассмотрим важность и концепции объектно-ориентированного проектирования в разработке программного обеспечения, а также подчеркнем необходимость объектно-ориентированного проектирования на примере приложения для продажи билетов.
제이온
제이온
제이온
제이온

April 28, 2024