【问题标题】:Elasticsearch solo vs Couchbase+ElasticsearchElasticsearch 独奏 vs Couchbase+Elasticsearch
【发布时间】:2016-02-15 16:56:13
【问题描述】:

让我描述一下这个问题。现在我正处于架构变化的阶段。我曾经使用 Elasticsearch 作为聚合和搜索工具,但现在我正在考虑将它用作主数据库。我读到不建议将 Elasticsearch 用作主数据库,仅用作索引。因此,我阅读了有关将其与 Couchbase 连接的演示文稿:

https://2013.nosql-matters.org/bcn/wp-content/uploads/2013/12/nosql13-bcn-couchbase-elasticsearch-jeroen-reijn.pdf

我下载并安装了用于与 Elasticsearch 集成的 Couchbase 和插件

https://github.com/couchbaselabs/elasticsearch-transport-couchbase

我不相信这个解决方案。首先,Elasticsearch 中的聚合速度更快。其次,Elasticsearch 支持 histogram、geopoints、全文搜索等多种方式,所以保留 Couchbase 的唯一理由似乎是不以 Elasticsearch 作为主 DB。

所以我的问题是关于在我的案例中将 Elasticsearch 与 Couchbase 集成的好处?

【问题讨论】:

    标签: elasticsearch bigdata couchbase


    【解决方案1】:

    我使用 ES 作为数据库已经有几年了,从来没有遇到过问题,而我也尝试过 MongoDB,但有很多问题!

    备份数据总是好的,在您的情况下使用“Couchbase”,但不是必需的。你可以每天创建 ES 快照,这就够了。

    要考虑的一点是 ES 是“接近实时的”,这意味着数据在编辑后的几次(毫秒)后可用。

    ES 速度快、易于设置且扩展性非常好。 HTTP 协议是使用任何语言进行通信的最佳方式。

    【讨论】:

    【解决方案2】:

    使用 couchbase 插件将允许 Couchbase 中数据的更改自动(重新)索引到 Elasticsearch 中。但是,您可能想查看 Couchbase 可能施加的模式/映射是否适合您的查询。一旦数据在 Elasticsearch 中,您仍然可以直接使用 Elasticsearch 查询来查询它,以执行搜索或聚合等操作。

    使用 Couchbase 的一个好处可能是它允许跨数据中心复制(使用多个 elasticsearch 集群),而通常不建议跨多个数据中心使用 Elasticsearch。

    【讨论】:

      【解决方案3】:

      到目前为止,我在使用 elasticsearch 作为主数据存储时遇到的唯一重要问题是索引新文档时的索引延迟。 Elasticsearch 是一个“近”实时搜索引擎...“近”限定词是必要的,因为在您索引文档之后,在搜索过程中找到它之前最多有 1 秒的延迟。

      这里是弹性搜索指南相关部分的链接:

      Near real-time search in elasticsearch

      这是我构建的 Web 应用程序中的一个问题,该应用程序包含一个列出用户的页面。我的场景是管理员单击用户列表页面上的“新用户”按钮,然后他被带到另一个页面以创建用户。管理员保存用户文档时,重定向到列表页面,但是由于elasticsearch的索引延迟,新创建的用户没有显示出来。

      弹性搜索指南说您可以手动刷新索引,但说不要在生产中这样做。

      ...不要在每次为生产中的文档编制索引时都进行手动刷新;它会损害你的表现。相反,您的应用程序需要了解 Elasticsearch 的近实时特性并考虑到这一点。

      我最终还是刷新了索引,因为在我的应用中创建新用户的情况非常罕见,但这不是一个很好的解决方案。

      几个月前我发布了一个问题,询问其他人如何解决这个问题:

      How to deal with Elasticsearch index delay

      这个问题的答案有一个我喜欢的建议。基本上,作者建议使用您提交的数据手动将记录插入到列表中,而不是等待服务器返回。只要您不依赖服务器生成的字段,这应该可以工作。

      但最终,您不应该在使用 Couchbase 之类的数据库时遇到此问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-09-12
        • 2023-03-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-05-14
        • 1970-01-01
        相关资源
        最近更新 更多