Есть хитроорганизованный объект, который содержит в себе коллекции которые содержат объекты которые содержат ссылки на него и т.п. в общем мрак (точнее объектный граф).
объект маппится на таблицы субд (подобно jpa но более низкоуровневый вариант)
прилетает измененная версия этого объекта, изменения любые:
- изменение значений поля
- удаление\добавление дочерних элементов (из коллекций)
Между оригиналом и измененной версией вычисляется разность и делаются выводы (ну или генерятся sql запросы)
Это все весело шуршит и работает, но, нужно найти теорию по этому делу, так сказать для взгляда с иной стороны.