Difference between solr and lucene

后端 未结 7 793
面向向阳花
面向向阳花 2020-12-07 08:10

I know that Lucene and Solr are 2 differents Apache projects that are made to work together, but I don\'t understand what is the aim of each project.

For what I unde

相关标签:
7条回答
  • 2020-12-07 08:33

    A simple way to conceptualize the relationship between Solr and Lucene is that of a car and its engine. You can't drive an engine, but you can drive a car. Similarly, Lucene is a programmatic library which you can't use as-is, whereas Solr is a complete application which you can use out-of-box.

    Source: Lucene-vs-solr - Lucene Tutorial

    0 讨论(0)
  • 2020-12-07 08:34

    Solr is built on top of lucene to provide a search platform.

    Search platform in the following layers from bottom to top:

    • Data
      • Purpose: Represent various data types and sources
    • Document building
      • Purpose: Build document information for indexing
    • Indexing and searching
      • Purpose: Build and query a document index
    • Logic enhancement
      • Purpose: Additional logic for processing search queries and results
    • Search platform service
      • Purpose: Add additional functionalities of search engine core to provide a service platform.
    • UI application
      • Purpose: End-user search interface or applications

    solr stack

    Reference article : Enterprise search

    0 讨论(0)
  • 2020-12-07 08:35

    You can imagine it the following way - Apache Lucene is the library that is used internally by the Apache Solr. It is written in Java and provides amazing full-text search and indexing capabilities. It can analyze a large number of languages from all over the world and prepare the text in such languages to efficient and fast search and analysis. Lucene is a library - you could use it directly in your application and implement everything yourself, but the Apache Solr provides a lot out of the box.

    Apache Solr search engine provides things like HTTP APIs that you can use to send data to them and later search on that data. You can control the search engines using the API, create distributed environments and automatically distribute the data across multiple nodes and many, many more.

    0 讨论(0)
  • 2020-12-07 08:45

    Lucene is a low level Java library (with ports to .NET, etc.) which implements indexing, analyzing, searching, etc.

    Solr is a standalone pre-configured product/webapp which uses Lucene. If you prefer dealing with HTTP API instead of Java API, Solr is for you. Solr has also got some extra features on top (e.g. grouping).

    0 讨论(0)
  • 2020-12-07 08:45

    SOLR is a wrapper over Lucene index.

    It is simple to understand: SOLR is car and Lucene is its engine. You just need to know how to drive car (SOLR) and also need to know few things of engine (Lucene) in case if there will be any issue in your car engine.

    Have a safe drive :)

    0 讨论(0)
  • 2020-12-07 08:46

    You can find a good comparison about the purpose of lucence and solar here:

    http://www.lucenetutorial.com/lucene-vs-solr.html

    TLDR: Lucence is just the engine, Solar is the car you can drive (equipped with rest-api etc.)

    0 讨论(0)
提交回复
热议问题