Apache Solr - Apache Solr
Разработчики) | Фонд программного обеспечения Apache |
---|---|
Стабильный выпуск | 8.10.1 / 18 октября 2021 г .
|
Репозиторий | Репозиторий Solr |
Написано в | Джава |
Операционная система | Кроссплатформенность |
Тип | API поиска и индексации |
Лицензия | Лицензия Apache 2.0 |
Веб-сайт |
solr |
Solr (произносится как «солнечный») - это платформа корпоративного поиска с открытым исходным кодом, написанная на Java . Его основные функции включают полнотекстовый поиск , выделение совпадений , фасетный поиск , индексацию в реальном времени, динамическую кластеризацию, интеграцию с базами данных, функции NoSQL и обработку документов (например, Word, PDF). Обеспечивая распределенный поиск и репликацию индексов, Solr разработан с учетом масштабируемости и отказоустойчивости . Solr широко используется для корпоративного поиска и аналитики, имеет активное сообщество разработчиков и регулярные выпуски.
Solr работает как автономный сервер полнотекстового поиска. Он использует поисковую библиотеку Lucene Java в своей основе для полнотекстового индексирования и поиска и имеет REST- подобные API HTTP / XML и JSON, которые позволяют использовать его с большинством популярных языков программирования. Внешняя конфигурация Solr позволяет адаптировать его ко многим типам приложений без программирования на Java, и он имеет архитектуру плагинов для поддержки более продвинутой настройки.
Apache Solr разрабатывается совместно с проектом Apache Solr в Apache Software Foundation .
История
В 2004 году Йоник Сили (Yonik Seeley) из CNET Networks создал Solr в качестве внутреннего проекта по добавлению возможностей поиска на веб-сайт компании.
В январе 2006 года CNET Networks решила открыто опубликовать исходный код, пожертвовав его Apache Software Foundation . Как и любой новый проект Apache, он вступил в инкубационный период, который помог решить организационные, юридические и финансовые вопросы.
В январе 2007 года Solr перешел из инкубационного статуса в автономный проект верхнего уровня (TLP) и неуклонно рос за счет накопленных функций, тем самым привлекая пользователей, участников и коммиттеров. Несмотря на то, что он был довольно новым в качестве общедоступного проекта, он поддерживал несколько веб-сайтов с высокой посещаемостью.
В сентябре 2008 года был выпущен Solr 1.3, включающий, среди прочего, возможности распределенного поиска и улучшения производительности.
В январе 2009 года Йоник Сили вместе с Грантом Ингерсоллом и Эриком Хэтчером присоединился к Lucidworks (ранее Lucid Imagination), первой компании, предоставляющей коммерческую поддержку и обучение технологиям поиска Apache Solr. С тех пор предложения поддержки вокруг Solr были многочисленны.
В ноябре 2009 года был выпущен Solr 1.4. В этой версии были внесены улучшения в индексирование, поиск и фасетирование, а также множество других улучшений, таких как расширенная обработка документов ( PDF , Word , HTML ), кластеризация результатов поиска на основе Carrot2, а также улучшенная интеграция с базой данных. В выпуске также есть множество дополнительных плагинов.
В марте 2010 года проекты Lucene и Solr объединились. Раздельная загрузка продолжалась, но теперь продукты разрабатывались совместно одним набором коммиттеров.
В 2011 году схема номеров версий Solr была изменена, чтобы соответствовать Lucene. После Solr 1.4 следующий выпуск Solr был помечен как 3.1, чтобы сохранить Solr и Lucene с одним и тем же номером версии.
В октябре 2012 года была выпущена версия 4.0 Solr, включая новую функцию SolrCloud. В 2013 и 2014 годах было выпущено несколько выпусков Solr в линейке 4.x, постоянно расширяющих набор функций и повышающих надежность.
В феврале 2015 года был выпущен Solr 5.0, первый выпуск, в котором Solr упакован как отдельное приложение, что прекратило официальную поддержку развертывания Solr в качестве войны . Solr 5.3 имел встроенную подключаемую среду аутентификации и авторизации.
В апреле 2016 года был выпущен Solr 6.0. Добавлена поддержка выполнения параллельных SQL-запросов в коллекциях SolrCloud. Включает поддержку StreamExpression и новый драйвер JDBC для интерфейса SQL.
В сентябре 2017 года был выпущен Solr 7.0. В этом выпуске, помимо прочего, добавлена поддержка нескольких типов реплик, автоматическое масштабирование и математический механизм.
В марте 2019 года была выпущена Solr 8.0, включающая множество исправлений ошибок и обновлений компонентов. Узлы Solr теперь могут прослушивать и обслуживать запросы HTTP / 2. Имейте в виду, что по умолчанию внутренние запросы также отправляются с использованием HTTP / 2. Кроме того, был добавлен вход в пользовательский интерфейс администратора с поддержкой BasicAuth и Kerberos. И теперь возможно построение математических выражений в Apache Zeppelin.
В ноябре 2020 года Bloomberg пожертвовал оператора Solr проекту Lucene / Solr. Оператор Solr помогает развертывать и запускать Solr в Kubernetes .
В феврале 2021 года Solr был создан как отдельный проект Apache (TLP), независимый от Lucene.
Операции
Для поиска в документе Apache Solr последовательно выполняет следующие операции:
- Индексирование: конвертирует документы в машиночитаемый формат.
- Запросы: понимание условий запроса, заданного пользователем. Эти термины могут быть, например, изображениями или ключевыми словами.
- Сопоставление: Solr сопоставляет пользовательский запрос с документами, хранящимися в базе данных, чтобы найти соответствующий результат.
- Ранжирование: как только механизм выполняет поиск проиндексированных документов, он ранжирует результаты по их релевантности.
Сообщество
В Solr есть как частные лица, так и компании, которые вносят новые функции и исправляют ошибки.
Интеграция Solr
Solr входит в состав встроенного поиска во многих приложениях, таких как системы управления контентом и системы управления корпоративным контентом . Все дистрибутивы Hadoop от Cloudera , Hortonworks и MapR включают Solr в качестве поисковой системы для своих продуктов, предназначенных для работы с большими данными . DataStax DSE интегрирует Solr в качестве поисковой системы с Cassandra . Solr поддерживается в качестве конечной точки в различных средах обработки данных и средах интеграции Enterprise .
Solr предоставляет стандартные HTTP REST-подобные API с поддержкой как XML, так и JSON , и будет интегрироваться с любой системой или языком программирования, поддерживающими эти стандарты. Для простоты использования доступны также клиентские библиотеки для Java , C # , PHP , Python , Ruby и большинства других популярных языков программирования.
Смотрите также
- Открытая семантическая структура
- Ориентированная на поиск архитектура
- Список информационно-поисковых библиотек
использованная литература
Библиография
- Грейнджер, Трей; Поттер, Тимоти (март 2014 г.). Solr в действии (1-е изд.). Публикации Мэннинга . п. 664. ISBN 9781617291029.
- Смайли, Дэвид; Пью, Эрик; Париса, Кранти; Митчелл, Мэтт (февраль 2014 г.). Сервер поиска предприятия Apache Solr 4 (1-е изд.). Packt Publishing . п. 451. ISBN. 9781782161363.
- Серафини, Альфредо (декабрь 2013 г.). Руководство для начинающих по Apache Solr (1-е изд.). Packt Publishing . п. 324. ISBN 9781782162520.
- Рафалович, Александр (июнь 2013 г.). Instant Apache Solr для индексирования данных How-to (1-е изд.). Packt Publishing . п. 90. ISBN 9781782164845.
- Куч, Рафал (январь 2013 г.). Поваренная книга Apache Solr 4 (1-е изд.). Packt Publishing . п. 328. ISBN 9781782161325.
- Смайли, Дэвид; Пью, Эрик (20 ноября 2011 г.). Сервер поиска предприятия Apache Solr 3 (1-е изд.). Packt Publishing . п. 418. ISBN 1-84951-606-5.
- Куч, Рафал (22 июля 2011 г.). Поваренная книга Apache Solr 3.1 (1-е изд.). Packt Publishing . п. 300. ISBN 1-84951-218-3.
- Смайли, Дэвид; Пью, Эрик (19 августа 2009 г.). Solr 1.4 Enterprise Search Server (1-е изд.). Packt Publishing . п. 336. ISBN. 1-84719-588-1.