Нормализация данных в реляционных базах данных | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 30 ноября, печатный экземпляр отправим 4 декабря.

Опубликовать статью в журнале

Автор:

Научный руководитель:

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №30 (529) июль 2024 г.

Дата публикации: 21.07.2024

Статья просмотрена: 10 раз

Библиографическое описание:

Шошина, Е. А. Нормализация данных в реляционных базах данных / Е. А. Шошина. — Текст : непосредственный // Молодой ученый. — 2024. — № 30 (529). — С. 36-39. — URL: https://moluch.ru/archive/529/116791/ (дата обращения: 16.11.2024).



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

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

Нормализация данных — это процесс организации полей и таблиц в реляционной базе данных для уменьшения избыточности и зависимости. Этот процесс был разработан Э. Ф. Коддом и в общем случае включает пять нормальных форм, каждая из которых добавляет требования к структуре БД.

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

В базах данных транзитивной зависимостью (ТЗ) называют связь между атрибутами (столбцами с данными) в одной таблице, которая вызывает функциональную зависимость. Как правило, ТЗ включает в себя минимум три атрибута, которые также являются функционально зависимыми. [1]

Первая нормальная форма (1NF):

– каждое поле таблицы содержит неделимое значение;

– ни одно ключевое поле не пусто;

– отсутствуют повторяющиеся группы полей или сами поля;

– строки таблицы не упорядочены.

Пример таблицы в первой нормальной форме представлен в таблице 1.

Таблица 1

Номер полиса

Вид страхования

Фамилия клиента

Возраст клиента

Сумма страховки

1

Автомобильное страхование

Смолин

23

50000

2

Медицинское страхование

Григорян

54

100000

3

Домашнее страхование

Павлов

19

200000

Неделимость значений: каждое поле содержит атомарное значение, например, «Вид страхования», «Фамилия клиента», «Возраст клиента» и «Сумма страховки» не содержат множественных значений.

Заполненность ключевых полей: ключевое поле «Номер полиса» не может быть пустым для любой строки.

Отсутствие повторяющихся групп полей: каждая строка содержит уникальный «Номер полиса».

Неупорядоченность строк: порядок строк в таблице не имеет значения.

Вторая нормальная форма (2NF):

– выполняются условия 1NF;

– первичный ключ однозначно определяет запись;

– все поля зависят от первичного ключа;

– первичный ключ не избыточен.

Пример таблиц в 2NF форме представлен в таблицах 2 и 3, оно подразумевает разделение на таблицы с информацией о полисах и клиентах.

Таблица 2

Номер полиса

Вид страхования

Сумма страховки

ID клиента

1

Автомобильное страхование

50000

1

2

Медицинское страхование

100000

2

3

Домашнее страхование

200000

3

Таблица 3

ID клиента

Фамилия клиента

Возраст клиента

1

Смолин

23

2

Григорян

54

3

Павлов

19

Условия 1NF выполнены: 2 и 3 уже находятся в первой форме.

Зависимость от первичного ключа: в таблице 2 «Вид страхования» и «Сумма страховки» зависят только от «Номера полиса», тогда как в таблице 3 «Фамилия клиента» и «Возраст клиента» зависят от «ID клиента».

Первичный ключ не избыточен: каждая таблица имеет четко определенный первичный ключ («Номер полиса» в таблице 2 и «ID клиента» в таблице 3), который однозначно идентифицирует записи.

Третья нормальная форма (3NF):

– выполняются условия 2NF;

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

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

Таблица 4

Вид страхования

Описание

Автомобильное страхование

Страхование транспортных средств

Медицинское страхование

Страхование здоровья и медицинских расходов

Домашнее страхование

Страхование недвижимости и имущества

Условия 2NF выполнены: таблица находится во второй нормальной форме.

Отсутствие транзитивных зависимостей: в таблице 4 отсутствуют зависимости между неключевыми атрибутами, то есть «Описание» видов страхования зависит только от «Вида страхования».

Нормальная форма Бойса — Кодда (также известная как усиленная версия 3NF) применяется, когда отношение имеет два или более потенциальных ключа. Таблица может находиться в НФБК, только если каждая нетривиальная функциональная зависимость имеет потенциальный ключ, который служит детерминантом. НФБК устраняет аномалии, которые могут возникнуть при наличии нескольких потенциальных ключей, каждый из которых может быть использован для идентификации записи. [2]

Четвертая нормальная форма (4NF):

– выполняются условия 3NF;

– отсутствуют многозначные зависимости между атрибутами и уникальными ключами.

Пример таблиц, приведенных в 4NF, представлен в таблицах 5 и 6.

Таблица 5

Номер полиса

Сумма страховки

ID клиента

ID страховой компании

1

50000

1

1

2

100000

2

2

3

200000

3

1

Таблица 6

ID страховой компании

Название

Адрес

1

ООО «Страховка-Авто»

ул. Ленина, 10

2

ЗАО «Медицинская защита»

пр. Победы, 5

Условия 3NF выполнены: таблицы находятся в третьей нормальной форме.

Отсутствие многозначных зависимостей: в таблице «ID страховой компании» является детерминантом для «Номера полиса», «ID клиента» и «ID подразделения», нет многозначных зависимостей между атрибутами.

