我们在那里有一个新项目,用于索引大量数据并提供实时数据。我还搜索了方面,全文,地理空间…
第一个原型是在MongoDB中建立索引,其次是在Elasticsearch中建立索引,因为我已经阅读到Elasticsearch不会对存储的文件应用校验和,并且该索引不能被完全信任。但是自从上一版本(在1.5版中)以来,现在有了一个校验和,我在猜测是否可以将Elasticsearch用作主要数据存储?除了Elasticsearch,使用MongoDB有什么好处?
我在Elasticsearch中找不到有关这些功能的最新答案
非常感谢
谈论 使用 Mongo代替ES或与ES一起 使用的 参数:
用户/角色管理。
shield
架构图
ES是无模式的,但是它建立在之上Lucene并用编写Java。该工具的核心思想-索引和搜索文档,以这种方式工作需要索引一致性。在后端,所有文件应平放lucene索引,这需要对ES如何处理嵌套的文档和值以及如何组织索引以保持速度与数据完整性/一致性之间的平衡有所了解。使用ES要求您始终牢记有关架构的某些知识。即:由于无需预先放置对应的映射就可以对ES进行几乎所有索引,因此ES可以即时“猜测”映射,但有时做错了,有时隐式映射是有害的,因为一旦放置,就无法更改/ o重新索引整个索引。因此,最好不要将ES视为无模式存储,因为您可以花一些时间(这会很 痛苦 :)),而应将其视为模式密集型,至少在处理文档时如此,切成具体的领域。
Lucene
Java
lucene
处理非表数据。
ES仅限于处理数据而不将其放入搜索索引。当您需要存储和检索一些额外的数据(与要搜索的数据相比)时,此解决方案就足够了。
gridFS