Что объединяет повторяющиеся наборы информации о строках в новые сущности, вызываемые при нормализации базы данных?

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

Представьте, что у вас есть следующие отношения, которые связывают продукты с цветами. Обратите внимание, что продукт 1 и продукт 2 используют одинаковый набор цветов (синий и зеленый).

Product_Color                         Color
+-------------+-------------+     +-------------+-------------+
| Product*    | Color*      |     | ColorId*    | Name        |
+-------------+-------------+     +-------------+-------------+
| 1           | 1           |     | 1           | Blue        |
| 1           | 2           |     | 2           | Green       |
| 2           | 1           |     +-------------+-------------+
| 2           | 2           |
+-------------+-------------+

Если я создаю два новых отношения, ColorSet и ColorSet_Color, я могу отобразить одну и ту же информацию, объединив 4 отношения.

Product_ColorSet:                 ColorSet_Color:             
+-------------+-------------+     +-------------+-------------+
| Product*    | ColorSetId* |     | ColorSetId* | ColorId*    |
+---------------------------+     +-------------+-------------+
| 1           | 1           |     | 1           | 1           |
| 2           | 1           |     | 1           | 2           |
+-------------+-------------+     +---------- --+-------------+

ColorSet:                         Color:
+-------------+                   +-------------+-------------+
| ColorSetId* |                   | ColorId*    | Name        |
+-------------+                   +-------------+-------------+
| 1           |                   | 1           | Blue        |
| 2           |                   | 2           | Green       |
+-------------+                   +----------[--+-------------+

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

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

Кроме того, кажется, что я мог бы сделать это произвольно для большинства организаций. Что меня удивляет, так это то, что Product_Color и Color уже находятся в 6-й нормальной форме, когда мы начали упражнение (верно?).

Ответы на вопрос(1)

Ваш ответ на вопрос