Sphinx — это система полнотекстового поиска на основе SQL, которую можно комбинировать с MySQL и PostgreSQL для полнотекстового поиска. Она может предоставлять более профессиональные функции поиска, чем сама база данных, что упрощает приложениям реализацию профессионального полнотекстового поиска. Sphinx специально разрабатывает интерфейсы API поиска для некоторых языков сценариев, таких как PHP, Python, Perl, Ruby и т. д., а также разрабатывает плагин механизма хранения для MySQL.
Один индекс Sphinx может содержать до 100 миллионов записей, а скорость запроса для 10 миллионов записей составляет 0,x секунд (миллисекунд). Скорость создания индекса Sphinx такова: создание индекса из 1 миллиона записей занимает всего 3–4 минуты, а создание индекса из 10 миллионов записей можно завершить за 50 минут. Инкрементальный индекс, содержащий только последние 100 000 записей. записи необходимо перестроить один раз. Это занимает всего несколько десятков секунд.
Выпущена версия Sphinx 2.0.4. В этой версии в основном исправлены ошибки. Пользователям, использующим индексацию в реальном времени, рекомендуется как можно скорее выполнить обновление. Подробный список исправленных ошибок смотрите здесь .
Ключевые особенности Сфинкса включают в себя:
Высокоскоростное индексирование (около 10 МБ/сек на новых процессорах);
Высокоскоростной поиск (средняя скорость запроса менее 0,1 секунды для объема текста 2-4G);
Высокая доступность (один процессор может поддерживать до 100 ГБ текста и 100 млн документов);
Обеспечить хороший рейтинг релевантности для поддержки распределенного поиска;
Обеспечить формирование сводки документов;
Обеспечивает поддержку поиска по логическим, фразовым и синонимическим запросам из подключаемого модуля хранения в MySQL;
Поддерживает несколько полей полнотекстового поиска для каждого документа (максимум 32 по умолчанию);
Поддерживает несколько атрибутов для каждого документа;
Поддержка сегментации слов;
Поддерживает однобайтовую кодировку и кодировку UTF-8;