[ обговорити ] В рамках проекту Sphinx реалізована підтримка повнотекстового пошуку для будь-яких типів сховищ MySQL, включаючи InnoDB. В останніх версіях додатково підтримується СУБД PostgreSQL. Крім, того додаток привносить ряд додаткових нововведень, наприклад, створення розподілених пошукових запитів.
Так як автор проекту (Andrew Aksyonoff) проживає в Росії, то в Sphinx є відмінна підтримка російської мови, включаючи можливість підключення російськомовного Стеммер.
Що стосується пошукового механізму Sphinx (вище йшлося про патч для MySQL входить в комплект Sphinx), то крім MySQL є підтримка PostgreSQL. при вимірі продуктивності Sphinx виконав запит в 15 разів швидше ніж Mnogosearch, в середньому витративши 0.1 сек при індексації 2-4 Гб тексту. Розробники заявляють, що Sphinx непогано себе почуває при обсягах індексованих даних до 100 Гб або 100 мільйонів документів.
Основні особливості Sphinx:
- Висока швидкість індексації (до 10 Мб / сек);
- Висока швидкість пошукової вибірки (0.1 сек. Для запиту в базі з 2-4 Гб проіндексованого тексту);
- Висока масштабованість (один CPU може використовуватися для обслуговування 100 Гб тексту і 100 млн. Документів);
- Можливість організації розподіленого на кілька вузлів пошукового механізму;
- Нативная підтримка MySQL, підтримуються як стандартні двигуни MyISAM і InnoDB, так і власне сховище SphinxSE
- Підтримка пошуку за заданими фразами;
- Можливість імовірнісного пошуку з використанням ранжирування з елементами нечіткої логіки;
- підтримка Стеммер для російської та англійської мов;
- Підтримка індексації будь-якого числа полів в документах, вага для яких може змінюватися на льоту;
- Підтримка груп документів;
- Можливість визначення заборонених слів
- Підтримка різних моделей пошуку (збіг всіх ключів, співпадання цілком, збіг окремих слів);
- XML інтерфейс для інтеграції зі сторонніми проектами;
- Доступно API для PHP, Python, Java, Perl і Ruby.
[ обговорити ] Пошуковий механізм вигідно відрізняється тим, що може індексувати що завгодно (HTML, DVI, PS, PDF, troff, RTF, Microsoft Word / Excel, SGML і т.д.), де завгодно (HTTP, FTP, NNTP і т.д .). Індекси зберігаються в GDBM базі. Для індексації 100 тис. Документів, об'ємом 1.5 GB досить Pentium 650MHz з 256MB ОЗУ, присутня можливість розподілу навантаження на кілька машин.
- harvest-ng - спроба переписати Harvest на Perl зі збереженням загальної архітектури.
- Документація користувача Harvest російською мовою .