Добрый день,Лучшая практика для версий объектов?
В настоящее время я нахожусь на ранней стадии нового проекта, написанного на .Net, и используя Entity Framework для сохранения/хранения данных. Одной из необходимых функций является возможность «версии» определенных типов моделей. Например. одна модель - это «Требование», которое будет иметь n «Версии требований», в основном имея способ вернуться в историю/жизненный цикл этого конкретного экземпляра «Требование». Единственное, что должно быть статичным во всех версиях, это «ID», все остальное абсолютно изменчиво в течение всего срока действия требования.
Теперь Q, должен ли я «просто» создать соотношение 1: n между Требованием >> ТребованиеVersion? Другие функции - это возможность полностью восстановить старые состояния, чтобы быть текущими/последними, должна быть возможность иметь незначительную и значимую версию (изменения) и т. Д., И, наконец, не последнюю роль в создании базовой линии набор требований с последней версией, чтобы вернуться к этой конкретной базовой линии в более поздний момент времени и отобразить все включенные требования.
Это должно масштабироваться до нескольких миллионов ТРЕБОВАНИЕ Records, каждый из которых имеет пару тысяч пересмотров .. это особенно поэтому я прошу .. масштабирования аспект простой 1: п отношения и т.д.
Кто-нибудь сделал что-то похожее и, возможно, какие-то предложения/лучшие практики и т. Д., Касающиеся управления версиями/baselining и т. Д.?
Приветствия & спасибо, -Jörg