我最近读了几篇关于mongodb用于存储,elasticsearch用于索引/搜索的文章.但我觉得我错过了什么.你为什么要走这条路,而不是只收集数据?elasticsearch带来了什么好处?它值得增加复杂性吗?

推荐答案

ElasticSearch实现了更多的功能,比如将文本自定义拆分为单词、自定义词干、分面搜索等等.虽然MongoDB的(相当简单的)文本搜索可以做到这一点,但它远没有ElasticSearch强大.

如果您所做的只是在单个字段中查找单个字符串,那么MongoDB的常规查询系统将很好地实现这一点.如果需要在多个字段中查找单词,那么MongoDB的文本搜索就可以了.如果你需要更多的东西,ElasticSearch是一个不错的 Select .

Mongodb相关问答推荐

映射数组值并查找每个匹配的集合

MongoDB更新对象数组

MongoDB v4.4聚合的$getfield替代方案

如何在MongoDB中使用Aggregation来计算两个键相同但字段不同的对象数组的总值,并将其合并为一个?

没有文档的MongoDB集合中的不一致,但当我执行count()时,它告诉我有15个文档

MongoDB 在一个聚合中包含多个组

MongoDb聚合查询问题

通过insertId MongoDB获取文档

根据条件删除一些数组元素并将数组的大小更新为mongo中的另一个文件

如何将以下聚合查询转换为 bson 并在 golang 中执行

如何使用 mongoose 从 MongoDb 获取数据?

MongoDB映射/减少多个集合?

如何在 Mongo 聚合中合并文档中的数组字段

MongoDB - 清除嵌套数组中的元素

Mongoose:填充填充字段

启动mongodb和express的正确方法?

Mongoose 不创建新集合

MongoDB Java API:put() 与 append()

spring 数据MongoDB.生成id的错误

MongoDb:聚合 $lookup 过滤外部文档