Пятая нормальная форма (5NF):

– выполняются условия 4NF;

– отсутствуют сложные зависимые соединения.

Пример таблиц, приведенных в 5NF, представлен в таблицах 7 и 8.

Таблица 7

ID подразделения

Название

ID страховой компании

1

Отдел продаж

1

2

Отдел клиентов

1

3

Отдел убытков

2

Таблица 8

ID менеджера

Имя

ID подразделения

1

Смолин

1

2

Григорян

2

3

Павлов

3

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

Нормализация данных помогает минимизировать избыточность, устранить аномалии при изменениях и поддерживать целостность данных. Применение нормальных форм улучшает структуру базы данных, делая ее более гибкой и управляемой. Следование принципам позволяет создать эффективную и производительную систему управления базами данных. Первая нормальная форма требует, чтобы поля таблицы содержали неделимые значения и не было повторяющихся групп или полей. Вторая нормальная форма вводит требования, чтобы неключевые поля полностью зависели от первичного ключа. Третья нормальная форма исключает транзитивные зависимости между неключевыми полями. Нормальная форма Бойса-Кодда усиливает требования 3NF, гарантируя, что детерминантами всех нетривиальных функциональных зависимостей являются суперключи. Четвертая нормальная форма устраняет многозначные зависимости, а пятая нормальная форма исключает сложные зависимые соединения.

Литература:

  1. Агальцов, В. П. Базы данных: учебник: в 2 кн. Книга 1. Локальные базы данных / В. П. Агальцов. — Москва: ФОРУМ: ИНФРА-М, 2021. — 352 с.: ил. — (Высшее образование). — ISBN 978–5-8199–0377–3. — Текст: электронный. — URL: https://znanium.ru/catalog/product/1222075 (дата обращения: 17.07.2024). — Режим доступа: по подписке.
  2. Шустова, Л. И. Базы данных: учебник / Л. И. Шустова, О. В. Тараканов. — Москва: ИНФРА-М, 2023. — 304 с. + Доп. материалы [Электронный ресурс]. — (Высшее образование: Бакалавриат). — DOI 10.12737/11549. — ISBN 978–5-16–010485–0. — Текст: электронный. — URL: https://znanium.com/catalog/product/1986697 (дата обращения: 17.07.2024). — Режим доступа: по подписке.
Основные термины (генерируются автоматически): нормальная форма, таблица, первичный ключ, вид страхования, зависимость, страховая компания, автомобильное страхование, домашнее страхование, медицинское страхование, номер полиса.


Ключевые слова

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

Похожие статьи

Метод Apriori для поиска связей между переменными в большой базе данных

В статье автором рассматривается метод Apriori для поиска ассоциативных правил между переменными в большой базе данных

Использование функциональных зависимостей и нормализации при проектировании баз данных

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

ER-моделирование. Особенности семантического моделирования

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

Адаптивная система управления одноканальным объектом с запаздыванием на множестве состояний функционирования

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

Анализ существующих моделей управления семантическими данными

Статья посвящена анализу существующих моделей управления семантическими данными. В статье рассмотрены: теоретико-методологические основы моделей управления семантическими данными; выделены и проанализированы концепции основных моделей управления сема...

Сравнительный анализ методологий проектирования хранилищ данных

Цель данной статьи — сравнительный анализ методологий проектирования хранилищ данных. Формирование критериев сравнения. Описание архитектур, используемых в каждой методологии.

Применение нечеткой логики и методов визуализации графических решений при анализе показателей финансового рынка

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

Применение векторизации слов для нечеткого поиска

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

Метод желаемой логарифмической частотной характеристики для синтеза регулятора в системе управления

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

Формальное описание объектного и реляционного представлений предметной области

В данной статье производится построение формального описания объектного и реляционного представлений произвольной предметной области для реализации инструменты объектно-реляционного преобразования

Похожие статьи

Метод Apriori для поиска связей между переменными в большой базе данных

В статье автором рассматривается метод Apriori для поиска ассоциативных правил между переменными в большой базе данных

Использование функциональных зависимостей и нормализации при проектировании баз данных

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

ER-моделирование. Особенности семантического моделирования

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

Адаптивная система управления одноканальным объектом с запаздыванием на множестве состояний функционирования

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

Анализ существующих моделей управления семантическими данными

Статья посвящена анализу существующих моделей управления семантическими данными. В статье рассмотрены: теоретико-методологические основы моделей управления семантическими данными; выделены и проанализированы концепции основных моделей управления сема...

Сравнительный анализ методологий проектирования хранилищ данных

Цель данной статьи — сравнительный анализ методологий проектирования хранилищ данных. Формирование критериев сравнения. Описание архитектур, используемых в каждой методологии.

Применение нечеткой логики и методов визуализации графических решений при анализе показателей финансового рынка

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

Применение векторизации слов для нечеткого поиска

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

Метод желаемой логарифмической частотной характеристики для синтеза регулятора в системе управления

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

Формальное описание объектного и реляционного представлений предметной области

В данной статье производится построение формального описания объектного и реляционного представлений произвольной предметной области для реализации инструменты объектно-реляционного преобразования

Задать вопрос