我要实现自动完成超过500,000名以后可能增加至超过400万个名字。
后端是使用Spring一个Java REST Web服务调用。我应该使用的MongoDB,Redis的或Elasticsearch的存储和查询/搜索的名字吗?
这是一个非常重要的搜索使用情况和MongoDB和Redis的是基于密钥的查找非常好,并且不使用的搜索目的,而Elasticsearch是一个分布式搜索引擎,专门针对这种用例构建的。
选择系统之前,你应该知道你的特点的内部工作原理,并考虑下面选择它。
Elasticsearch索引的令牌匹配(可以很容易地定制,以适应业务需求)的倒排索引文件和作品,因此超级快速的搜索。Redis的和MongoDB没有在内部具有这种结构,不应该被用于该用例,你不应该有任何疑问选择Elasticsearch在这些实施自动完成。
由于是自动完成的最重要的特征之一,有一个优秀的博客,你应该看的懂的Elasticsearcg及其权衡提供了不同的方法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句