Percona Full Text Search – notes
Posted by lopeza on November 15, 2008
Why Sphix? – Great indexin, search speed, scalibility, online index rebuilds, and better resource utilization.
Mysql
- Indexing on mysql uses btree which can be very slow.
Sphinx
- Speed is greatly higher on sphinx.
- with sphinx you can perform a query and store different groupby sets at the cost of one scan.
- used on many servers
- result sets can be merged together
How is it organized
- searchd – standalone daemon responsible for answering client queries
- indexer – tool to build indexes
Talking to sphinx
- using apis, php, perl, python, ruby, c, c++, java
- sphinxSE – mysql storage engine dedicated to sphinx (good to use for large scale optimizations instead of letting the app do it)
Top New Features
- added select-list feature w/full expressions support
- arbitrary brackets/negations nesting support to query language
- config reload on SIGHUP
- signed 64bit attrs support
- persistent connections, unix socket, and multi-interface support
- kill-list support (delta index)
- MS SQL source type support
- index_exact_words feture, and exact form operator
- inplace inversion of .spa and .spp
http://sphinxsearch.com