最近,我们完成了一项任务,将以前存储在eXist-db中的1000个静态PDF移动到Amazon S3中的存储中。现在,所有这些文件都是通过指向Amazon S3而不是数据库的应用程序检索的,该数据库用于构建要检索的信息。
因此,我们从数据库中删除了所有这些文件。我们删除了占整个数据库大小约60%(可能接近80%)的文件。
因为实际的数据库每天都会复制到多个国家/地区,所以我们希望这样做可以大大减少所有数据库文件的大小。
没有变化。这是预期的吗?还是需要执行哪些步骤才能真正收回该空间?
我们尝试了,停止并启动了……我们还尝试了备份(现在为空的集合),并仅恢复那些认为会触发问题的集合。两者都不起作用。
是否有(任何)方法可以收回这些?我们实际上是否必须备份整个数据库并还原到干净的内容?
更新我
确定,查看两个几乎完全相同的安装的目录结构,除了PDF ...
删除了PDF的文件实际上比删除PDF的文件大10MB。 在检查/ fs目录中的PDF并消失后,总计已删除的PDF总数约为800MB。
因此,我们从数据库中删除了800MB(/ fs目录小了800MB)。但是整体大小增加了10MB。
上面的猜测是不正确的,因为整个目录大约是2.4GB,所以800MB不是60%,而是更小。
但是,我仍然希望,如果我从数据库中删除了800MB的数据,大小会有所减少,当然不会增加10MB。
更新II
因此,由于删除的集合没有内容,因此我创建了一个简单的XML文件,并将其放入每个集合中。我对这两个集合进行了备份,并对(现在)几乎为空的集合进行了还原。
那什么也没做。
因此,看来(猜测)只有整个数据库备份/还原才能执行任何操作。