清除旧数据的能力
Ability to purge old data
是否可以清除 Javers 中的历史数据?
假设我没有兴趣保留任何超过一年(一个月等)的审计数据。
我在 Javers 中找不到任何类似的 API,但至少理论上有可能从 SQL 存储或 Mongo 数据库中手动删除旧记录吗? Javers API 会继续以可预测的方式工作吗?
JaVers 中没有此类功能,但您可以使用数据库脚本清除数据。我没有测试它,但我认为不会发生任何不好的事情。
应按时间顺序删除提交。在 SQL 存储库中,提交保存在三个表中,因此:
delete from jv_commit_property where commit_fk < x;
delete from jv_snapshot where commit_fk < x;
delete from jv_commit where commit_pk < x;
我发现对于 MongoDB 您可以删除 jv_snapshots 集合中的文档,但是您必须确保对于 each globalId_key,版本号最低的是INITIAL类型。否则,当尝试读取此 golbalId_key.
的快照时,javers 将失败并出现异常
是否可以清除 Javers 中的历史数据?
假设我没有兴趣保留任何超过一年(一个月等)的审计数据。
我在 Javers 中找不到任何类似的 API,但至少理论上有可能从 SQL 存储或 Mongo 数据库中手动删除旧记录吗? Javers API 会继续以可预测的方式工作吗?
JaVers 中没有此类功能,但您可以使用数据库脚本清除数据。我没有测试它,但我认为不会发生任何不好的事情。 应按时间顺序删除提交。在 SQL 存储库中,提交保存在三个表中,因此:
delete from jv_commit_property where commit_fk < x;
delete from jv_snapshot where commit_fk < x;
delete from jv_commit where commit_pk < x;
我发现对于 MongoDB 您可以删除 jv_snapshots 集合中的文档,但是您必须确保对于 each globalId_key,版本号最低的是INITIAL类型。否则,当尝试读取此 golbalId_key.
的快照时,javers 将失败并出现异常