Apache Solr
Последнее изменение этой страницы: 16:40, 28 января 2018.
![]() | |
Разработчики: | Apache Software Foundation |
---|---|
Постоянный выпуск: | 7.0.0 / 20 September 2017 года |
Состояние разработки: | Active |
Написана на: | Java |
Операционная система: | Кросс-платформенное |
Платформа: | JVM |
Тип ПО: | Search and index API |
Лицензия: | Apache License 2.0 |
Веб-сайт |
lucene |
Apache Solr - популярная, стремительно развивающаяся поисковая платформа с открытым исходным кодом, построенная на Apache Lucene™. Solr обладает высокой надежностью, масштабируемостью и отказоустойчивостью, обеспечивая распределенное индексирование, репликацию и балансировку нагрузки, автоматическое восстановление после сбоев, централизованную конфигурацию и многое другое. Solr поддерживает функции поиска и навигации многих крупнейших интернет-сайтов в мире. Так как в Solr есть возможность распределенного поиска и репликации, Solr хорошо масштабируем.[Источник 1]
Solr работает как автономный полнотекстовый поисковый сервер. Он использует библиотеку поиска Lucene Java в своей основе для полнотекстового индексирования и поиска, и имеет REST-подобные API HTTP / XML и JSON, которые делают его пригодным для использования на самых популярных языках программирования. Внешняя конфигурация Solr позволяет адаптировать ее ко многим типам приложений без Java-кодирования и иметь архитектуру плагина для поддержки более детальной настройки.
Apache Lucene и Apache Solr выпускаются одной и той же командой разработчиков Apache Software Foundation, поскольку эти два проекта были объединены в 2010 году. Обычно речь идет о технологии или продуктах Lucene/Solr или Solr/Lucene.
Содержание
- 1 История
- 2 Основные возможности
- 3 Операции Apache Solr
- 4 Интеграция Solr
- 5 Системные требования
- 6 Публичные сайты, использующие Solr
- 7 Конфигурирование Solr
- 8 Работа с Solr
- 9 Интерфейс администратора Solr
- 10 API Javadocs
- 10.1 Solr 7.0.1 solr-solrj API
- 10.2 Solr 7.0.1 solr-core API
- 10.3 Solr 7.0.1 solr-analytics API
- 10.4 Solr 7.0.1 solr-clustering API
- 10.5 Solr 7.0.1 solr-dataimporthandler API
- 10.6 Solr 7.0.1 solr-cell API
- 10.7 Solr 7.0.1 solr-langid API
- 10.8 Solr 7.0.1 solr-ltr API
- 10.9 Solr 7.0.1 solr-uima API
- 10.10 Solr 7.0.1 solr-velocity API
- 10.11 Solr 7.0.1 Test Framework API
- 11 Ссылки
- 12 Источники
История
Solr был создан в 2004 году Йоником Сили (Yonik Seeley) в CNET Networks как внутренний проект для поиска по сайту компании. Затем Йоник Сили наряду с Грантом Инджерсоллом (Grant Ingersoll) и Эриком Хатчером (Erik Hatcher) создали компанию LucidWorks, оказывающую коммерческую поддержку и обучение Apache Solr’у.
В январе 2006 года CNET Networks решила открыть исходный код, передав его в ASF как проект, основанный на Lucene. Как и любой проект в ASF, Solr вошёл в инкубационный период, в течение которого решались организационные, правовые и финансовые вопросы.
В январе 2007 года Solr был выведен из инкубационного статуса и стал стабильно расти, привлекая сильное сообщество пользователей, разработчиков и спонсоров. Хотя это был довольно новый проект, Solr уже использовался в нескольких высоконагруженных веб-сайтах.[Источник 2]
В сентябре 2008 года состоялся выпуск Solr версии 1.3, включающий в себя многие улучшения, например возможность распределенного поиска и оптимизация производительности.[Источник 3]
В ноябре 2009 года состоялся выпуск Solr версии 1.4, включающий в себя оптимизации индексирования, полнотекстового и фасетного поиска, улучшена обработка документов со сложным форматом (PDF, Word, HTML), улучшена кластеризация результатов поиска, основанная на Carrot2, улучшена интеграция с базами данных.[Источник 4]
В марте 2010 года проекты Lucene и Solr были слиты в один. Теперь оба продукта совместно разрабатываются одной командой разработчиков.
В 2011 году была изменена схема версионирования Solr’а. С этого момента версия Solr соответствует версии Lucene: после версии 1.4 следующей версией стала 3.1.[Источник 5]
В октябре 2012 года выпущена версия Solr 4.0, включающая новый функционал SolrCloud.
В 2013 году было несколько релизов Solr: 4.1 в январе, 4.2 в марте, 4.2.1 в апреле и 4.3.0 в мае, включающие многие оптимизации, исправления ошибок, улучшения.
В феврале 2015 года был выпущен Solr 5.0, первый релиз, в котором Solr упакован как отдельное приложение. В Solr 5.3 реализована встроенная встраиваемая система аутентификации и авторизации.
В апреле 2016 года был выпущен Solr 6.0. Добавлена поддержка выполнения запросов Parallel SQL в коллекциях SolrCloud. Включает поддержку StreamExpression и новый драйвер JDBC для интерфейса SQL.
20 сентября 2017 года вышла версия 7.0. Этот выпуск, помимо прочего, добавил поддержку нескольких типов реплик, автомасштабирования и движка Math.
Основные возможности
- Подсветка результатов поиска
- Веб-интерфейс для администрирования
- Использует библиотеку Lucene для полнотекстового поиска
- Граничная навигация
- Язык запросов поддерживает структурированный, а также текстовый поиск
- Режим работы без схемы и схема REST API
- JSON, XML, PHP, Ruby, Python, XSLT, Velocity и пользовательские двоичные выходные форматы Java через HTTP
- Интерфейс администрирования HTML
- Встроенная система безопасности: аутентификация, авторизация, SSL
- Репликация на другие серверы Solr - позволяет масштабировать QPS и обеспечивает высокую доступность
- Распределенный поиск через Sharding - позволяет масштабировать объем содержимого
- Результаты поиска кластеров на основе Carrot2
- Расширяем через плагины
- Гибкая релевантность - повышение по функциональным запросам
- Кэширование - запросы, фильтры и документы
- Встраивается в Java-приложение
- Геопространственный поиск, включая несколько точек на документы и полигоны
- Автоматическое управление большими кластерами через ZooKeeper
- Функциональные запросы
- Свертывание и группировка полей
- Авто-предложения
- Streaming
Операции Apache Solr
Apache Solr - мощный инструмент с потрясающей возможностью поиска. Для поиска документа он последовательно выполняет следующие операции:
- Индексирование: прежде всего, оно преобразует документы в машиночитаемый формат, который называется индексированием.
- Запрос: понимание условий запроса, заданного пользователем. Этими терминами могут быть изображения, ключевые слова и многое другое.
- Сопоставление: Solr сопоставляет пользовательский запрос с документами, хранящимися в базе данных, для поиска соответствующего результата.
- Ранжирование результата: Как только движок найдет индексированные документы, он оценивает результаты в соответствии с их релевантностью.
Интеграция Solr
Solr поставляется в виде встроенного поиска во многих приложениях, таких как системы управления контентом и системы управления корпоративным контентом. Hadoop от Cloudera, Hortonworks и MapR все связывают Solr как поисковую систему для своих продуктов, продаваемых для больших данных.
DataStax DSE объединяет Solr как поисковую систему с Cassandra. Solr поддерживается в качестве конечной точки в различных структурах обработки данных и инфраструктур интеграции предприятия. Solr предоставляет отраслевые стандарты HTTP-REST-API с поддержкой как XML, так и JSON и будет интегрироваться с любой системой или языком программирования, поддерживающим эти стандарты. Для удобства использования существуют также клиентские библиотеки, доступные для Java, C#, PHP, Python, Ruby и большинства других популярных языков программирования.
Системные требования
- Apache Solr работает на Java 8 или выше.
- Рекомендуется всегда использовать последнюю версию версии вашей виртуальной машины Java, поскольку ошибки могут повлиять на Solr. Обзор известных ошибок JVM можно найти на http://wiki.apache.org/lucene-java/JavaBugs
- Со всеми версиями Java настоятельно не рекомендуется использовать экспериментальные опции -XX JVM.
- Требования к процессору, диску и памяти основаны на многих вариантах реализации Solr (размер документа, количество документов и количество найденных удалений). На странице контрольных показателей есть информация, связанная с производительностью на определенных платформах.
Публичные сайты, использующие Solr
Основано на Solr Wiki:[Источник 6]
- Helprace использует Solr 4.0 для управления поисковой системой и поисковыми предложениями.
- Openindex управляется кластером Apache Solr, чтобы обеспечить поиск сайтов для клиентов с миллионами URL-адресами.
- Netflix использует Solr для своей функции поиска по сайту
- FINN.no является ведущим официальным сайтом Норвегии, с категориями Недвижимость, Автомобили, Объявления, Вакансии, Путешествия и тд. Solr обеспечивает поиск и навигацию по каждой категории.
- Норвежская налоговая администрация использует Solr для поиска по веб-сайту на основе EPI.
- Dagens Næringsliv - ведущая финансовая газета Норвегии. Solr контролирует главный поиск новостей, а также налоговый список, винный клуб и многое другое.
- TradeWinds - это интернет-газета, посвященная новостям о доставке, которую ведет норвежская NHST Media Group. Solr обеспечивает поиск новостей и поиск заданий.
- ReCharge - это интернет-газета, посвященная возобновляемым/зеленым энергетическим новостям. Управляется норвежской NHST Media Group. Solr обеспечивает поиск новостей.
- Akademika.no - это книжный магазин в Норвегии с акцентом на книги для студентов и школьников. Построен с помощью Drupal, и Solr обеспечивает поиск через плагин Drupal Solr.
- Ovttas/Aktan/Aktesne использует Solr для грамотного поиска всех учебных материалов, доступных для языков Саами. Сайт предназначен для учителей Саами в Норвегии.
Конфигурирование Solr
С помощью SolrCloud большинство конфигурационных данных, отличных от solr.xml, хранятся в ZooKeeper. Приведенная ниже информация относится к Solr, когда она не работает в режиме облака. Solr сконфигурирован с использованием трех основных файлов:
- solr.xml - Solr.xml 4.4 и выше или Solr.xml (поддерживается через 4.x)
- solrconfig.xml - SolrConfigXml
- schema.xml - SchemaXml
Центральный каталог для Solr известен как solr.solr.home или solr/home в конфигурациях контейнеров сервлетов. Если он не определен, то по умолчанию используется «./solr» - это каталог с именем solr в текущем рабочем каталоге.
Файл solr.xml - это первый файл конфигурации, который Solr пытается найти, и он находится в файле solr.solr.home. Это дает глобальную конфигурационную информацию Solr и сообщает, где найти ее ядра. Остальная часть конфигурации поступает из каждого определенного ядра. Если solr.xml не существует, Solr попытается начать работу в одноядерном режиме. Поддержка одноядерного режима, скорее всего, будет удалена в версии 5.0.
В каждом ядре Solr будет искать файл conf/solrconfig.xml. Solrconfig может указывать Solr на другие файлы конфигурации, например conf/dih-config.xml для обработчика dataimport. Если имя файла конфигурации не изменено в файле solrconfig.xml, для загрузки схемы будет использоваться conf/schema.xml.
Работа с Solr
Установка Solr
В целях данного руководства предполагается, что вы находитесь в среде Linux или Mac. У вас также должен быть установлен JDK 6 или выше.
wget http://download.nextag.com/apache/lucene/solr/5.3.0/solr-5.3.0.tgz tar -zxvf solr-5.3.0.tgz cd solr-5.3.0
Запуск Solr
Solr поставляется с примером каталога, который содержит некоторые примеры файлов, которые мы можем использовать. Доступны следующие примеры:
cloud : SolrCloud example dih : Data Import Handler (rdbms, mail, rss, tika) schemaless : Schema-less example (schema is inferred from data during indexing) techproducts : Kitchen sink example providing comprehensive examples of Solr features
Чтобы запустить Solr с одним из этих примеров, используйте bin / solr -e [ПРИМЕР], где [ПРИМЕР] является одним из указанных выше. например bin / solr -e dih. Давайте запустим пример techproducts.
bin/solr -e techproducts
Вы должны увидеть что-то подобное в терминале:
Creating Solr home directory /tmp/solrt/solr-5.3.0/example/techproducts/solr Starting up Solr on port 8983 using command: bin/solr start -p 8983 -s "example/techproducts/solr" Waiting up to 30 seconds to see Solr running on port 8983 [/] Started Solr server on port 8983 (pid=12281). Happy searching! Setup new core instance directory: /tmp/solrt/solr-5.3.0/example/techproducts/solr/techproducts Creating new core 'techproducts' using command: http://localhost:8983/solr/admin/cores?action=CREATE&name=techproducts&instanceDir=techproducts { "responseHeader":{ "status":0, "QTime":2060}, "core":"techproducts"} Indexing tech product example docs from /tmp/solrt/solr-5.3.0/example/exampledocs SimplePostTool version 5.0.0 Posting files to [base] url http://localhost:8983/solr/techproducts/update using content-type application/xml... POSTing file money.xml to [base] POSTing file manufacturers.xml to [base] POSTing file hd.xml to [base] POSTing file sd500.xml to [base] POSTing file solr.xml to [base] POSTing file utf8-example.xml to [base] POSTing file mp500.xml to [base] POSTing file monitor2.xml to [base] POSTing file vidcard.xml to [base] POSTing file ipod_video.xml to [base] POSTing file monitor.xml to [base] POSTing file mem.xml to [base] POSTing file ipod_other.xml to [base] POSTing file gb18030-example.xml to [base] 14 files indexed. COMMITting Solr index changes to http://localhost:8983/solr/techproducts/update... Time spent: 0:00:00.491 Solr techproducts example launched successfully. Direct your Web browser to http://localhost:8983/solr to visit the Solr Admin UI
Чтобы убедиться, что Solr запущен, вы можете сделать следующее:
bin/solr status
Что должно вывести на экран что-то вроде этого:
Found 1 Solr nodes: Solr process 12281 running on port 8983 { "solr_home":"/tmp/solrt/solr-5.3.0/example/techproducts/solr/", "version":"5.3.0 1696229 - noble - 2015-08-17 17:10:43", "startTime":"2015-09-14T22:41:56.876Z", "uptime":"0 days, 0 hours, 1 minutes, 7 seconds", "memory":"32.7 MB (%6.7) of 490.7 MB"}
Solr теперь работает!
После запуска Solr вы можете перейти к его интерфейсу администратора с помощью браузера. Например:
Indexing Data
Сценарий запуска уже добавил некоторые примеры данных в наш экземпляр Solr, но мы собираемся повторно добавить некоторые документы, чтобы увидеть, как все это работает.
В папке example/exampledocs содержатся некоторые файлы XML, которые мы можем использовать.
Быстрый взгляд на один из файлов XML показывает, что каждый документ Solr состоит из нескольких полей. Каждое поле имеет имя и значение. Например:
<add><doc> <field name="id">9885A004</field> <field name="name">Canon PowerShot SD500</field> <field name="manu">Canon Inc.</field> ... <field name="inStock">true</field> </doc></add>
Post.jar в той же папке обеспечивает удобный способ добавления файлов в Solr.
cd example/exampledocs java -Dc=techproducts -jar post.jar sd500.xml
Это дает:
SimplePostTool version 5.0.0
Posting files to [base] url http://localhost:8983/solr/techproducts/update using content-type application/xml...
POSTing file sd500.xml to [base]
1 files indexed.
COMMITting Solr index changes to http://localhost:8983/solr/techproducts/update...
Time spent: 0:00:00.186
Этот ответ говорит о том, что операция POST прошла успешно. Обратите внимание, что есть два основных способа добавления данных в Solr:
- HTTP
- Native client
Поиск
Посмотрим, можем ли мы получить документ, который мы только что добавили.
Поскольку Solr принимает HTTP-запросы, вы можете использовать свой веб-браузер для общения с Solr: http://localhost:8983/solr/techproducts/select?q=sd500&wt=json Это возвращает следующий результат формата JSON:
{ "responseHeader": { "status": 0, "QTime": 3, "params": { "q": "sd500", "wt": "json" } }, "response": { "numFound": 1, "start": 0, "docs": [ { "id": "9885A004", "name": "Canon PowerShot SD500", "manu": "Canon Inc.", "manu_id_s": "canon", "cat": [ "electronics", "camera" ], "features": [ "3x zoop, 7.1 megapixel Digital ELPH", "movie clips up to 640x480 @30 fps", "2.0\" TFT LCD, 118,000 pixels", "built in flash, red-eye reduction" ], "includes": "32MB SD card, USB cable, AV cable, battery", "weight": 6.4, "price": 329.95, "price_c": "329.95,USD", "popularity": 7, "inStock": true, "manufacturedate_dt": "2006-02-13T15:26:37Z", "store": "45.19614,-93.90341", "_version_": 1512330534874775600 } ] } }
Успешно! Быстрая проверка с помощью sd500.xml должна подтвердить, что все в порядке. Давайте теперь сделаем настоящий поиск. Вот демонстрация получения имени и идентификатора всех документов с помощью inStock = false: http://localhost:8983/solr/techproducts/select?q=inStock:false&wt=json&fl=id,name
{ "responseHeader": { "status": 0, "QTime": 3, "params": { "fl": "id,name", "q": "inStock:false", "wt": "json" } }, "response": { "numFound": 4, "start": 0, "docs": [ { "id": "EN7800GTX/2DHTV/256M", "name": "ASUS Extreme N7800GTX/2DHTV (256 MB)" }, { "id": "100-435805", "name": "ATI Radeon X1900 XTX 512 MB PCIE Video Card" }, { "id": "F8V7067-APL-KIT", "name": "Belkin Mobile Power Cord for iPod w/ Dock" }, { "id": "IW-02", "name": "iPod & iPod Mini USB 2.0 Cable" } ] } }
Выключение
Чтобы выключить Solr, используйте команду:
bin/solr stop
Это полностью отключит Solr.
Solr достаточно надёжен, поэтому в ситуациях сбоев ОС или дисков маловероятно, что индекс Solr будет поврежден.
Интерфейс администратора Solr
Solr Links
Solr Link | Отображения |
---|---|
SCHEMA | Отображает файл схемы XML, который определяет коллекцию для этого экземпляра Solr |
CONFIG | Отображает конфигурационный файл Solr, solrconfig.xml |
ANALYSIS | Ссылки на графический интерфейс анализа полей для проверки того, как будут себя вести анализы для разных полей |
STATISTICS | Отображает подмножество данных, отображаемых на странице INFO. Эти данные изменяются, поскольку объекты собирают статистику с течением времени. См. SolrAdminStats |
INFO | Отображает страницу, отображающую данные в этих категориях:
Информация на странице INFO не изменяется после запуска. |
DISTRIBUTION | Если вы просматриваете экземпляр Master, каждая строка отображает имя подчиненного устройства и моментальные снимки, которые он получил. Если вы посмотрите на экземпляр Slave, он отобразит одну строку, в которой будет отображаться имя последней попытки получить снимок с его мастера. См. Также CollectionDistribution |
PING | В случае успеха HTTP 200 возвращается в браузер, но ничего не отображается. В случае неудачи возвращается HTTP 500 (ошибка) и отображается сообщение об исключении |
LOGGING | Отображает страницу уровня журнала, которая позволяет вам устанавливать эти уровни:
Каждый вызывает action.jsp, который показывает, не удалось ли выполнить действие. В случае успеха отображается слово «successed», после чего вы вернетесь на домашнюю страницу администратора. Если не удалось, то на странице Действия отобразится ошибка. Подробную информацию о уровнях ведения журнала см. На странице SUN в Class Logger. |
AppServer Links
Ссылка сервера приложений | Отображает |
---|---|
PROPERTIES | Отображает JSP, который содержит свойства виртуальной машины Java (JVM) |
THREAD DUMP | Отображает дамп потока сервера приложений |
ENABLE/DISABLE | Эта ссылка отображается только в том случае, если в блоке администратора конфигурации Solr появляется директива healthcheck |
Make a Query Links
Создание ссылки запроса | Значение |
---|---|
FULL INTERFACE | Чтобы сделать более индивидуальный запрос, используйте страницу полного интерфейса, где вы можете указать следующее: полное заявление Solr / Lucene, версию протокола, начало строки, максимальное количество строк, тип запроса и таблицу стилей |
Solr/Lucene Statement | Используйте это поле для запроса на языке запросов Lucene. Для получения подробной информации о Lucene см. Страницу Lucene от Apache |
Protocol Version | Версия формата, используемая для возврата ответов. По умолчанию установлено последнее, в настоящее время 2.1 |
Start Row | Нулевое смещение совпадающих документов для возврата |
Maximum Rows | Максимальное количество документов для возврата |
Query Type | Выбирает обработчик запроса для этого запроса. По умолчанию: * standard * |
API Javadocs
Solr 7.0.1 solr-solrj API
Сервер поиска Apache Solr: Solr-j | |
---|---|
Пакеты | Описание |
org.apache.solr.client.solrj | Первичные API для связи с сервером Solr с клиента Java |
org.apache.solr.client.solrj.beans | Аннотирование сопоставления клиентских объектов с документами Solr |
org.apache.solr.client.solrj.cloud.autoscaling | Общие классы для автомасштабирования фильтрующих узлов и сортировки |
org.apache.solr.client.solrj.impl | Конкретные реализации классов API-клиентов |
org.apache.solr.client.solrj.io | API потоковой агрегирования |
org.apache.solr.client.solrj.io.comp | Компараторы API потоковой агрегирования |
org.apache.solr.client.solrj.io.eq | Эквалайзер API потоковой агрегирования |
org.apache.solr.client.solrj.io.eval | Оценщики API потоковой агрегирования |
org.apache.solr.client.solrj.io.graph | Потоковые графики |
org.apache.solr.client.solrj.io.ops | Операции для API потоковой агрегирования |
org.apache.solr.client.solrj.io.sql | Пример использования драйвера JDBC |
org.apache.solr.client.solrj.io.stream | Потоковые реализации API потоковой агрегирования |
org.apache.solr.client.solrj.io.stream.expr | Язык выражений для API потоковой агрегирования |
org.apache.solr.client.solrj.io.stream.metrics | Метрический пакет |
org.apache.solr.client.solrj.request | Удобные классы для работы с различными типами запросов Solr |
org.apache.solr.client.solrj.request.schema | Удобные классы для создания запросов API схемы |
org.apache.solr.client.solrj.response | Удобные классы для работы с различными типами ответов Solr |
org.apache.solr.client.solrj.response.schema | Классы удобства для работы с ответами API Schema |
org.apache.solr.client.solrj.util | Утилиты для клиентских приложений Solr |
org.apache.solr.common | Общие классы, используемые повторно как для клиентов, так и для сервера для обработки документов, которые должны быть проиндексированы |
org.apache.solr.common.cloud | Общие классы Solr Cloud и ZooKeeper, используемые повторно на обоих клиентах и сервере |
org.apache.solr.common.cloud.rule | Классы для управления стратегией размещения реплик при работе в режиме SolrCloud |
org.apache.solr.common.luke | Общие константы, используемые LukeRequestHandler |
org.apache.solr.common.params | Константы параметров и перечисления |
org.apache.solr.common.util | Общие классы утилиты, используемые повторно как на клиенте, так и на сервере |
Solr 7.0.1 solr-core API
Сервер поиска Apache Solr (Core Javadocs) | |
---|---|
Пакет | Описание |
org.apache.solr | Обычно повторно используемые классы и интерфейсы |
org.apache.solr.analysis | Заводы и классы, специфичные для текстового анализа и создания TokenStreams |
org.apache.solr.api | Обычно используемые классы для API Solr V2 |
org.apache.solr.client.solrj.embedded | Реализации клиента SolrJ для встроенного доступа solr |
org.apache.solr.cloud | Классы для работы с ZooKeeper при работе в режиме SolrCloud |
org.apache.solr.cloud.autoscaling | Пакет для классов, связанных с автомасштабированием |
org.apache.solr.cloud.overseer | Классы для обновления состояния кластера в режиме SolrCloud |
org.apache.solr.cloud.rule | Классы для управления стратегией размещения реплик при работе в режиме SolrCloud |
org.apache.solr.core | Основные классы, реализующие внутренние функции Solr и управление SolrCores |
org.apache.solr.core.backup | Основные классы для функции резервного копирования / восстановления Solr |
org.apache.solr.core.backup.repository | BackupRepository Предоставление интерфейсов репозитория для резервного копирования / восстановления для подключения различных систем хранения данных |
org.apache.solr.core.snapshots | Основные классы для функции постоянных снимков Solr |
org.apache.solr.handler | Конкретные реализации SolrRequestHandler |
org.apache.solr.handler.admin | Реализации SolrRequestHandler для включения его пользовательского интерфейса Solr Admin |
org.apache.solr.handler.component | Реализации SearchComponent для использования в SearchHandler |
org.apache.solr.handler.loader | Реализации ContentStreamLoader для использования в реализациях ContentStreamHandlerBase |
org.apache.solr.handler.sql | Классы, связанные с реализацией Apache Calcite в SQLHandler |
org.apache.solr.highlight | API SolrHighlighter и соответствующие реализации и утилиты |
org.apache.solr.index | Связанные с индексацией классы |
org.apache.solr.index.hdfs | Реализация HDFS CheckIndex |
org.apache.solr.internal.csv | Внутренние классы, используемые для чтения / записи CSV |
org.apache.solr.internal.csv.writer | Внутренние классы, используемые для чтения / записи CSV |
org.apache.solr.legacy | Устаревшие вещи! |
org.apache.solr.logging | API, связанные с захватом информации о событиях журнала в LoggingHandler |
org.apache.solr.logging.jul | Реализация LogWatcher на основе JUL |
org.apache.solr.logging.log4j | Реализация LogWatcher на основе Log4j |
org.apache.solr.metrics | SolrCoreMetricManager отвечает за сбор показателей из SolrMetricProducer's |
org.apache.solr.metrics.reporters | В этом пакете размещены «подключаемые» метрические репортеры, которые наследуются от класса SolrMetricReporter |
org.apache.solr.metrics.reporters.jmx | Этот пакет содержит компоненты, которые поддерживают SolrJmxReporter |
org.apache.solr.metrics.reporters.solr | Этот пакет содержит реализации SolrMetricReporter, специфичные для отчетов SolrCloud |
org.apache.solr.parser | Solr родной вариант Lucene Classic QueryParser |
org.apache.solr.query | Запросы Solr |
org.apache.solr.request | API и классы для работы с запросами Solr |
org.apache.solr.request.json | Связанные классы JSON |
org.apache.solr.request.macro | Подстановка параметров / макрораспределение |
org.apache.solr.response | API и реализации QueryResponseWriter для форматирования ответов запроса Solr |
org.apache.solr.response.transform | API и реализации DocTransformer для изменения документов в ответах на запрос Solr |
org.apache.solr.rest | API-интерфейс Solr RESTful через Restlet |
org.apache.solr.rest.schema | Предоставляет доступ RESTful API к схеме Solr с помощью Restlet |
org.apache.solr.rest.schema.analysis | Функциональность, связанная с анализом для доступа RESTful API к схеме Solr с использованием Restlet |
org.apache.solr.schema | Реализации IndexSchema и FieldType для включения schema.xml |
org.apache.solr.search | API и классы для анализа и обработки запросов на поиск |
org.apache.solr.search.facet | API и классы API-интерфейса JSON Facet |
org.apache.solr.search.function | Реализации Solr для ValueSource для функциональных запросов |
org.apache.solr.search.function.distance | Реализации Solr для ValueSource для запросов на основе расстояния |
org.apache.solr.search.grouping | API и классы для реализации группировки результатов |
org.apache.solr.search.grouping.collector | Группировка сборщиков |
org.apache.solr.search.grouping.distributed | Внутренние классы, используемые для реализации распределенной группировки результатов |
org.apache.solr.search.grouping.distributed.command | Внутренние классы, используемые для реализации распределенной группировки результатов |
org.apache.solr.search.grouping.distributed.requestfactory | Внутренние классы, используемые для реализации распределенной группировки результатов |
org.apache.solr.search.grouping.distributed.responseprocessor | Внутренние классы, используемые для реализации распределенной группировки результатов |
org.apache.solr.search.grouping.distributed.shardresultserializer | Внутренние классы, используемые для реализации распределенной группировки результатов |
org.apache.solr.search.grouping.endresulttransformer | API и классы для преобразования результатов группирования результатов в соответствующий формат ответа |
org.apache.solr.search.join | Классы, связанные с объединениями |
org.apache.solr.search.mlt | API и классы для реализации MoreLikeThis (mlt) QueryParser |
org.apache.solr.search.similarities | Factories для различных встроенных моделей оценки Lucene |
org.apache.solr.search.stats | API и классы, реализующие компонент Stats, используемый для вычисления частоты документов |
org.apache.solr.security | Обычно используемые классы для системы безопасности Solr |
org.apache.solr.servlet | Классы, связанные с сервлетом, для включения HTTP-протокола Solr |
org.apache.solr.servlet.cache | Кэширование связанных классов, используемых в HTTP-API Solr |
org.apache.solr.spelling | API и классы, используемые SpellCheckComponent |
org.apache.solr.spelling.suggest | API и классы, используемые SpellCheckComponent |
org.apache.solr.spelling.suggest.fst | Заводы для FST и анализирующие советы |
org.apache.solr.spelling.suggest.jaspell | Заводы для разработчиков, основанных на JaSpell |
org.apache.solr.spelling.suggest.tst | Factories для TST based Suggesters |
org.apache.solr.store.blockcache | Реализация блок-кэширования HDFS |
org.apache.solr.store.hdfs | Реализация каталога HDFS |
org.apache.solr.uninverting | Поддержка создания docvalues «на лету» из инвертированного индекса во время выполнения |
org.apache.solr.update | API и классы для управления обновлениями индексов |
org.apache.solr.update.processor | API-интерфейсы и реализации UpdateRequestProcessorFactory для использования в UpdateRequestProcessorChains |
org.apache.solr.util | Общие классы полезности, используемые в Solr |
org.apache.solr.util.configuration | Общие API Util, связанные с конфигурацией Solr |
org.apache.solr.util.hll | Вилка пакета Java-HyperLogLog изменена, чтобы не зависеть от fastutil и с очистками, чтобы сделать ее стройной и чистой |
org.apache.solr.util.plugin | Общие API, связанные с внедрением плагинов Solr |
org.apache.solr.util.stats | Утилиты для сбора статистики |
org.apache.solr.util.xslt | Утилиты, связанные с XSLT (устаревший пакет, не добавляйте новые классы) |
Solr 7.0.1 solr-analytics API
Сервер поиска Apache Solr: компонент Google Analytics | |
---|---|
пакет | описание |
org.apache.solr.analytics | Компонент solr для вычисления комплексной аналитики по результатам поиска |
org.apache.solr.analytics.facet | Границы, поддерживаемые компонентом аналитики |
org.apache.solr.analytics.facet.compare | Компараторы, используемые для сортировки ведер аналитической грани |
org.apache.solr.analytics.function | Функции, используемые для выражения аналитики |
org.apache.solr.analytics.function.field | Поля, используемые для выражения аналитики |
org.apache.solr.analytics.function.mapping | Функции отображения, используемые для выражения аналитики |
org.apache.solr.analytics.function.reduction | Функции сокращения для использования в выражениях аналитики |
org.apache.solr.analytics.function.reduction.data | Сокращение сбора данных для использования при вычислении выражений аналитики |
org.apache.solr.analytics.plugin | Плагины MBean для сбора статистики |
org.apache.solr.analytics.stream | Классы для управления ввода-вывода между осколками |
org.apache.solr.analytics.stream.reservation | Классы резервирования для одного типа данных, хранящиеся в одном сборнике данных сокращения |
org.apache.solr.analytics.stream.reservation.read | Чтение классов для одного типа данных, хранящихся в одном сборнике данных сокращения |
org.apache.solr.analytics.stream.reservation.write | Написание классов для одного типа данных, хранящихся в одном сборнике данных сокращения |
org.apache.solr.analytics.util | Классы полезности для компонента аналитики |
org.apache.solr.analytics.util.function | Чистые функциональные интерфейсы Java |
org.apache.solr.analytics.value | Типы значений для выражений аналитики |
org.apache.solr.analytics.value.constant | Константные значения, которые будут использоваться в выражениях аналитики |
org.apache.solr.handler | Обработчик для запросов распределенной аналитики к осколкам |
org.apache.solr.handler.component | Компонент поиска для компонента аналитики |
org.apache.solr.response | Response Writer для ответа распределенной аналитики от осколка |
Solr 7.0.1 solr-clustering API
Сервер поиска Apache Solr: вкладка text clustering contrib | |
---|---|
Пакеты | Описание |
org.apache.solr.handler.clustering | ClusteringComponent и общие API для конкретных реализаций |
org.apache.solr.handler.clustering.carrot2 | CarrotClusteringEngine и связанные классы для использования в ClusteringComponent |
Solr 7.0.1 solr-dataimporthandler API
Поиск Apache Solr: DataImportHandler contrib | |
---|---|
Пакеты | Описание |
org.apache.solr.handler.dataimport | DataImportHandler и связанный код |
org.apache.solr.handler.dataimport.config | Классы полезности для анализа и моделирования конфигурации DIH |
Solr 7.0.1 solr-cell API
Сервер поиска Apache Solr: Solr Cell contrib | |
---|---|
Пакеты | Описание |
org.apache.solr.handler.extraction | ExtractingRequestHandler и связанный код |
Solr 7.0.1 solr-langid API
Сервер поиска Apache Solr: Solr Language Identifier contrib | |
---|---|
Пакет | Описание |
org.apache.solr.update.processor | Различные реализации LanguageIdentifierUpdateProcessor и их фабрик |
Solr 7.0.1 solr-ltr API
Сервер поиска Apache Solr: обучение ранжированию | |
---|---|
Пакет | Описание |
org.apache.solr.ltr | Этот пакет содержит основную логику выполнения рендера с использованием модели Learning to Rank |
org.apache.solr.ltr.feature | Содержит классы, связанные с функциями |
org.apache.solr.ltr.model | Содержит классы, связанные с моделью |
org.apache.solr.ltr.norm | Нормализатор нормализует значение функции |
org.apache.solr.ltr.response.transform | API и реализации DocTransformer для изменения документов в ответах на запрос Solr |
org.apache.solr.ltr.search | API и классы для анализа и обработки запросов на поиск |
org.apache.solr.ltr.store | Содержит классы, связанные с характеристиками и моделью |
org.apache.solr.ltr.store.rest | Содержит ManagedResource, который инкапсулирует эту функцию, и хранилища моделей |
Solr 7.0.1 solr-uima API
Сервер поиска Apache Solr: Solr UIMA contrib | |
---|---|
Пакет | Описание |
org.apache.solr.uima.processor | UIMAUpdateRequestProcessorFactory и связанный код |
Solr 7.0.1 solr-velocity API
Apache Solr Поисковый сервер: Velocity Response Writer contrib | |
---|---|
Пакет | Описание |
org.apache.solr.response | VelocityResponseWriter и связанный код |
Solr 7.0.1 Test Framework API
Сервер поиска Apache Solr: тестовая платформа | |
---|---|
Пакет | Описание |
org.apache.solr | Общие базовые классы для реализации тестов |
org.apache.solr.analysis | Заводы для классов анализа Mock, которые могут использоваться в тестовых конфигурациях |
org.apache.solr.cloud | Базовые классы и утилиты для создания и тестирования кластеров Solr Cloud |
org.apache.solr.core | Заводы для классов Mock, которые могут использоваться в тестовых конфигурациях |
org.apache.solr.handler.component | Класс для отслеживания запросов ослепления |
org.apache.solr.update.processor | Макет классов для тестирования цепей обновления процессора |
org.apache.solr.util | Различные утилиты полезны при реализации тестовых примеров |
Ссылки
- Solr homepage
- Solr tutorial
- Solr wiki
- Apache Solr Test Files
- Solr: Indexing XML with Lucene and REST
- Search smarter with Apache Solr, Part 1
- Search smarter with Apache Solr, Part 2
- What's new with Apache Solr
- Apache Nutch and Solr on Tomcat
- Apache Solr Mailing List Archives
Источники
- ↑ Знакомство с Solr [Электронный ресурс]: Масштабируемость Solr/ Дата обращения: 2017-10-15. Режим доступа: http://lucene.apache.org/solr/#intro
- ↑ Информация о Solr [Электронный ресурс]: Публичные веб-сайты, использующие Solr/ Дата обращения: 2017-10-15. Режим доступа: http://wiki.apache.org/solr/PublicServers
- ↑ Информация о версиях Solr [Электронный ресурс]: Информация о версии Solr 1.3/ Дата обращения: 2017-10-15. Режим доступа: http://svn.apache.org/repos/asf/lucene/solr/branches/branch-1.3/CHANGES.txt
- ↑ Информация о версиях Solr [Электронный ресурс]: Информация о версии Solr 1.4/ Дата обращения: 2017-10-15. Режим доступа: http://svn.apache.org/repos/asf/lucene/solr/branches/branch-1.4/CHANGES.txt
- ↑ Информация о версиях Solr [Электронный ресурс]: Информация о версии Solr 3.1/ Дата обращения: 2017-10-15. Режим доступа: http://wiki.apache.org/solr/Solr3.1
- ↑ Сайты, использующие Solr [Электронный ресурс]: Solr Powered / Дата обращения: 2017-10-15. Режим доступа: https://wiki.apache.org/solr/PublicServers
ISSN 2542-0356
Следуй за Полисом
Оставайся в курсе последних событий
Лицензия
Если не указано иное, содержание этой страницы доступно по лицензии Creative Commons «Attribution-NonCommercial-NoDerivatives» 4.0, а примеры кода – по лицензии Apache 2.0. Подробнее см. Условия использования.