Нормализация на простом английском - PullRequest
35 голосов
/ 25 февраля 2010

Я понимаю концепцию нормализации базы данных, но мне всегда трудно объяснить ее простым английским языком - особенно на собеседовании. Я прочитал пост wikipedia , но мне все еще трудно объяснить эту идею не-разработчикам. «Проектирование базы данных таким образом, чтобы не получать дублированные данные» - это первое, что приходит на ум.

У кого-нибудь есть хороший способ объяснить концепцию нормализации базы данных простым языком? И какие хорошие примеры показывают разницу между первой, второй и третьей нормальными формами?

Скажем, вы идете на собеседование, и человек спрашивает: Объясните концепцию нормализации и как будет разрабатываться нормализованная база данных. Какие ключевые моменты ищут интервьюеры?

Ответы [ 11 ]

0 голосов
/ 23 апреля 2010

+ 1 за аналогию разговора с вашей женой.Я нахожу, что разговору с кем-то, у кого нет технического ума, нужна легкость в разговоре такого типа.

, но ...

Чтобы добавить к этому разговору, есть другая сторона медалиможет быть важно, когда во время собеседования).

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

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

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

...