【问题标题】:Memcache Vs MongoDB for auto-complete用于自动完成的 Memcache 与 MongoDB
【发布时间】:2019-02-05 05:18:42
【问题描述】:

我们有 RDBMS,它也运行我们的自动完成查询。我计划通过将自动完成查询重定向到 MongoDB 来减少 RDBMS 的负载。我的另一个选择是使用 Memcache。 SQL 查询的性质是“lastName like 'abc%'。我可以用 Like 子句查询 Memcache 吗?另外,我的数据也会经常更新,所以如果我使用 Memcache,它需要相应地保持更新。任何人都可以建议 Memcache或者任何其他缓存都比 NoSQL 更好?在这种情况下使用缓存有哪些优势(如果有的话),哪一种是首选方法?

【问题讨论】:

    标签: mongodb memcached


    【解决方案1】:

    我们遇到了同样的问题。 Memcache 不是执行此操作的正确工具,因为 Memcache 上的数据不是持久的。而且排列的数量最终会变得如此庞大,以至于将如此多的数据存储到 Memcache 是没有意义的。

    我们正在使用 elasticsearch 来处理自动建议查询。它非常快。它在 5 毫秒内为我们提供了大部分结果。

    https://www.elastic.co/guide/en/elasticsearch/reference/current/search-suggesters-completion.html

    你可以参考这个链接。

    如果您有任何问题,请告诉我。

    【讨论】:

    • 您是否在 Oracle 之上使用了 Elaticsearch?
    • 不,我们在 elasticsearch 本身中为自动建议创建了文档。 elasticsearch 中的数据将是 Oracle 数据库中数据的一个子集。所以我们将数据同步到 ES 并从那里运行查询。
    猜你喜欢
    • 1970-01-01
    • 2013-04-24
    • 1970-01-01
    • 2015-07-20
    • 1970-01-01
    • 2011-05-31
    • 1970-01-01
    • 2010-12-22
    • 2018-02-23
    相关资源
    最近更新 更多