понедельник, 16 июля 2012 г.

Нормализация и денормализация данных, их назначение


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

Нормализация:

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

То есть, грубо говоря, нормализация — это удаление из базы данных избыточности.

Обычно избыточность удаляют с помощью приведения базы данных к нормальным формам (характеризует базу данных с точки зрения избыточности). Выделяют несколько различных нормальных форм (до восьми), но — обычно хватает трех нормальных форм.

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

Нормализация необходима для защиты БД от ошибок обновления, удаления данных и их избыточности.


Денормализация:

Денормализация — это процесс, обратный нормализации. То есть — введение избыточности данных в БД.

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

Денормализация — это не ошибка программиста, это — специально сделанный процесс (именно денормализация). Иногда и я его применяю. А вы?


Вот такое объяснение нормализации и денормализации, как я понимаю. Если я не прав — готов обсудить в комментариях. А пока — пойду немного расслаблюсь (а то статья сумбурная получилась) — поиграю чуть-чуть в мини игры чтобы мозг не напрягать крупными игрушками. На это сайте вы найдете много различных игр, так что и для себя найдете.

Комментариев нет:

Отправить комментарий