我知道 ElasticSearch 是基于 Apache Lucene 构建的,但我想知道两者之间的显着差异。
最佳答案
Lucene 是一个 Java 库。 您可以将它包含在您的项目中并使用函数调用来引用它的功能。
Elasticsearch 是基于JSON、分布式、构建在 Lucene 之上的网络服务器。 虽然是 Lucene 在做底层的实际工作,但 Elasticsearch 为我们提供了一个方便的 Lucene 层。在 Elasticsearch 中创建的每个分片都是一个单独的 Lucene 实例。 所以总结一下
- Elasticsearch 基于 Lucene 构建,并提供基于 JSON 的 REST API 以引用 Lucene 功能。
- Elasticsearch 在 Lucene 之上提供了一个分布式系统。分布式系统不是 Lucene 知道或构建的东西。 Elasticsearch 提供了这种分布式结构的抽象。
- Elasticsearch 提供其他支持功能,如线程池、队列、节点/集群监控 API、数据监控 API、集群管理等。
关于elasticsearch - Lucene 和 Elasticsearch 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27793721/