我们的网站需要向全世界提供数据。这是我们存储的开源数据,我们希望将其公开。大约有 200 万条记录。
我们已经使用 Lucene 实现了对这些记录的搜索,这很好,但是我们希望显示单个记录(比如用户在搜索完成后点击它)并提供该记录的更多详细信息.
然而,这些更详细的信息并没有直接存储在索引中……存在类似多对多的关系,我们使用我们的关系数据库 (MySQL) 来提供此信息。
因此,就像一条记录属于一个类别一样,我们希望用户单击该类别并显示该类别中的其余记录(更多这样的关联)。
我的问题是,我们是否也应该使用 Lucene 来存储此类信息并通过简单的搜索 (category:apples
) 检索它,或者 MySQL 是否应该继续执行此合乎逻辑的工作?我应该只在搜索部分使用 Lucene 吗?
编辑
我想指出的是,我们所有的记录都是静态的……大约每周对这些数据进行一次更改。
最佳答案
Lucene 的优势在于可以快速构建一组文档的索引并允许您在其中进行搜索。如果这个“详细信息”不需要被索引或搜索过来,那么就不要将它存储在 Lucene 中。
Lucene 不是数据库,它是索引。
关于java - 我应该只将 Lucene 用于搜索吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4153213/