Apache Solr

Apache Solr
Типпошукова система
АвторYonik Seeleyd
РозробникApache Software Foundation
Стабільний випуск7.4.0 (27 червня 2018; 6 років тому (2018-06-27)[1])
Версії9.7.0 (9 вересня 2024)[2]
Платформавіртуальна машина Java
Мова програмуванняJava[3][4]
ЛіцензіяApache Software License 2.0d
Репозиторійgit.apache.org/solr.git
Вебсайтsolr.apache.org

Solr (вимовляється як «солар») вільне та відкрите програмне забезпечення, пошукова платформа реалізована на Java, базується на Apache Lucene. Основні можливості включають повнотекстовий пошук, підсвічування результатів, фасетний пошук, індексування в реальному часі, динамічну кластеризацію, інтеграцію з базами даних, NoSQL можливості, обробку складних форматів (наприклад, Word, PDF). Solr має можливості розподіленого пошуку та реплікації індексу, має дуже добру масштабованість і стійкість до відмов.[5] Solr — один з найпопулярніших пошукових рушіїв (другий за популярністю після Elasticsearch).[6]

Solr запускається як окремий сервер.  Використовує бібліотеку Lucene як ядро для впровадження повнотекстового пошуку та індексації, має REST-подібний HTTP/XML і JSON API що дозволяє використовувати Solr програмами написаними на інших мовах програмування. Solr має гнучку систему налаштувань та дозволяє підключення зовнішніх модулів (плагінів).

Apache Lucene та Apache Solr розроблюються однією командою Apache Software Foundation після їх злиття в 2010 році. Дуже часто на ці продукти посилаються як на Lucene/Solr або Solr/Lucene.

Властивості

  • Використовує бібліотеку Lucene для повнотекстового пошуку
  • Фасетний пошук
  • Підсвічування результатів
  • Мова запитів підтримує структурування, як і текстовий пошук
  • Безсхемний режим і режим зі схемами через REST API
  • JSON, XML, PHP, Ruby, Python, XSLT, Velocity[en] та отримання результатів у користувацьких Java бінарних форматах через HTTP
  • HTML інтерфейс адміністратора
  • Вбудовані засоби безпеки: автентифікація, авторизація, SSL
  • Реплікація на інші Solr сервери — дозволяє масштабувати кількість запитів на секунду та надає високу доступність[en]
  • Розподілений пошук за допомогою шардінгу[en] — дозволяє масштабувати за об'ємом контенту
  • Кластеризація при пошуку використовує Carrot2[en]
  • Розширюваність за допомогою плагінів
  • Гнучка релевантність — прискорення за допомогою функціональних запитів
  • Кешування — для запитів, фільтрів та документів
  • Інтеграція у Java-застосунки
  • Гео-розподілений пошук
  • Автоматичне керування великими кластерами за допомогою ZooKeeper[en]
  • Функціональні запити
  • Групування полів[7]
  • Автозаповнення
  • Стримінг

Застосування

Apache Solr був використаний, зокрема, Міжнародним консорціумом журналістів-розслідувачів для дослідження інформації у так званих «панамських документах»[8].

Примітки

  1. News. Apache Foundation. Архів оригіналу за 25 листопада 2016. Процитовано 27 червня 2018.
  2. https://solr.apache.org/news.html#apache-solrtm-970-available
  3. The solr Open Source Project on Open Hub: Languages Page — 2006.
  4. https://projects.apache.org/json/projects/lucene-solr.json
  5. Apache Solr -. lucene.apache.org. Архів оригіналу за 1 серпня 2013. Процитовано 10 лютого 2016.
  6. DB-Engines Ranking - popularity ranking of search engines. db-engines.com. Архів оригіналу за 19 жовтня 2018. Процитовано 10 лютого 2016.
  7. Solr Result Grouping. Архів оригіналу за 22 липень 2018. Процитовано 3 липень 2018. [Архівовано 2018-07-22 у Wayback Machine.]
  8. Mar Cabra, Erin Kissane (11 квітня 2016). The People and Tech Behind the Panama Papers. opennews.org. An OpenNews project. Архів оригіналу за 11 квітня 2016. Процитовано 18 квітня 2016.

Див. також