Thursday, April 28, 2022

Lunr.js vs Solr vs ElasticSearch vs OpenSearch

lunr.js: "search made simple"

Lunr: A bit like Solr, but much smaller and not as bright

lunr - npm

olivernn/lunr.js: A bit like Solr, but much smaller and not as bright @GitHub

  • Full text search support for 14 languages
  • Boost terms at query time or boost entire documents at index time
  • Scope searches to specific fields
  • Fuzzy term matching with wildcards or edit distance

Solr (pronounced "solar") is an open-source enterprise-search platform, written in Java. Its major features include full-text search, hit highlighting, faceted search, real-time indexing, dynamic clustering, database integration, NoSQL features[2] and rich document (e.g., Word, PDF) handling. Providing distributed search and index replication, Solr is designed for scalability and fault tolerance.[3] Solr is widely used for enterprise search and analytics use cases and has an active development community and regular releases.

Solr runs as a standalone full-text search server. It uses the Lucene Java search library at its core for full-text indexing and search, and has REST-like HTTP/XML and JSON APIs that make it usable from most popular programming languages. Solr's external configuration allows it to be tailored to many types of applications without Java coding, and it has a plugin architecture to support more advanced customization.

Lucene is widely used as a standard foundation for non-research search applications.(Java)
Lucene has been ported to other programming languages including Object Pascal, Perl, C#, C++, Python, Ruby and PHP

He founded Lucene...  and co-founded Apache Hadoop

The main difference between Solr and Elasticsearch is that Solr is a completely open-source search engine. Whereas Elasticsearch though open source is still managed by Elastic’s employees. Solr supports text search while Elasticsearch is mainly used for analytical querying, filtering, and grouping.

No comments: