Categories: Софт

Sphinx. Для чего нужен Sphinx? Основные возможности и применение

Sphinx — это поисковая система с открытым исходным кодом, которая позволяет осуществлять полнотекстовый поиск. Наиболее известен тем, что выполняет поиск по большим данным очень эффективно. Индексируемые данные, как правило, могут поступать из самых разных источников: базы данных SQL, текстовые файлы, файлы HTML, почтовые ящики и так далее.

Основные возможности Sphinx

Sphinx помогает включить и повысить ценность поиска и масштабируемости благодаря следующим характеристикам, которые делают Sphinx не заменимым инструментом для поиска данных на сайте.

  • Высокая скорость индексации (до 10-15 МБ/сек на каждое процессорное ядро);
  • Высокая скорость поиска (до 150—250 запросов в секунду на каждое процессорное ядро с 1 000 000 документов);
  • Высокая масштабируемость (крупнейший известный кластер индексирует до 3 000 000 000 документов и поддерживает более 50 миллионов запросов в день);
  • Поддержка распределенного поиска;
  • Поддержка нескольких полей полнотекстового поиска в документе (до 32 по умолчанию);
  • Поддержка нескольких дополнительных атрибутов для каждого документа (то есть группы, временные метки и т. д.);
  • Поддержка стоп-слов;
  • Поддержка однобайтовых кодировок и UTF-8;
  • Поддержка морфологического поиска — имеются встроенные модули для английского, русского и чешского языков; доступны модули для французского, испанского, португальского, итальянского, румынского, немецкого, голландского, шведского, норвежского, датского, финского, венгерского языков;
  • Нативная поддержка PostgreSQL и MySQL;
  • Поддержка ODBC совместимых баз данных (MS SQL, Oracle и т. д.).

Как работает Sphinx?

Sphinx в качестве источника данных использует базу данных, на основе этого он создает у себя поисковые индексы которые позволяют осуществлять быстрый поиск данных.

Для работы с Sphinx используется API через которое код сайта получает по поисковому запросу массив идентификаторов найденных записей, которые потом будут сопоставлены в коде с записям в БД сайта.

Какие проблемы решает Sphinx?

Если объем данных в БД сайта достигает несколько сотен тысяч записей или больше, то поиск по ней стандартными средствами БД будет крайней медленный. Поэтому для решения данной проблемы используют Sphinx.

Основная проблема которую решает Sphinx это быстрый поиск в большом объеме данных, а также решает проблему эффективного полнотекстового поиска.

Выводы

Использование Sphinx вместо MySQL может обеспечить значительные преимущества в скорости, Чем просто использование нативных поисковых возможностей баз данных.

Еще по теме Sphinx поисковый движок

Установка и настройка Sphinx

admin

Share
Published by
admin

Recent Posts

Лучшие дистрибутивы Linux

Если говорить о том, какие лучшие дистрибутивы Linux мы знаем, то этот список может быть…

1 неделя ago

Лучшие браузеры для Ubuntu

Хотя Ubuntu и поставляется со встроенным обозревателем Firefox многие пользователи считают что это не самая…

1 неделя ago

Установка Remmina Ubuntu 16.04 или 16.10

Что такое Remmina? Remmina — это совершенно бесплатный и свободный клиент так называемого удаленного рабочего…

1 неделя ago

Плюсы Ubuntu

Как мы знаем, Ubuntu это самая популярная сборка из систем на базе ядра Linux. У…

1 неделя ago

Выбираем ноутбук для Linux

Выбор ноутбука для каждого пользователя это довольно кропотливый процесс. Люди стараются подобрать ноутбук который будет…

1 неделя ago

Установка Linux рядом с Windows 10

Если вы решили ознакомиться с операционной системой Linux более детально и задались вопросом как установить…

1 неделя ago