Versiones de objetos Java MongoDB

Necesito realizar versiones en gráficos de objetos Java (simples) almacenados en una base de datos orientada a documentos (MongoDB). Para bases de datos relacionales e Hibernate, descubríEnvers Y estoy muy sorprendido por las posibilidades. ¿Hay algo similar que pueda usarse con los documentos de datos de Spring?

encontréesta publicación describiendo los pensamientos que tenía (y más ...) sobre el almacenamiento de las versiones del objeto, y mi implementación actual funciona de manera similar, ya que almacena copias de los objetos en una colección de historia separada con una marca de tiempo, pero me gustaría mejorar esto para guardar Espacio de almacenamiento. Por lo tanto, creo que necesito implementar una operación "diff" en los árboles de objetos y una operación "fusionar" para reconstruir objetos antiguos. ¿Hay bibliotecas por ahí ayudando con esto?

Editar: ¡Cualquier experiencia con MongoDB y versiones muy apreciadas! Lo más probable es que no haya una solución de Spring Data.