Manticore search as a fork of SphinxSearch 2.7.3 before it transitioned into a closed source project. Adding many of the features SphinxSearch 3 later added, but many additional features unique to Manticoresearch.

Including a MySQL Protocol support for any mysql client library. SQL query support for updating and searching the database. And many many more features

#database #search #searchengine #mysql #cpp

Sergey Nikolaev cd6dfd149f feat: adapted the CI changes rel. with static openssl 3 and UNITY_BUILD to GitHub workflows vor 1 Jahr
.github cd6dfd149f feat: adapted the CI changes rel. with static openssl 3 and UNITY_BUILD to GitHub workflows vor 1 Jahr
actions 63f9131775 Fix issue with update-deps action and use head_ref instead of ref to avoid merge commmit that missing in git tree vor 1 Jahr
api 6aaec20052 fix build warnings vor 1 Jahr
cmake 5b174de56e split vcpkg stuff from GetSSL vor 1 Jahr
component-licenses 2bd11f79fe manual: minor improvements related with Jieba vor 1 Jahr
config 786cc198de Implemented support for Jieba segmentation library (#2579) vor 1 Jahr
contrib c774fd36a4 conf path changes #1095 vor 6 Jahren
dist cd6dfd149f feat: adapted the CI changes rel. with static openssl 3 and UNITY_BUILD to GitHub workflows vor 1 Jahr
doc 9ad08e510c internal binlog doc (unfinished) vor 1 Jahr
galera_packaging 77a716773a CI force Galera build (#2541) vor 1 Jahr
libicu 81dcc0a2aa simplified pdb export vor 3 Jahren
libre2 81dcc0a2aa simplified pdb export vor 3 Jahren
libstemmer_c 81dcc0a2aa simplified pdb export vor 3 Jahren
manual d2e04c11dc docs: fixed a broken link in References vor 1 Jahr
misc e7afb264dd enable unity build in gitlab CI vor 1 Jahr
mysqlse 0dc5f776b6 Bumped year in copyright to 2024 (#1730) vor 2 Jahren
src 9df89b392f split ssl usage vor 1 Jahr
test f63b4bc8db Merge pull request #2920 from manticoresoftware/join_batch_adjust vor 1 Jahr
.editorconfig 1b22c06e82 Update editorconfig and sent indent size to 4 vor 2 Jahren
.gitignore 41a765bd34 Test/update nightly installation tests (#2278) vor 1 Jahr
.gitlab-ci.yml 4ab0e14772 gitlab: use in-source toolchain files vor 1 Jahr
.patterns 00864701e3 Improvement of all timeouts in the clt-test folder (#1829) vor 2 Jahren
116.conf 08cb65074f Added Add test for table freezing/unfreezing and update operations (#2684) vor 1 Jahr
CMakeLists.txt 9508fb5d43 invoke openssl build into cache vor 1 Jahr
CODE_OF_CONDUCT.md d761c0f2bb removed broken analytics in 2 md files vor 3 Jahren
CONTRIBUTING.md bb431184c0 github tempaltes , contrib and testing guides vor 8 Jahren
INSTALL 58bda13adb License-related changes and cleanup (#1720) vor 2 Jahren
LICENSE 58bda13adb License-related changes and cleanup (#1720) vor 2 Jahren
README.md 89c9301dac docs: update links to the old blog posts vor 1 Jahr
TESTING.md d761c0f2bb removed broken analytics in 2 md files vor 3 Jahren
columnar_src.txt 725e9c973c fix columnar APIs versioning vor 3 Jahren
configure 09b5e3b15a Fixes #123 - old build system. vor 8 Jahren
deps.txt cea0d5b7d3 Bump load version to: 1.16.0+25011101-7ce70afb-dev vor 1 Jahr
docker-compose-test.yml d129d4e414 split dockerized smoke to separate tests; fixed exit code and db container wait loop vor 8 Jahren
example.sql 42b5d96f44 test hg-local change vor 16 Jahren
manticore.conf.in 6257ae425e gl#3454: removed query_log_format=sphinxql from the default config since it's redundant vor 2 Jahren
smoke.sh b02082a245 memcheck specific vor 2 Jahren
sphinxrev.cmake 589351ca8d --date=format-local instead of --date=format to unify date/time in builds vor 1 Jahr
sphinxrevcheck.cmake 514d35b497 Implemented date/time functions via CCTZ; moved CI test builds to Jammy (#2) vor 2 Jahren
valgrind edfbd1db5b valgrind wrapper vor 4 Jahren

README.md

Manticore Search Logo

WebsiteDownloadsDocsBlogCoursesForumSlackTelegram (En)Telegram (Ru)TwitterUser feedback

 

Introduction

Twitter Follow Slack Docker pulls Newsletter Activity GitHub closed issues

❗Read recent blog post about Manticore vs Elasticsearch

Manticore Search is an easy to use open source fast database for search. Good alternative for Elasticsearch. What distinguishes it from other solutions is:

  • It's very fast and therefore more cost-efficient than alternatives, for example Manticore is:
  • With its modern multithreading architecture and efficient query parallelization capabilities, Manticore is able to fully utilize all your CPU cores to achieve the quickest response times possible.
  • The powerful and speedy full-text search works seamlessly with both small and large datasets.
  • Row-wise storage for small, medium and big size datasets.
  • For even larger datasets, Manticore offers columnar storage support through the Manticore Columnar Library, capable of handling datasets too big to fit in RAM.
  • Performant secondary indexes are automatically created, saving you time and effort.
  • The cost-based query optimizer optimizes search queries for optimal performance.
  • Manticore is SQL-first, utilizing SQL as its native syntax, and offers compatibility with the MySQL protocol, allowing you to use your preferred MySQL client.
  • With clients available in PHP, Python, JavaScript, Typescript, Java, Elixir, and Go, integration with Manticore Search becomes easy.
  • Manticore also provides a programmatic HTTP JSON protocol for more versatile data and schema management.
  • Built in C++, Manticore Search starts quickly and uses minimal RAM, with low-level optimizations contributing to its impressive performance.
  • With real-time inserts, newly added documents are immediately accessible.
  • Interactive courses are available through Interactive courses to make learning a breeze.
  • Manticore also boasts built-in replication and load balancing for added reliability.
  • Data can be synced from sources such as MySQL, PostgreSQL, ODBC, xml, and csv with ease.
  • While not fully ACID-compliant, Manticore still supports transactions and binlog to ensure safe writes.
  • Effortless data backup and recovery with built-in tools and SQL commands

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

Manticore Search was forked from Sphinx 2.3.2 in 2017.

More features

Installation

Docker

Docker image is available on Docker Hub.

To experiment with Manticore Search in Docker just run:

docker run -e EXTRA=1 --name manticore --rm -d manticoresearch/manticore && until docker logs manticore 2>&1 | grep -q "accepting connections"; do sleep 1; done && docker exec -it manticore mysql && docker stop manticore

You can then: create a table, add data and run searches. For example:

create table movies(title text, year int) morphology='stem_en' html_strip='1' stopwords='en';

insert into movies(title, year) values ('The Seven Samurai', 1954), ('Bonnie and Clyde', 1954), ('Reservoir Dogs', 1992), ('Airplane!', 1980), ('Raging Bull', 1980), ('Groundhog Day', 1993), ('<a href="http://google.com/">Jurassic Park</a>', 1993), ('Ferris Bueller\'s Day Off', 1986);

select highlight(), year from movies where match('the dog');

select highlight(), year from movies where match('days') facet year;

select * from movies where match('google');

Note that upon exiting the MySQL client, the Manticore container will be stopped and removed, resulting in no saved data, so use this way only for testing / sandboxing purposes.

Read the full instruction for the docker image for more details including our recommendations on running it in production.

Packages

Ubuntu, Debian, Centos, Windows and MacOS packages are here.

YUM repo for RHEL/Centos/Amazon/Oracle Linux

sudo yum install https://repo.manticoresearch.com/manticore-repo.noarch.rpm
sudo yum install manticore manticore-extra

APT repo for Ubuntu/Debian/Mint

wget https://repo.manticoresearch.com/manticore-repo.noarch.deb
sudo dpkg -i manticore-repo.noarch.deb
sudo apt update
sudo apt install manticore manticore-extra

Homebrew on MacOS

brew install manticoresoftware/tap/manticoresearch manticoresoftware/tap/manticore-extra

Windows

See instruction here.

Clouds

Documentation and community sites

Third-party integrations

How we can support you

Should your company require any help - we provide full-cycle services in the areas of Sphinx and Manticore Search:

  • Audit
  • Support
  • Consulting
  • Development
  • Training

More details here

❤️ How you can support Manticore Search

Manticore Search is an Open Source project with development made possible by support from our core team, contributors, and sponsors. Building premium Open Source software is not easy. If you would like to make sure Manticore Search stays free, here is how you can help the project:

License

Manticore Search is distributed under GPLv3 or later. Manticore Search uses and re-distributes other open-source components. Please check the component licenses directory for details.