使用我们的应用程序(内部使用 Jackrabbit 1.6.4 来存储文档)几个月后,客户的数据库 (Oracle) 的 VERSION_BUNDLE
表中已经有超过 600 万行 -我们的一些数据正在对同一文档的多个实例使用 Jackrabbit 版本控制功能。我们预计 future 几个月/几年该应用程序的使用量会增加,因此也预计 Jackrabbit 中存储的数据会加速增加。
我们的一些操作人员担心此表(以及 DEFAULT_BUNDLE
表)中的记录数量。有没有办法安全地从这些表中清除一些数据?我想简单地通过 Jackrabbit API 删除文档不会做到这一点,对吗?
我们需要担心表中的记录数吗?其他人在他们的 Jackrabbit 安装中看到了多少数据?
最佳答案
为什么不拥有同一文档的多个实例,然后再引用它呢?我们通过将节点的路径/标识符存储为另一个节点的属性来做到这一点,以便我们可以轻松查找它。
要删除不需要的版本,您可以使用VersionHistory.removeVersion()
。
我不知道 jackrabbit 1.6,但在 2.4 中删除节点/版本似乎会从版本/默认表中删除相应的条目。我想我不想手动删除条目!
关于java - 清除 Jackrabbit 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11009836/