Manticore Search - easy to use open source fast database for search

Manticore Search is an open-source database that was created in 2017 as a continuation of the Sphinx Search engine. We built upon its strengths, significantly improving its functionality and fixing hundreds of bugs while keeping it open-source. This has made Manticore Search a modern, fast, lightweight, and fully-featured database with outstanding full-text search capabilities.

Video Thumbnail

Our aims and objectives

Ease of use

We believe that in today’s world, the primary focus of any technology vendor should be ease of use. Our goal is for our users, whether they are developers or devops, to not have to become experts in databases or search engines, or hold a PhD, in order to effectively use Manticore products. We understand that our users have other important tasks to attend to, rather than spending hours trying to understand the intricacies of various settings and their effects on functionality. Therefore, we strive to ensure that Manticore Search works seamlessly and efficiently with minimal configuration, even with default settings.

SQL / JSON

We love SQL. It’s impossible to find anything more straightforward when preparing your search query. Most developers are familiar with WHERE, GROUP BY, and ORDER BY as they’ve been in use for decades. With Manticore Search, you can perform any type of query using SQL. Additionally, Manticore Search also understands the MySQL protocol, allowing you to use MySQL clients for your queries. However, we understand that coding queries in your application may be more comfortable with more structured protocols than an SQL string. That’s why Manticore Search also supports JSON. Additionally, we provide Manticore Search bindings for various programming languages to make integration even more seamless.

Multi-model

Manticore Search offers support for both row-wise storage (similar to MySQL and Postgres) and columnar storage (similar to Redshift, Clickhouse, BigQuery, and Druid), making it incredibly fast for small data sets that can fit in RAM and still maintaining speed when your data is significantly larger than the RAM size.
Additionally, Manticore Search offers two configuration modes: plain, in which all tables are specified in a configuration file (similar to k8s yamls), and real-time, in which tables are created, altered, and dropped using CREATE/ALTER/DROP TABLE commands.

Performance and resource consumption

We believe that performance and resource consumption are important. That’s why Manticore Search is written in C++, a programming language commonly used to write operating systems, browsers, and other software where performance and resource efficiency is crucial. Writing in C++ may be challenging and time-consuming, but it enables us to ensure that Manticore Search uses minimal RAM and maximizes CPU efficiency. According to the Fair database benchmarks https://db-benchmarks.com, Manticore Search is: 15x faster than Elasticsearch on small data, 4x faster on big data, and 29x faster for log analytics.

Easy scalability

Driven by the industry’s high standards and our clients’ needs, we designed Manticore to be easily scalable. This means that regardless of the size or complexity of your search task - whether it’s a small site, analytics over billions of log records, or building a multilingual directory with petabyte data from different sources - you can accomplish it with Manticore Search. Additionally, we believe that features such as replication and search load distribution should be straightforward to use and maintain.

Powerful full-text capabilities

Manticore Search, initially designed as a pure full-text search engine, boasts exceptional full-text capabilities: with over 20 full-text operators and more than 20 ranking factors, it offers a variety of built-in rankers and an expression-based custom ranker. Additionally, it includes features such as text stemming, lemmatization, stopwords, synonyms, wordforms, low-level character mapping, proper Chinese segmentation, easy text highlighting, ranking, and tokenization plugins, among many others.

Integrations

We believe that it should be easy to integrate Manticore Search into your existing stack. That’s why Manticore can read data from MySQL, Postgres, MSSQL, ODBC, XML, CSV, TSV out of the box. It can also be integrated with MySQL as an engine or accessed via ProxySQL.

Open source

As open source enthusiasts, we firmly believe that technology such as databases should be open source. With this in mind, we have made Manticore Search and all other Manticore products publicly available under OSI-approved open source licenses. You can find us on GitHub.

Documentation

We understand the importance of quickly getting started with a new technology. However, we were not satisfied with the existing documentation engines, so we created our own. Our documentation engine, made with Manticore Search, features a search powered by Manticore Search, as well as nice code example tabs and many more features.

Video Thumbnail
Video Thumbnail

Interactive courses

To make it even easier to familiarize yourself with Manticore Search, we also offer free interactive courses that can help you easily learn about Manticore Search - starting with how to install and configure it, and progressing to topics such as Geo Search, “Did you mean” functionality, Autocomplete, and Faceting implementation.

Install Manticore Search

Install Manticore Search