使用 couchdb 和 lucene 自动完成
Posted
技术标签:
【中文标题】使用 couchdb 和 lucene 自动完成【英文标题】:Autocomplete with couchdb and lucene 【发布时间】:2014-06-11 18:53:08 【问题描述】:我使用 couchdb 来存储我的应用程序的数据,并使用 couchdb-lucene (https://github.com/rnewson/couchdb-lucene) 来实现对这些数据的搜索功能。
搜索没问题,我可以将 couchdb 文档索引到 lucene 中进行搜索。问题在于,现在我想实现自动完成功能以获得更好的用户体验,我查看了 couchdb-lucene 文档,但我看不到如何实现这一点。
我的问题:
是否可以仅使用 couchdb-lucene 实现自动补全? 转向像 solr 或 elasticsearch 这样最“完整”的解决方案会更好吗?【问题讨论】:
【参考方案1】:听起来你所需要的只是一个前缀搜索,而 Lucene 应该提供它。但是您甚至可以使用 CouchDB Views 来做到这一点。
【讨论】:
【参考方案2】:对于自动完成,您需要对您的数据实施前缀搜索。对于自动完成,搜索必须非常快。问题随着数据量的增加而增长。您可以使用 redis 等内存解决方案来实现快速自动完成。使用 Redis 演示自动完成 - http://autocomplete.redis.io/
如果您不想自己实现自动完成,您也可以使用任何第三方服务/API。
【讨论】:
以上是关于使用 couchdb 和 lucene 自动完成的主要内容,如果未能解决你的问题,请参考以下文章