/schranz-search

Search abstraction over different search engines written in PHP. Currently implemented Elasticsearch, Opensearch, Algolia, Meilisearch.

Primary LanguagePHPMIT LicenseMIT

Schranz Search Logo with a Seal on it with a magnifying glass

Schranz Search

Monorepository for the search abstraction over different search engines.


SEAL

What doctrine/dbal is for doctrine, the schranz-search/SEAL is for schranz-search package. It provides a common interface to interact with different search engines.

Read more about it in the README.md of the package.

Warning: This project is heavily under development and not ready for production.

duffy-duck-investigating

Research

At current state collect here different search engines which are around and could be interesting:

Elasticsearch

Widely used search based on Java.

Implementation: schranz-search/seal-elasticsearch-adapter

Opensearch

Fork of Elasticsearch also written in Java.

Implementation: schranz-search/seal-elasticsearch-adapter

Meilisearch

A search engine written in Rust:

Implementation: schranz-search/seal-meilisearch-adapter

Algolia

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

Implementation: schranz-search/seal-algolia-adapter

RediSearch

A search out of the house of the redis labs.

Zinc Labs

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

Typesense

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

ZendSearch

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

TnTSearch

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

Solr

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

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.

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.

PostgreSQL Full Text Search

MySQL Full Text Search

Sphinx Search

An older search engine written in Python.

Manticore Search

Fork of Sphinx 2.3.2 in 2017, describes itself as an easy to use open source fast database for search. Good alternative for Elasticsearch.

Search.io

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

Azure Cognitive Search

A cloud based search from Microsoft Azure:

Google Cloud Search

A cloud based search from Google:

Amazon CloudSearch

A cloud based search from Amazon:

Similar Projects

Following projects in the past target similar problem: