The Apache Lucene — это свободная библиотека для высокоскоростного полнотекстового поиска, написанная на Java.
Основные возможности
- Масштабируемая и высокоскоростная индексация
- свыше 20MB в минуту на Pentium M 1.5GHz
- требуется малый объем RAM — «heap» всего 1MB
- размер индекса примерно 20-30 % от размера исходного текста
- Мощный, точный и эффективный поисковый алгоритм
- ранжированный поиск — лучшие результаты показываются первыми
- множество мощных типов запросов: запрос фразы, wildcard запросы, поиск интервалов и т. д.
- поиск основанный на «полях» (таких как, заголовок, автор, текст)
- возможность сортировать по различным полям
- multiple-index поиск с возможностью объединения результатов
- возможность одновременного поиска и обновления индекса
- кроссплатформное решение
- исходный код полностью написан на Java
- наличие портов на другие языки программирования
Порты на другие языки
Lucene портирована (или сейчас портируется на другие языки программирования):
- Lucene4c — C
- CLucene — C++
- MUTIS — Delphi
- Plucene — Perl
- Kinosearch — Perl
- PyLucene (Wrapper — not port) — Python
- Ferret и RubyLucene — Ruby
- Zend_Lucene — PHP
- Montezuma — Lisp
- Lucene.Net — C#
Ссылки
- The Apache Lucene
- Lucene API
- Lucene FAQ
- Формат файлов
- Как начать
- Синтаксис запросов
- Scoring
- Lucene Wiki
Литература