About this project
Manticore Search is an open-source database built specifically for search workloads, positioned as an alternative to Elasticsearch. It combines full-text search, vector search and hybrid retrieval in a single engine, with real-time indexing so newly inserted or updated documents become searchable immediately.
Key capabilities described in the README:
- Full-text search with over 20 operators and ranking factors, custom ranking, fuzzy search, faceted search, geo-spatial search, autocomplete, spelling correction and table joins.
- Vector and hybrid search, including KNN retrieval, auto-embeddings with automatic chunking (fixed-size, recursive or sentence-based) stored in a float_vector_array, and conversational search via SQL CALL CHAT or the HTTP JSON /search endpoint.
- SQL-first interface that is MySQL-compatible, so users can connect with familiar MySQL clients. An HTTP JSON API and Elasticsearch-compatible writes are also provided.
- Storage options: row-wise storage for speed, columnar storage (via the Manticore Columnar Library) for datasets larger than RAM, and a docstore mode that avoids RAM usage for fetching original values.
- Automatic secondary indexes using the PGM-index, and a cost-based query optimizer that uses indexed statistics to choose execution plans.
- Multi-threaded query execution and query parallelization across CPU cores.
- Sharded tables that distribute reads and writes across shards on one node or across a replication cluster, with virtually synchronous multi-master replication based on Galera and built-in load balancing.
- Built-in authentication and authorization for MySQL, HTTP/HTTPS, distributed agents and replication, using users, bearer tokens and fine-grained permissions, plus HTTPS support and a read-only mode.
- Data synchronization from MySQL, PostgreSQL, ODBC, MS SQL, XML, CSV and Kafka, and integrations with ProxySQL, Apache Superset, Grafana, Fluentbit, Kibana, Logstash/Filebeat, Vector.dev and mysqldump.
- Backup and recovery through the manticore-backup tool, the SQL BACKUP command, and S3-compatible backup/restore.
- NLP features including stemming, lemmatization, stopwords, synonyms, wordforms, low-level tokenization, Chinese segmentation and text highlighting.
- Stream filtering via a percolate table or Kafka integration.
- Official clients for PHP, Python, Python asyncio, JavaScript, TypeScript, Java, Elixir, Go and Rust.
Installation options include a one-line shell installer for Linux and macOS (Homebrew), Docker images, RPM and APT repositories, Homebrew on macOS, and WSL or native Windows instructions. The README notes the project is distributed under GPLv3 or later and that it re-distributes other open-source components. It also states that Manticore is used by organizations such as Craigslist, Socialgist, PubChem and Rozetka, and links to documentation, interactive courses, a forum, Slack and Telegram channels.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.