我们有RDBMS,它也运行我们的自动完成查询。我打算通过将自动完成查询重定向到MongoDB来减轻RDBMS的负担。我的另一个选择是使用Memcache。 SQL查询的性质是“其中的lastName类似于'abc%'。我可以使用Like子句查询Memcache吗?而且,我的数据也会经常更新,因此如果我使用Memcache,它需要相应地保持更新。任何人都可以建议是否Memcache还是其他任何缓存比NoSQL更好?在这种情况下使用缓存有什么优势(如果有),哪种是首选方法?
答案 0 :(得分:1)
我们有同样的问题。 Memcache不是执行此操作的正确工具,因为Memcache上的数据不是永久性的。而且排列的数量最终变得如此之大,以至于无法将如此多的数据存储到Memcache。
我们正在使用Elasticsearch处理自动建议查询。非常快。它在5毫秒内为我们提供了大多数结果。
https://www.elastic.co/guide/en/elasticsearch/reference/current/search-suggesters-completion.html
您可以引用此链接。
如果您有任何疑问,请告诉我。