我有REST服务,它使用来自数据库(mongodb)的数据。我想添加apache lucene库来实现全文搜索。什么时候在lucene中建立索引
我从来没有使用Lucene的之前,所以试图了解它是如何工作进行检查教程,但还是有一点是清楚对我来说:
在做数据库数据的索引?我有DB,一些数据被添加和删除的次数更多,有些更新很少。我可以通过所有最新的数据来完成搜索请求。
我应该更新每个数据更新的索引,否则它会自动完成,并且足以索引一次?如果应该进行重新索引,那么多长时间一次?
我有REST服务,它使用来自数据库(mongodb)的数据。我想添加apache lucene库来实现全文搜索。什么时候在lucene中建立索引
我从来没有使用Lucene的之前,所以试图了解它是如何工作进行检查教程,但还是有一点是清楚对我来说:
在做数据库数据的索引?我有DB,一些数据被添加和删除的次数更多,有些更新很少。我可以通过所有最新的数据来完成搜索请求。
我应该更新每个数据更新的索引,否则它会自动完成,并且足以索引一次?如果应该进行重新索引,那么多长时间一次?
如果您想要搜索实时数据,那么您应该在数据库中执行add, update and delete
数据的同时在lucene索引中输入add, update and delete
数据。
对于indexing
这将完全正常,但不会对您的每个操作的索引为optimize
。
您可以在一天或根据您的使用优化您的索引一次。优化索引将帮助您更快地搜索结果。
请参考这个tutorial刚刚从lucene的基本应用开始。
您可以尝试MongoDBs自己的功能(见Mongo Docs)。这可能不是灵活性,并不像Lucene那么强大,但它是免费的。
你真的问了一个有问题的问题:“什么时候编制索引?”。答案取决于你的要求。但是,您可以查看this post以查看它在技术上是如何完成的:脱机,即您在索引中将总是或多或少地落后。
谢谢你的解释 – Bublik
令人惊叹!谢谢 – Ichirichi