Research#

This project started as a research project to find out how to create a common interface for different search engines. In this document we collect all the information we found out during our research. Feel free to add all kind of interesting information you want to share.

List of Search Engines#

Here we collect different search engines which are around and could be interesting:

Descriptions of Search Engines#

Elasticsearch#

Widely used search based on Java.

Implementation: cmsig/seal-elasticsearch-adapter

Opensearch#

Fork of Elasticsearch also written in Java.

Implementation: cmsig/seal-opensearch-adapter

Meilisearch#

A search engine written in Rust:

Implementation: cmsig/seal-meilisearch-adapter

Algolia#

Is a search as SaaS provided via Rest APIs and SDKs:

Implementation: cmsig/seal-algolia-adapter

Solr#

A search engine under the Apache Project based on Lucene written in Java:

Implementation: cmsig/seal-solr-adapter

RediSearch#

A search out of the house of the redis labs.

Implementation: cmsig/seal-redisearch-adapter

Typesense#

Describes itself as a alternative to Algolia and Elasticsearch written in C++.

Implementation: cmsig/seal-typesense-adapter

Loupe#

An SQLite based, PHP-only fulltext search engine.

Zinc Labs#

Zinc search describes itself as a lightweight alternative to Elasticsearch written in GoLang.

Implementation: work in progress #79

ZendSearch#

A complete in PHP written implementation of the Lucene index. Not longer maintained:

Kailua Labs#

Next-gen search made simple:

TnTSearch#

Another implementation of a Search index written in PHP. Not based on Lucene.

Sonic#

Describe itself as lightweight & schema-less search backend, an alternative to Elasticsearch that runs on a few MBs of RAM.

Vespa#

Describe itself as the open big data serving engine - Store, search, organize and make machine-learned inferences over big data at serving time.

  • Server: Vespa Server

  • PHP Client: No client available only API based

Toshi#

A full-text search engine in rust. Toshi strives to be to Elasticsearch what Tantivy Server is to Lucene:

  • Server: Toshi Server

  • PHP Client: No client available only API based

Quickwit#

Describe itself as a cloud-native search engine for log management & analytics written in Rust. It is designed to be very cost-effective, easy to operate, and scale to petabytes.

nrtSearch#

Describe itself as a high performance gRPC server, with optional REST APIs on top of Apache Lucene version 8.x source, exposing Lucene’s core functionality over a simple gRPC based API.

MongoDB Atlas#

None open source search engine from MongoDB. It is a cloud based search engine.

Search.io#

A SaaS search engine, In the past they used the name for Sajari Site Search. Lately acquired by Algolia.

Amazon CloudSearch#

A cloud based search from Amazon:

Gigablast#

Describe itself as an open source web and enterprise search engine and spider/crawler written in C++.

Fess#

Fess is very powerful and easily deployable Enterprise Search Server.

Bleve#

A modern text ndexing in go, supported and sponsored by Couchbase:

Qdrant#

A vector AI based search database:

OpenAI#

OpenAi embeddings can also be used to create search engine:

Jina#

Another vector based search engine:

Paradedb#

A search and analytics engine ontop of Postgres, with own Postgres extensions written in Rust: