Apache Solr - przegląd
Solr to platforma wyszukiwania typu open source, która służy do tworzenia search applications. Został zbudowany na szczycieLucene(wyszukiwarka pełnotekstowa). Solr jest gotowy dla przedsiębiorstw, szybki i wysoce skalowalny. Aplikacje zbudowane w Solr są zaawansowane i zapewniają wysoką wydajność.
To było Yonik Seelyktóry stworzył Solr w 2004 roku w celu dodania możliwości wyszukiwania do firmowej strony CNET Networks. W styczniu 2006 został utworzony jako projekt open source w ramach Apache Software Foundation. Jego najnowsza wersja, Solr 6.0, została wydana w 2016 roku z obsługą wykonywania równoległych zapytań SQL.
Solr może być używany razem z Hadoop. Ponieważ Hadoop obsługuje dużą ilość danych, Solr pomaga nam znaleźć potrzebne informacje z tak dużego źródła. Solr nie tylko służy do wyszukiwania, ale także do przechowywania danych. Podobnie jak inne bazy danych NoSQL, jest to pliknon-relational data storage i processing technology.
Krótko mówiąc, Solr to skalowalny, gotowy do wdrożenia silnik wyszukiwania / przechowywania zoptymalizowany pod kątem przeszukiwania dużych ilości danych tekstowych.
Funkcje Apache Solr
Solr to opakowanie wokół Java API Lucene. Dlatego korzystając z Solr, możesz wykorzystać wszystkie funkcje Lucene. Przyjrzyjmy się niektórym z najważniejszych cech Solr -
Restful APIs- Do komunikacji z Solr nie jest wymagana znajomość programowania w języku Java. Zamiast tego możesz korzystać z usług uspokajających, aby się z nim komunikować. Wprowadzamy dokumenty w Solr w formatach plików takich jak XML, JSON i .CSV i uzyskujemy wyniki w tych samych formatach plików.
Full text search - Solr zapewnia wszystkie możliwości potrzebne do wyszukiwania pełnotekstowego, takie jak tokeny, frazy, sprawdzanie pisowni, symbole wieloznaczne i autouzupełnianie.
Enterprise ready - W zależności od potrzeb organizacji, Solr można wdrożyć w dowolnych systemach (dużych lub małych), takich jak samodzielne, rozproszone, w chmurze itp.
Flexible and Extensible - Rozszerzając klasy Java i odpowiednio je konfigurując, możemy łatwo dostosowywać komponenty Solr.
NoSQL database - Solr może być również używany jako baza danych NOSQL typu big data, w której możemy rozdzielić zadania wyszukiwania wzdłuż klastra.
Admin Interface - Solr zapewnia łatwy w obsłudze, przyjazny dla użytkownika, oparty na funkcjach interfejs użytkownika, za pomocą którego możemy wykonywać wszystkie możliwe zadania, takie jak zarządzanie dziennikami, dodawanie, usuwanie, aktualizowanie i wyszukiwanie dokumentów.
Highly Scalable - Korzystając z Solr z Hadoopem, możemy skalować jego pojemność dodając repliki.
Text-Centric and Sorted by Relevance - Solr jest najczęściej używany do wyszukiwania dokumentów tekstowych, a wyniki są dostarczane zgodnie z trafnością zapytania użytkownika w kolejności.
W przeciwieństwie do Lucene, nie musisz mieć umiejętności programowania w Javie podczas pracy z Apache Solr. Zapewnia wspaniałą usługę gotową do wdrożenia, umożliwiającą tworzenie pola wyszukiwania z funkcją autouzupełniania, której Lucene nie zapewnia. Korzystając z Solr, możemy skalować, dystrybuować i zarządzać indeksami dla aplikacji na dużą skalę (Big Data).
Lucene w wyszukiwarkach
Lucene to prosta, ale potężna biblioteka wyszukiwania oparta na języku Java. Można go używać w dowolnej aplikacji w celu dodania możliwości wyszukiwania. Lucene to skalowalna i wydajna biblioteka służąca do indeksowania i wyszukiwania praktycznie każdego rodzaju tekstu. Biblioteka Lucene zapewnia podstawowe operacje wymagane przez każdą aplikację wyszukującą, taką jakIndexing i Searching.
Jeśli mamy portal internetowy z ogromną ilością danych, to najprawdopodobniej będziemy potrzebować wyszukiwarki w naszym portalu, aby wydobyć odpowiednie informacje z ogromnej puli danych. Lucene działa jako serce każdej aplikacji wyszukującej i zapewnia podstawowe operacje związane z indeksowaniem i wyszukiwaniem.