Apache Solr

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Apache Solr
Тип

поисковая система

Разработчик

Apache Software Foundation

Написана на

Java

Операционная система

Кроссплатформенное программное обеспечение

Последняя версия

4.7.0 (19 марта 2014)

Состояние

Активное

Лицензия

Apache License 2.0

Сайт

lucene.apache.org/solr/

Solr (произносится «солар»[1]) — платформа полнотекстового поиска с открытым исходным кодом, основанная на проекте Apache Lucene. Её основные возможности: полнотекстовый поиск, подсветка результатов, фасетный поиск, динамическая кластеризация, интеграция с базами данных, обработка документов со сложным форматом (например, Word, PDF). Так как в Solr есть возможность распределенного поиска и репликации, Solr хорошо масштабируем.[2] Solr является самым популярным поисковым движком.[3]

Solr написан на Java и запускается как отдельное веб-приложение полнотекстового поиска внутри какого-либо контейнера сервлетов, например Apache Tomcat или Jetty. Solr использует Lucene в качестве основы для реализации индексации и поиска. У Solr есть HTTP/XML и JSON API, что делает возможным использовать Solr из всех более-менее популярных языков программирования. Также Solr можно очень гибко настраивать и подключать к нему внешние модули.

С момента слияния двух проектов в 2010 году[4] — Lucene и Solr — они оба делаются одной и той же командой из Apache Software Foundation, так что часто на эти продукты ссылаются как Lucene/Solr или Solr/Lucene.

История[править | править исходный текст]

Solr был создан в 2004 году Йоником Сили (Yonik Seeley) в CNET Networks как внутренний проект для поиска по сайту компании. Затем Йоник Сили наряду с Грантом Инджерсоллом (Grant Ingersoll) и Эриком Хатчером (Erik Hatcher) создали компанию LucidWorks, оказывающую коммерческую поддержку и обучение Apache Solr’у.

В январе 2006 года CNET Networks решила открыть исходный код, передав его в ASF как проект, основанный на Lucene.[5] Как и любой проект в ASF, Solr вошел в инкубационный период, в течение которого решались организационные, правовые и финансовые вопросы.

В январе 2006 года Solr был выведен из инкубационного статуса и стал стабильно расти, привлекая сильное сообщество пользователей, разработчиков и спонсоров. Хотя это был довольно новый проект, Solr уже использовался в нескольких высоконагруженных веб-сайтах.[6]

В сентябре 2008 года состоялся выпуск Solr версии 1.3, включающий в себя многие улучшения, например возможность распределенного поиска и оптимизация производительности.[7]

В ноябре 2009 года состоялся выпуск Solr версии 1.4, включающий в себя оптимизации индексирования, полнотекстового и фасетного поиска, улучшена обработка документов со сложным форматом (PDF, Word, HTML), улучшена кластеризация результатов поиска, основанная на Carrot2, улучшена интеграция с базами данных.[8]

В марте 2010 года проекты Lucene и Solr были слиты в один. Теперь оба продукта совместно разрабатываются одной командой разработчиков.

В 2011 году была изменена схема версионирования Solr’а. С этого момента версия Solr соответствует версии Lucene: после версии 1.4 следующей версией стала 3.1.[9]

В октябре 2012 года выпущена версия Solr 4.0, включающая новый функционал SolrCloud[10].[11]

В 2013 году было несколько релизов Solr: 4.1 в январе, 4.2 в марте, 4.2.1 в апреле и 4.3.0 в мае, включающие многие оптимизации, исправления ошибок, улучшения.

Основные возможности[править | править исходный текст]

  • Используется библиотека Lucene для полнотекстового поиска
  • фасетный поиск
  • подсветка результатов поиска
  • язык запросов поддерживает структурный поиск так же хорошо, как и поиск по тексту
  • множество форматов взаимодействия поверх HTTP, включая JSON, XML, CSV, бинарные форматы, а также множество библиотек для других языков программирования
  • веб-интерфейс для администрирования
  • репликация — это позволяет увеличить скорость обработки запросов
  • поиск в данных, распределённых на множество узлов — это позволяет увеличить объём данных для поиска
  • кластеризация результатов поиска, основанная на Carrot2
  • расширяемость за счёт подключаемых модулей (плагинов)
  • гибкое управление релевантностью
  • кэширование запросов, фильтров и документов
  • геопространственный поиск
  • автоматическое управление большими кластерами с использованием ZooKeeper

См. также[править | править исходный текст]

Примечания[править | править исходный текст]

Литература[править | править исходный текст]

  • Rafal Kuc' Apache Solr 4 Cookbook. — Packt Publishing, 2013. — 328 p. — ISBN 978-1-78216-132-5
  • David Smiley, Eric Pugh Apache Solr 3 Enterprise Search Server. — Packt Publishing, 2011. — 410 p. — ISBN 978-1-84951-606-8
  • Surendra Mohan Administrating Solr. — Packt Publishing, 2013. — 120 p. — ISBN 978-1-78328-325-5

Ссылки[править | править исходный текст]