Lucene.Net是否适合频繁更改内容的搜索引擎?

Lucene.Net是否适合频繁更改内容的搜索引擎?

或者更具体地说,任何人都可以就如何更新lucene.net索引提供主观意见.搜索频繁变化的内容的任何其他方法将是巨大的.

我们正在开发一个论坛.论坛帖子将被频繁添加到论坛存储库.我们认为我们需要将这些帖子快速添加到lucene索引(<0.5s)才能搜索.最初,存储库中约有5E6个帖子.假设在非异国情调的服务器上运行的搜索引擎(我知道这很模糊!). 关于寻找频繁变化的内容的问题的其他建议赞赏.论坛帖子需要在可变数量的命名标签上进行搜索(标记名称和值必须匹配).基于SQL的方法(基于Toxi模式)并没有给我们提供我们想要的性能.

out论坛(http://episteme.arstechnica.com)使用Lucene作为搜索后端,所以它是可行的.帖子没有像你想要的那样快速索引,但是我们可以通过加强索引硬件和使用更智能的缓存策略来解决这个问题.

这个问题的一般答案是:它取决于你的写/更新模式.论坛相对容易,因为大多数内容是新的,现有的内容更新更少.

对于论坛,我建议有一个“归档”索引和一个“活”索引.现场指数可能包括最后一天,一周,一年的帖子,而归档索引将包含大量的帖子,可能再也不会被触动.所以当有人创建一个新帖子时,它将最初在实时索引中编入索引.稍后,一些批处理工作将清除实时索引,并将所有内容重新归档到存档中.

Lucene非常擅长跨多个索引进行查询.你应该滥用这种能力. 🙂

翻译自:https://stackoverflow.com/questions/272427/is-lucene-net-suitable-as-the-search-engine-for-frequently-changing-content

转载注明原文:Lucene.Net是否适合频繁更改内容的搜索引擎?