What is the difference between Lucene and Elasticsearch

后端 未结 4 998
被撕碎了的回忆
被撕碎了的回忆 2021-01-29 23:56

I know ElasticSearch is built upon Apache Lucene but I want to know the significant differences between the two.

4条回答
  •  小鲜肉
    小鲜肉 (楼主)
    2021-01-30 00:33

    Lucene is a Java library. You can include it in your project and refer to its functions using function calls.

    Elasticsearch is a JSON Based, Distributed, web server built over Lucene. Though it's Lucene who is doing the actual work beneath, Elasticsearch provides us a convenient layer over Lucene. Each shard that gets created in Elasticsearch is a separate Lucene instance. So to summarize

    1. Elasticsearch is built over Lucene and provides a JSON based REST API to refer to Lucene features.
    2. Elasticsearch provides a distributed system on top of Lucene. A distributed system is not something Lucene is aware of or built for. Elasticsearch provides this abstraction of distributed structure.
    3. Elasticsearch provides other supporting features like thread-pool, queues, node/cluster monitoring API, data monitoring API, Cluster management, etc.

提交回复
热议问题