Różnica między solr a lucenem

Wiem, że Lucene i Solr to 2 różne projekty Apache stworzone do współpracy, ale nie rozumiem, jaki jest cel każdego projektu.

Do tej pory zrozumiałem, że Lucene jest używany do tworzenia indeksu wyszukiwania, A Solr używa tego indeksu do wyszukiwania. Mam rację, czy to zupełnie inne podejście?

Author: guettli, 2013-03-29

7 answers

@darkheir: Lucene i Solr to 2 różne projekty Apache, które są stworzone do współpracy, nie rozumiem, jaki jest cel każdego projektu.

1) Solr używa Lucenu pod maską. Lucene nie ma pojęcia o API Solr.

2) Lucene jest potężnym frameworkiem wyszukiwarki, który pozwala nam dodać możliwość wyszukiwania do naszej aplikacji. Udostępnia łatwy w użyciu interfejs API, ukrywając wszystkie złożone operacje związane z wyszukiwaniem. Każda aplikacja może korzystać z tej biblioteki, nie tylko Solr.

3) Solr jest zbudowany wokół Lucene. To nie jest tylko http-wrapper wokół Lucene, ale został znany dodać więcej arsenału do Lucene. Solr jest gotowy do użycia po wyjęciu z pudełka. Jest to aplikacja internetowa, która oferuje powiązaną infrastrukturę i wiele więcej funkcji oprócz tego, co oferuje Lucene.

@darkheir: Lucene jest używany do tworzenia indeksu wyszukiwania, A Solr używa tego indeksu do wykonywania wyszukiwań. Mam rację, czy to zupełnie co innego? podejście?

4) Lucene nie tylko tworzy indeks zużycia przez Solr . Lucene zajmuje się wszystkimi operacjami związanymi z poszukiwaniami. Każda aplikacja może korzystać z Lucene framework.

Przykładami są Solr, Elastic Search, LinkedIn (tak, pod maską) itp..

Zobacz ten artykuł: Lucene vs Solr

Aktualizacja (6/18/14)

Kiedy stosować Lucene?

    Jesteś inżynierem wyszukiwania i]}
  • Ty jest programistą i
  • Chcesz mieć pełną kontrolę nad prawie wszystkimi wnętrznościami Lucene i]} [[41]} Twoje wymagania wymagają, aby zrobić wszelkiego rodzaju geeky dostosowywania do Lucene i {[42]]}
  • jesteś gotów zająć się elementami infrastruktury Twojego wyszukiwania, takimi jak skalowanie, Dystrybucja itp.

Kiedy stosować Solr?

  • przynajmniej jedno z powyższych nie miało sensu. Lub
  • chcesz coś, co jest gotowe do użycia out-of-the-box (nawet bez znajomości Javy) lub
  • Twoje wymagania dotyczące infrastruktury przewyższają wymagania dotyczące dostosowywania wyszukiwania.

Uwaga : Nie chodzi mi o to, że Solr jest trudny do dostosowania. Solr jest bardzo elastyczny i zapewnia wiele punktów API pluggable, co pozwala na wrzucenie kodu.

Są ludzie, którzy podpadają pod' muszą używać obozu Lucene', ale nadal wolą Solr od zwykłego Lucene, ponieważ jest łatwy w użyciu. Jednak nigdy nie powstrzymują się od dostosowywania Solr w maksymalnym stopniu.

BTW, widzę, że na Solr jest więcej zasobów (4.x) niż Lucene (4.x).

 232
Author: phanin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-09-07 18:52:44

Lucene jest niskopoziomową biblioteką Javy (z portami na. Net itp.), które implementuje indeksowanie, analizowanie, wyszukiwanie itp.

Solr jest samodzielnym wstępnie skonfigurowany produkt / webapp, który używa Lucene. Jeśli wolisz zajmować się HTTP API zamiast Java API, Solr jest dla Ciebie. Solr ma również kilka dodatkowych funkcji na górze (np. grupowanie ).

 31
Author: mindas,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-29 15:39:12

Prosty sposób na wyobrażenie relacji między Solr i Lucene czy samochód i jego silnik. Nie można prowadzić silnika, ale potrafi prowadzić samochód. Podobnie Lucene jest biblioteką programową, którą można nie można używać tak jak jest, natomiast Solr jest kompletną aplikacją, którą można użyj po wyjęciu z pudełka.

Źródło: Lucene-vs-solr - Lucene Tutorial

 23
Author: Vikas Kumar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-12-28 12:16:10

Solr jest zbudowany na bazie lucene, aby zapewnić platformę wyszukiwania.

Wyszukaj platformę w następujących warstwach od dołu do góry:

  • Dane
    • przeznaczenie: reprezentowanie różnych typów danych i źródeł
  • Budowa dokumentu
    • cel: zbudowanie informacji o dokumencie do indeksowania
  • indeksowanie i wyszukiwanie
    • cel: tworzenie i wyszukiwanie indeksu dokumentów
  • logika enhancement
    • cel: dodatkowa logika Przetwarzania zapytań i wyników wyszukiwania
  • Search platform service
    • cel: dodanie dodatkowych funkcjonalności search engine core w celu zapewnienia platformy usługowej.
  • aplikacja interfejsu użytkownika
    • przeznaczenie: interfejs użytkownika końcowego lub Aplikacje

Solr stack

Reference article: Enterprise search

 16
Author: mingxue,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-08 15:12:33

SOLR jest wrapperem nad indeksem Lucenu.

To jest proste do zrozumienia: SOLR to Samochód, A Lucene to jego silnik . Musisz tylko wiedzieć, jak prowadzić samochód (SOLR), a także musisz wiedzieć kilka rzeczy o silniku (Lucene) w przypadku, gdy pojawi się jakikolwiek problem w silniku samochodu.

Bezpiecznej jazdy:)

 12
Author: Behzad Qureshi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-25 12:00:09

Możesz to sobie wyobrazić w następujący sposób - Apache Lucene jest biblioteką używaną wewnętrznie przez Apache Solr. Jest napisany w Javie i zapewnia niesamowite funkcje wyszukiwania pełnotekstowego i indeksowania. Potrafi analizować dużą liczbę języków z całego świata i przygotowywać tekst w takich językach do sprawnego i szybkiego wyszukiwania i analizy. Lucene jest biblioteką - możesz jej użyć bezpośrednio w swojej aplikacji i zaimplementować wszystko samodzielnie, ale Apache Solr zapewnia wiele z pudełka.

Apache Solr search engine zapewnia takie rzeczy jak API HTTP, które można wykorzystać do wysyłania do nich danych, a następnie Wyszukiwania na tych danych. Możesz sterować wyszukiwarkami za pomocą API, tworzyć środowiska rozproszone i automatycznie dystrybuować dane w wielu węzłach i wiele, wiele innych.

 1
Author: Rafal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-03-25 17:47:05

Możesz znaleźć dobre porównanie na temat celu lucence i solar tutaj:

Http://www.lucenetutorial.com/lucene-vs-solr.html

TLDR: Lucence to tylko silnik, Solar to samochód, którym można jeździć (wyposażony w rest-api itp.)

 0
Author: Martin Abraham,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-05 07:05:07