[Анализ и проектирование систем, SQL, Проектирование и рефакторинг] Опрос. Денормализация или нет?

Автор Сообщение
news_bot ®

Стаж: 6 лет 9 месяцев
Сообщений: 27286

Создавать темы news_bot ® написал(а)
29-Ноя-2020 19:30

Недавно мы с коллегой по профессии обсуждали в Интернете архитектуру некоторой системы, и у нас возник спор по одному вопросу.
Имеется склад, где хранятся разные материалы, имеются документы прихода и расхода материалов, в документах есть записи с информацией "материал, количество", связь один-ко-многим. В базе данных есть таблица с информацией о текущем наличии материалов на складе, есть таблица для документов и таблица для их позиций. Назовем их "current_stocks", "documents", "document_positions".
Считать ли таблицу "current_stocks" денормализацией данных?
Аргумент коллеги заключается в том, что данные в "current_stocks" можно рассчитать по документам за все время существования системы, поэтому это денормализация.
Мой аргумент в том, что любое текущее состояние можно рассчитать по истории изменений, поэтому это не денормализация. Иначе в термине "нормализация" не было бы смысла. Он относится именно к моделированию текущего состояния. Это разные модели, "current_stocks" моделирует состояние склада, "document_positions" строки текста в документах.
===========
Источник:
habr.com
===========

Похожие новости: Теги для поиска: #_analiz_i_proektirovanie_sistem (Анализ и проектирование систем), #_sql, #_proektirovanie_i_refaktoring (Проектирование и рефакторинг), #_normalizatsija (нормализация), #_denormalizatsija (денормализация), #_analiz_i_proektirovanie_sistem (
Анализ и проектирование систем
)
, #_sql, #_proektirovanie_i_refaktoring (
Проектирование и рефакторинг
)
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 22-Ноя 21:13
Часовой пояс: UTC + 5