Написано в сотрудничестве с Solr
Вступление
Solr - платформа для поисковых систем, основанная на Apache Lucene. Он написан на Java и использует библиотеку Lucene для реализации индексации. Доступ к нему можно получить с помощью различных API-интерфейсов REST, включая XML и JSON. Это список функций с их сайта:
-
Расширенные возможности полнотекстового поиска
-
Оптимизирован для большого объема веб-трафика
-
Стандартные открытые интерфейсы - XML, JSON и HTTP
-
Комплексные интерфейсы администрирования HTML
-
Статистика сервера, предоставляемая через JMX для мониторинга
-
Линейно масштабируемый, автоматическая репликация индекса, автоматическое переключение при сбое и восстановление
-
Индексирование в реальном времени
-
Гибкий и адаптируемый с конфигурацией XML
-
Расширяемая архитектура плагинов
В этой статье мы установим Solr, используя его бинарный дистрибутив.
Предпосылки
Чтобы следовать этому уроку, вам понадобится:
-
Одна капля Ubuntu 14.04 объемом 1 ГБ, как минимум, но необходимый объем оперативной памяти dellnds очень зависит от вашей конкретной ситуации.
-
Https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-14-04[sudo некорневой пользователь].
Шаг 1 - Установка Java
Solr требует Java, поэтому на этом шаге мы его установим.
Полный процесс установки Java подробно описан в th this article, но мы будем использовать немного другой процесс.
Во-первых, используйте apt-get для установки + python-software-properties
:
sudo apt-get install python-software-properties
Вместо использования пакетов + default-jdk
или` + default-jre in`, будет установлена последняя версия Java 8. Для этого добавьте неофициальный репозиторий установщика Java:
sudo add-apt-repository ppa:webupd8team/java
Вам нужно будет нажать + ENTER +
, чтобы принять добавление репозитория в ваш индекс.
Затем обновите список источников:
sudo apt-get update
Наконец, установите Java 8, используя apt-get. Вам нужно будет принять Лицензионное соглашение на двоичный код Oracle для продуктов платформы Java SE и JavaFX.
sudo apt-get install oracle-java8-installer
Шаг 2 - Установка Solr
В этом разделе мы установим Solr 5.2.1. Мы начнем с загрузки дистрибутива Solr.
Сначала найдите подходящее зеркало на ths этой странице. Затем скопируйте ссылку + solr-5.2.1.tgz +
из зеркала. Например, мы будем использовать + http: // apache.mirror1.spango.com / lucene / solr / 5.2.1 / +
.
Затем загрузите файл в свой домашний каталог:
cd ~
wget
Затем распакуйте установочный файл службы:
tar xzf solr-5.2.1.tgz solr-5.2.1/bin/install_solr_service.sh --strip-components=2
И установите Solr как сервис, используя скрипт:
sudo bash ./install_solr_service.sh solr-5.2.1.tgz
Наконец, проверьте, работает ли сервер:
sudo service solr status
Вы должны увидеть вывод, который начинается с этого:
Вывод статуса Solr
Found 1 Solr nodes:
Solr process 2750 running on port 8983
. . .
Шаг 3 - Создание коллекции
В этом разделе мы создадим простую коллекцию Solr.
Solr может иметь несколько коллекций, но для этого примера мы будем использовать только одну. Чтобы создать новую коллекцию, используйте следующую команду. В этом случае мы запускаем его как пользователь Solr, чтобы избежать ошибок разрешений.
sudo su - solr -c "/opt/solr/bin/solr create -c gettingstarted -n data_driven_schema_configs"
В этой команде + gettingstarted +
является именем коллекции, а + -n +
задает набор настроек. По умолчанию Solr предлагает 3 набора настроек; в этом случае мы использовали одно без схемы, что означает, что может быть предоставлено любое поле с любым именем, и тип будет угадан.
Вы добавили коллекцию и можете начать добавлять данные. Схема по умолчанию имеет только одно обязательное поле: + id +
. У него нет других полей по умолчанию, только динамические поля. Если вы хотите взглянуть на схему, где все ясно объяснено, взгляните на файл + / opt / solr / server / solr / gettingstarted / conf / schema.xml +
.
Шаг 4 - Добавление и запрос документов
В этом разделе мы рассмотрим веб-интерфейс Solr и добавим некоторые документы в нашу коллекцию.
Когда вы посещаете + http: //: 8983 / solr +
через веб-браузер, должен появиться веб-интерфейс Solr:
изображение: https: //assets.digitalocean.com/articles/solr/o6dOUlH.png [веб-интерфейс Solr]
Веб-интерфейс содержит много полезной информации, которую можно использовать для устранения любых проблем, с которыми вы столкнулись во время использования.
Коллекции разделены на ядра, поэтому в веб-интерфейсе много ссылок на ядра. В настоящий момент коллекция + gettingstarted +
содержит только одно ядро с именем + gettingstarted +
. С левой стороны видно выпадающее меню * Core Selector *, в котором вы сможете выбрать + Gettingstarted +
для просмотра дополнительной информации.
После того, как вы выбрали ядро + Gettingstarted +
, выберите * Documents *. Документы хранят реальные данные, которые будут доступны для поиска в Solr. Поскольку мы использовали конфигурацию без схемы, мы можем использовать любое поле. Давайте добавим один документ со следующим примером JSON, скопировав приведенное ниже в поле * Document (s) *:
{
"number": 1,
"president": "George Washington",
"birth_year": 1732,
"death_year": 1799,
"took_office": "1789-04-30",
"left_office": "1797-03-04",
"party": "No Party"
}
Нажмите * Отправить документ *, чтобы добавить документ в индекс. Через несколько секунд вы увидите следующее:
Вывод после добавления документа
Status: success
Response:
{
"responseHeader": {
"status": 0,
"QTime": 509
}
}
Вы можете добавить больше документов с похожей или совершенно другой структурой, но вы также можете продолжить работу только с одним документом.
Теперь выберите * Query * слева, чтобы запросить документ, который мы только что добавили. Со значениями по умолчанию на этом экране после нажатия * Выполнить запрос * вы увидите максимум 10 документов, в зависимости от того, сколько вы добавили:
Вывод запроса
{
"responseHeader": {
"status": 0,
"QTime": 58,
"params": {
"q": "*:*",
"indent": "true",
"wt": "json",
"_": "1436827539345"
}
},
"response": {
"numFound": 1,
"start": 0,
"docs": [
{
"number": [
1
],
"president": [
"George Washington"
],
"birth_year": [
1732
],
"death_year": [
1799
],
"took_office": [
"1789-04-30T00:00:00Z"
],
"left_office": [
"1797-03-04T00:00:00Z"
],
"party": [
"No Party"
],
"id": "1ce12ed2-add9-4c65-aeb4-a3c6efb1c5d1",
"_version_": 1506622425947701200
}
]
}
}
Заключение
Доступно еще много вариантов, но вы успешно установили Solr и можете начать использовать его для своего сайта.