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

Dmitry Voronin b317e86069 README: Add integration link for sphinxlink 3 years ago
.github 87d7814212 more sponsorship info, removed analytics from readme.md since it's broken 4 years ago
api 2c1629266c allow full 64 bit docids; split docid lookup 3 years ago
cmake eea294ff26 REQUIRES manticore-backup since rpms don't support RECOMMENDS 3 years ago
config 73a8f6cb44 split sphinxstd.h 3 years ago
contrib c774fd36a4 conf path changes #1095 6 years ago
debian d830259737 updated copyright 4 years ago
dist 77114928ef fixed bug in docker hub deployment script (DEV=1 was missing) 3 years ago
doc 2956277bc4 improve internal doc 3 years ago
libicu 81dcc0a2aa simplified pdb export 3 years ago
libre2 81dcc0a2aa simplified pdb export 3 years ago
libstemmer_c 81dcc0a2aa simplified pdb export 3 years ago
manual 949836596e manual: mistype fix 3 years ago
misc d3ff44de87 Add winbundle scripts 3 years ago
mysqlse 73a8f6cb44 split sphinxstd.h 3 years ago
src a2eeedbea5 Don't allow to add more than 256 fields 3 years ago
test a2eeedbea5 Don't allow to add more than 256 fields 3 years ago
.gitignore 2e132829a3 New build and testing system 4 years ago
.gitlab-ci.yml 32e25e7b3c windows installer 3 years ago
CMakeLists.txt 0a85863ff7 Exclude zstd from static builds 3 years ago
CODE_OF_CONDUCT.md 8ed8bc3260 add GA pixel 8 years ago
CONTRIBUTING.md bb431184c0 github tempaltes , contrib and testing guides 8 years ago
COPYING 2af52ea079 Revert "License-related changes" 3 years ago
INSTALL 4da2394ad1 noci Updated path in INSTALL 5 years ago
README.md b317e86069 README: Add integration link for sphinxlink 3 years ago
TESTING.md 49a313ae09 replaced docs.manticoresearch.com with manual.manticoresearch.com 5 years ago
columnar_src.txt 725e9c973c fix columnar APIs versioning 3 years ago
configure 09b5e3b15a Fixes #123 - old build system. 8 years ago
docker-compose-test.yml d129d4e414 split dockerized smoke to separate tests; fixed exit code and db container wait loop 8 years ago
example.sql 42b5d96f44 test hg-local change 16 years ago
manticore.conf.in 2e132829a3 New build and testing system 4 years ago
smoke.sh e4a8f37a4e Refresh CI testing for cross-compile 3 years ago
sphinxrev.cmake 31fe49f9ff dumb autoformat of all cmake files 3 years ago
sphinxrevcheck.cmake 31fe49f9ff dumb autoformat of all cmake files 3 years ago
valgrind edfbd1db5b valgrind wrapper 4 years ago

README.md

Manicore Search Logo

WebsiteDownloadsDocsBlogCoursesForumSlackTelegramTwitter

 

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:
  • Modern MPP architecture and smart query parallelization capabilities allow to fully utilize all your CPU cores to lower response time as much as possible, when needed.
  • Powerful and fast full-text search which works fine for small and big datasets
  • Traditional row-wise storage for small, medium and big size datasets
  • Columnar storage support via the Manticore Columnar Library for bigger datasets (much bigger than can fit in RAM)
  • Easy to use secondary indexes (you don't need to create them manually)
  • Cost-based optimizer for search queries
  • SQL-first: Manticore's native syntax is SQL. It speaks SQL over HTTP and uses the MySQL protocol (you can use your preferred MySQL client)
  • Clients for PHP, Python, JavaScript, Java, Elixir and Go
  • JSON over HTTP: to provide a more programmatic way to manage your data and schemas, Manticore provides a HTTP JSON protocol
  • Written fully in C++: starts fast, doesn't take much RAM, and low-level optimizations provide good performance
  • Real-time inserts: after an INSERT is made, the document is accessible immediately
  • Interactive courses for easier learning
  • Built-in replication and load balancing
  • Can sync from MySQL/PostgreSQL/ODBC/xml/csv out of the box
  • Not fully ACID-compliant, but supports transactions and binlog for safe writes

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 --name manticore --rm -d manticoresearch/manticore && sleep 3 && docker exec -it manticore mysql && docker stop manticore

You can then: create an index, 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');

When you exit from the MySQL client, it stops and removes the container, 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 Linux

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

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-columnar-lib

Homebrew on MacOS

brew install manticoresearch

Windows

See instruction here.

MacOS tarball

See instruction here.

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 a GPLv2-licensed 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: