Solr — это поисковая платформа с открытым исходным кодом, которая используется для создания поисковых приложений . Он был построен поверх Lucene (полнотекстовая поисковая система). Solr готов к работе, быстр и масштабируем. Приложения, созданные с использованием Solr, являются сложными и обеспечивают высокую производительность.
Именно Йоник Сили создал Solr в 2004 году, чтобы добавить возможности поиска на веб-сайт компании CNET Networks. В январе 2006 года был сделан проект с открытым исходным кодом в рамках Apache Software Foundation. Его последняя версия, Solr 6.0, была выпущена в 2016 году с поддержкой выполнения параллельных SQL-запросов.
Solr можно использовать вместе с Hadoop. Поскольку Hadoop обрабатывает большой объем данных, Solr помогает нам найти необходимую информацию из такого большого источника. Solr может использоваться не только для поиска, но и для хранения. Как и другие базы данных NoSQL, это нереляционная технология хранения и обработки данных .
Короче говоря, Solr — это масштабируемая, готовая к развертыванию система поиска и хранения, оптимизированная для поиска больших объемов тексто-ориентированных данных.
Особенности Apache Solr
Solr — это оболочка вокруг Java API от Lucene. Поэтому, используя Solr, вы можете использовать все возможности Lucene. Давайте посмотрим на некоторые из наиболее важных особенностей Solr —
-
Restful APIs — Чтобы общаться с Solr, не обязательно иметь навыки программирования на Java. Вместо этого вы можете использовать успокоительные услуги для общения с ним. Мы вводим документы в Solr в таких форматах, как XML, JSON и .CSV, и получаем результаты в тех же форматах.
-
Полнотекстовый поиск — Solr предоставляет все возможности, необходимые для полнотекстового поиска, такие как токены, фразы, проверка орфографии, подстановочные знаки и автозаполнение.
-
Готовность для предприятия — в зависимости от потребностей организации Solr может быть развернут в любых системах (больших или малых), таких как автономные, распределенные, облачные и т. Д.
-
Гибкость и расширяемость. Расширяя классы Java и настраивая их соответствующим образом, мы можем легко настраивать компоненты Solr.
-
База данных NoSQL — Solr также может использоваться в качестве базы данных NOSQL с большими объемами данных, где мы можем распределять задачи поиска по кластеру.
-
Интерфейс администратора — Solr предоставляет простой в использовании, удобный, функциональный пользовательский интерфейс, с помощью которого мы можем выполнять все возможные задачи, такие как управление журналами, добавление, удаление, обновление и поиск документов.
-
Высокая масштабируемость. Используя Solr с Hadoop, мы можем масштабировать его емкость, добавляя реплики.
-
Текст-ориентированный и отсортированный по релевантности — Solr в основном используется для поиска текстовых документов, а результаты предоставляются в соответствии с запросом пользователя по порядку.
Restful APIs — Чтобы общаться с Solr, не обязательно иметь навыки программирования на Java. Вместо этого вы можете использовать успокоительные услуги для общения с ним. Мы вводим документы в Solr в таких форматах, как XML, JSON и .CSV, и получаем результаты в тех же форматах.
Полнотекстовый поиск — Solr предоставляет все возможности, необходимые для полнотекстового поиска, такие как токены, фразы, проверка орфографии, подстановочные знаки и автозаполнение.
Готовность для предприятия — в зависимости от потребностей организации Solr может быть развернут в любых системах (больших или малых), таких как автономные, распределенные, облачные и т. Д.
Гибкость и расширяемость. Расширяя классы Java и настраивая их соответствующим образом, мы можем легко настраивать компоненты Solr.
База данных NoSQL — Solr также может использоваться в качестве базы данных NOSQL с большими объемами данных, где мы можем распределять задачи поиска по кластеру.
Интерфейс администратора — Solr предоставляет простой в использовании, удобный, функциональный пользовательский интерфейс, с помощью которого мы можем выполнять все возможные задачи, такие как управление журналами, добавление, удаление, обновление и поиск документов.
Высокая масштабируемость. Используя Solr с Hadoop, мы можем масштабировать его емкость, добавляя реплики.
Текст-ориентированный и отсортированный по релевантности — Solr в основном используется для поиска текстовых документов, а результаты предоставляются в соответствии с запросом пользователя по порядку.
В отличие от Lucene, вам не нужно иметь навыки программирования на Java при работе с Apache Solr. Он предоставляет замечательную готовую к развертыванию службу для создания окна поиска с автозаполнением, которое Lucene не предоставляет. Используя Solr, мы можем масштабировать, распространять и управлять индексами для крупномасштабных приложений (больших данных).
Lucene в поисковых приложениях
Lucene — это простая, но мощная библиотека поиска на основе Java. Его можно использовать в любом приложении для добавления возможностей поиска. Lucene — это масштабируемая и высокопроизводительная библиотека, используемая для индексации и поиска практически любого текста. Библиотека Lucene предоставляет основные операции, необходимые для любого поискового приложения, такие как индексирование и поиск .
Если у нас есть веб-портал с огромным объемом данных, то нам, скорее всего, потребуется поисковая система на нашем портале для извлечения соответствующей информации из огромного пула данных. Lucene работает как сердце любого поискового приложения и обеспечивает жизненно важные операции, связанные с индексацией и поиском.