Optimization lucene:优化数据库的空间需求?

Optimization lucene:优化数据库的空间需求?,optimization,lucene,Optimization,Lucene,据我所知,在Lucene中进行数据库优化时,有几种选择: 将整个项目优化为一个部分,占用空间至少2倍 优化为几个部分 是否删除已删除的条目-,而不更改段数 假设数据库未保存在盘片上(正在使用)。这些操作是否都有一定的空间限制 我注意到,Lucene 4.6.0不再记录expungeDeletes()——它被删除了吗?我来自Lucene 3.0.2/2011年12月,不过我愿意在某个时候升级到4.6。现在,为了支持分层合并策略,手动优化方法已被删除。你可能是Lucene的作者之一。简而言之,合

据我所知,在Lucene中进行数据库优化时,有几种选择:

  • 将整个项目优化为一个部分,占用空间至少2倍
  • 优化为几个部分
  • 是否删除已删除的条目-,而不更改段数
假设数据库未保存在盘片上(正在使用)。这些操作是否都有一定的空间限制


我注意到,Lucene 4.6.0不再记录
expungeDeletes()
——它被删除了吗?我来自Lucene 3.0.2/2011年12月,不过我愿意在某个时候升级到4.6。

现在,为了支持分层合并策略,手动优化方法已被删除。你可能是Lucene的作者之一。简而言之,合并将自动进行,因为人们相信算法(知道索引的内部状态)将比用户做得更好


p、 我认为你需要正确的命名法。Lucene中没有“数据库”这类东西(你可能指的是索引?

这是一个好的开始,但它没有解决那么多问题-我如何确保Lucene不会超过我有限的磁盘空间?此外,我在同一张光盘上有几个单独的索引,因此,如果它们现在被自动和随机地合并,那么我需要一种方法来确保它们在我的应用程序运行相同的重新索引期间不会这样做。与其期望Lucene适合给定的分区,不如期望它。甚至数据库也没有提供这种功能。最后但并非最不重要的一点是,磁盘很便宜(这些天你可以用100美元左右买到1Tb的磁盘,我打赌你的索引远小于1T)。感谢你没有阅读这个问题,其中特别提到没有使用盘片。好的,你让我了解了这一点!无论如何,我仍然认为边缘条件的优化(当磁盘几乎满时)太不可预测了,特别是当您运行多个独立索引时。我仍然无法理解为什么容量规划对您来说是不可接受的。可能是因为必须分配和保留每个索引的2×大小以供365年7月24日空着的空间是不合理的,而不是所有索引恰好都达到了优化点,并且正在积极地进行优化?