Manticore Search is a free, open source search engines project written in C++ and released under GPL-3.0. It has 12,015 GitHub stars, 642 forks and 651 open issues, and was last pushed 9 hours ago. On this registry it ranks #6 of 8 tracked projects in Search Engines, with 5 head-to-head comparisons available. It gained 17 stars over the last 6 tracked days.

Manticore Search — Lightning-fast open source search engine for big data

What is Manticore Search?

What it is

Manticore Search is an open-source C++ search database for full-text, vector, and hybrid search with real-time indexing and SQL. It lives in the search-engine and database ecosystem, and the README presents it as an alternative to Elasticsearch.

It solves the problem of running search workloads with lower resource cost and simpler querying than the alternatives named in the README. It covers full-text relevance, vector retrieval, log analysis, and large datasets through MySQL-compatible SQL and an HTTP JSON API. Benchmark workloads in the README include Hacker News comments, Nginx logs, and NYC taxi rides.

Key capabilities

  • Full-text search works across small, medium, and large datasets, with BM25 ranking listed in the topics.
  • Hybrid search combines full-text and vector retrieval in one query, and conversational search uses vectorized tables, KNN, conversation history, and LLM-backed responses through CALL CHAT or the HTTP JSON /search endpoint.
  • Row-wise storage serves datasets within memory, while columnar storage with the Manticore Columnar Library handles datasets too large to fit in RAM.
  • Automatic secondary indexes use the PGM-index, and cost-based optimization uses indexed-data statistics to choose execution plans.
  • Multi-threaded query execution uses all CPU cores, and MySQL-compatible SQL plus official clients for PHP, Python, JavaScript, TypeScript, and Java support application integration.

Who uses it and how

  • Search backend teams can expose full-text, vector, or hybrid queries to applications through SQL or HTTP JSON.
  • DevOps and analytics teams can query log or tabular workloads, such as Nginx logs and NYC taxi rides, using row-wise or columnar storage as needed.
  • Conversational search teams can store vectorized tables and answer questions with CALL CHAT or the /search endpoint.

Getting started

The README excerpt points to Downloads for installation and official clients for PHP, Python, JavaScript, TypeScript, and Java; it does not list Docker image names, package managers, or a hosted option. Teams typically run the search server and query it through MySQL-compatible SQL or the HTTP JSON /search endpoint.

When to use it — and when not to

Use it when a self-hosted search database needs full-text, vector, hybrid, and SQL access while reducing CPU, memory, and ingestion costs compared with Elasticsearch, Typesense, ClickHouse, or MySQL on the listed benchmark workloads. The README does not mention a hosted option, SMTP, or external database dependency, so self-hosters must operate the search server and its storage themselves. The provided registry data shows 0 listed contributors and 651 open issues, and benchmark results are workload-specific, so teams should test their own queries before replacing an existing stack.

project readme (upstream, from github) — read inline

Manticore Search Logo

Easy to use open source fast database for search

Manticore Search is an easy-to-use, open-source, and fast database designed for search. It is a great alternative to Elasticsearch.

manticoresoftware%2Fmanticoresearch | Trendshift

WebsiteDownloadsDocsBlogCoursesForumSlackTelegram (En)Telegram (Ru)TwitterUser feedback

License: GPLv3 or later GitHub Actions Workflow Status Twitter Follow Slack Docker pulls Newsletter Activity GitHub closed issues

Introduction

What distinguishes Manticore from other solutions is:

  • It's very fast and therefore more cost-efficient than alternatives. In the current reproducible benchmarks, Manticore Search 27.1.5 is:

    Results are workload-specific; use the linked dashboard to select the queries that match your workload.

  • Multi-threaded query execution and efficient query parallelization use all CPU cores for low response times.

  • 🔎 Full-text search works seamlessly with both small and large datasets.

  • 🧩 Hybrid search combines full-text and vector retrieval in a single query for better relevance.

  • 💬 Conversational search lets existing vectorized tables answer questions with KNN retrieval, conversation history, and LLM-backed responses through SQL CALL CHAT or the HTTP JSON /search endpoint.

  • 🏎️ Row-wise storage provides fast performance for small, medium, and large datasets.

  • 🗄️ Columnar storage, powered by the Manticore Columnar Library, handles datasets too large to fit in RAM.

  • 📇 Automatic secondary indexes use the PGM-index (Piecewise Geometric Model index) for efficient mapping between indexed keys and memory locations.

  • 🧠 Cost-based query optimization uses indexed-data statistics to select efficient execution plans.

  • 🧮 SQL-first and MySQL-compatible: use SQL as the native syntax with your preferred MySQL client.

  • 🔌 Official clients for PHP, Python, Python asyncio JavaScript, Typescript, Java, Elixir, Go, and Rust make integration easy.

  • 🌐 HTTP JSON API and Elasticsearch-compatible writes support versatile data and schema management.

  • 🧱 Sharded tables transparently distribute reads and writes across physical shards on one node or across a replication cluster.

  • 🔐 Built-in authentication and authorization secure MySQL, HTTP/HTTPS, distributed remote agents, and replication-related operations with users, bearer tokens, and fine-grained permissions.

  • 🪶 C++ performance and a small footprint: Manticore Search starts quickly and uses around 40MB RSS for an empty instance.

  • Real-time inserts make newly added or updated documents immediately accessible.

  • 🎓 Interactive courses at play.manticoresearch.com make learning easier.

  • 🔄 Virtually synchronous multi-master replication uses Galera and includes load balancing.

  • 🔗 Data synchronization supports sources such as MySQL, PostgreSQL, ODBC, XML, and CSV.

  • 🛡️ Safe writes: while not fully ACID-compliant, Manticore supports isolated transactions and binary logging.

  • 💾 Backup and recovery include manticore-backup, SQL BACKUP, and S3-compatible backup/restore support.

Craigslist, Socialgist, PubChem, Rozetka and many others use Manticore for efficient searching and stream filtering.

More features

readme truncated — read the full docs on github

Frequently asked questions

Is Manticore Search free to use?

Manticore Search is open source under the GPL-3.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does Manticore Search do?

Lightning-fast open source search engine for big data

What is Manticore Search written in?

Manticore Search is primarily written in C++. Its source is publicly available at https://github.com/manticoresoftware/manticoresearch, and it has 12,015 GitHub stars.