Apache Solr Tutorial: Co je Solr? Architektura a instalace

Co je Apache Solr?

Apache Solr je open-source platforma vyhledávacího serveru napsaná v Java jazyk od softwarové nadace Apache. Je vysoce škálovatelný a připravený k nasazení vyhledávače pro zpracování velkého objemu textově orientovaných dat. Účelem použití Apache Solr je indexovat a prohledávat velké množství webového obsahu a poskytovat relevantní obsah na základě vyhledávacího dotazu.

Apache Solr je obal HTTP založený na REST-API kolem fulltextového vyhledávače s názvem Apache Lucene. Invertovaný rejstřík je seznam slov, kde každé slovo odkazuje na dokumenty, ve kterých je uloženo. Tímto způsobem získáte všechny dokumenty pro vyhledávací dotaz „guru99“ jednoduchou operací „get“.

Historie Apache Solr

  • 1999: Doug Cutting publikoval Lucene
  • 2004: Solr vyvinul v CNET Yonik Seeley jako interní projekt dílčí společnosti
  • 2006: CNET publikuje zdrojový kód tím, že jej daruje softwaru Apache Foundation
  • 2008: Vydán Solr 1.3 s vylepšenými možnostmi vyhledávání a vylepšeními výkonu
  • 2010: Fúze Lucene a Solr
  • 2012: Byla vydána verze Solr 4.0 s novou funkcí Solr Cloud
  • 2016: Vydán Solr 6.0, který nabízí podporu pro provádění paralelních SQL dotazů

Vlastnosti Apache Solr

Zde jsou důležité funkce Apache Solr:

  • Automatické vyvažování zátěže
  • Otevřená rozhraní založená na standardech – XML, JSON a HTTP
  • Doporučení a návrhy pravopisu jsou podporovány
  • Podpora automatického dokončování a geoprostorového vyhledávání
  • Vestavěné zabezpečení pro autentizaci a autorizaci
  • Umožňuje provádět vícejazyčné vyhledávání klíčových slov
  • Automatické doplňování/předvídání psaní
  • Dávkové a streamingové zpracování
  • Vytváření modelů strojového učení je snadné
  • Speciálně optimalizované pro vysokoobjemový webový provoz
  • Komplexní HTML obdivovací rozhraní
  • Podporuje konfiguraci Schema i Schemaless
  • Fasetové vyhledávání a filtrování
  • Centrální konfigurace pro celý Cluster

Klíčové pojmy používané v Apache Solr

Nyní v tomto tutoriálu pro vyhledávač Solr se dozvíme o klíčových termínech používaných v Apache Solr:

Klíčový termín Description
Solr Core Solr Core lze definovat jako index textů a polí odvozených ze všech dokumentů. Jedna instance Solr může mít jedno nebo více jader Solr.

Core = instance konfigurace Lucene Index + Solr

Instance Solr Instance Solr je instance Solr spuštěná v Java Virtuální stroj (JVM). V samostatném režimu nabízí pouze jednu instanci, zatímco v cloudovém režimu můžete mít jednu nebo více instancí.
Indexování Indexování je metoda pro přidávání obsahu dokumentu do Solr Index. Apache Solr používá techniku ​​Apache Lucene Inverted Index.
Dokument Je to skupina polí a jejich hodnot. Dokument je základní jednotka dat uložená v Apache Core. Jedno jádro Apache může obsahovat jeden nebo více dokumentů.
Pole Pole je pár klíč-hodnota, který ukládá skutečná data v dokumentu. Klíč určuje název pole a hodnotu obsahující tato data pole. Dokument může mít jedno nebo více polí. Používá ho Apache Solr k indexování obsahu dokumentu.
Klidná API Pro komunikaci se Solrem není nutné používat Java programování. Místo toho poskytuje Apache Solr klidné služby s tím komunikovat. Můžete odesílat dokumenty a přijímat výsledky v různých formátech souborů, jako jsou JSON, XML a CSV.
Fulltextové vyhledávání Solr nabízí funkce pro fulltextové vyhledávání, jako jsou tokeny, fráze, kontrola pravopisu, automatické doplňování, zástupné znaky atd.
Správcovské rozhraní Solr nabízí snadno použitelné, uživatelsky přívětivé, funkcemi poháněné uživatelské rozhraní. Pomocí rozhraní můžete provádět úkoly, jako je správa protokolů, přidávání, odstraňování, aktualizace a vyhledávání dokumentů.
Textově orientované a seřazené podle relevance Apache Solr se používá k vyhledávání textových dokumentů a výsledky jsou dodávány podle dotazu uživatele.
Uzel V cloudu Solr je každá jednotlivá instance známá jako uzel.
Cluster Cluster je kolekce uzlů.
Sbírka Cluster má logický index, který se také nazývá kolekce.
Střep Je to malá oblast kolekce, která nabízí jednu nebo více replik indexu.
Replika Replika je kopie fragmentu, který běží v uzlu.
Vůdce Je to replika úlomku, který posílá požadavky Solr Cloud na zbytek replik.

Apache Solr Architecture

Nyní v tomto tutoriálu pro vyhledávání Solr se pojďme dozvědět o Apache Solr Archistruktura:

Apache Solr Architecture
Apache Solr Architecture

Apache Solr kompromituje následující komponenty

Dotaz

Analyzátor dotazů analyzuje dotazy, které musíte předat Solr. Ověří váš dotaz a zkontroluje syntaktické chyby. Po analýze dotazů se převede do formátu, který Lucene zná.

Zpracovatel žádosti

Požadavek odeslaný do Apache Solr zpracovává obsluha požadavku. Požadavkem může být požadavek na dotaz nebo požadavek na aktualizaci indexu. Musíte vybrat zpracovatele požadavků podle svých požadavků. Chcete-li předat požadavek Solr, musíte namapovat obslužnou rutinu na konkrétní koncový bod adresy URL.

Response Writer

Zapisovatel odpovědí bude generovat formátované výstupy pro vstupní dotazy. Podporuje různé formáty jako XML, JSON, CSV.atd. Pro různé typy požadavků můžete mít různé autory odpovědí.

Aktualizovat obslužný program

Když odešlete požadavek na aktualizaci Apache Solr, je spuštěn prostřednictvím sady pluginů, podpisu, protokolování, indexování. Tento proces je známý jako procesor žádosti o aktualizaci. Obslužný program aktualizací je také zodpovědný za úpravy, jako je přidání nebo odstranění souboru atd.

Aplikace Apache Solr

editaci videa Používání
Intranetový portál
  • Snadný přístup k vyhledávání
  • Spuštění aplikace
  • Upozornění na novinky a události
  • Ověření jednotného přihlášení
Federovaný klient
  • Zjednodušená prezentace
  • Vyhledávejte v celém obsahu
  • Pouze autorizovaný přístup
  • Prohlížení dokumentů
Datové sady přístrojů
  • Optimalizováno pro vědce
  • Nabídky závislé na datech
  • Specializované mřížkové filtry
Regulační dokumenty
  • Určeno pro výzkumníky
  • Bohatý přístup k metadatům
  • Tabulkové exporty
  • Zobrazit akcelerátor dokumentů
Zabudováno do aplikace PLM
  • Nabízí lepší zážitek z vyhledávání, než by mohl poskytnout RDBMS
  • Bezpečnostní model s pozdním vázáním
  • Akce dokumentu zobrazené na panelu nástrojů

Jak nainstalovat Apache Solr?

Krok 1) Otevřete web a pokračujte k odběru
Přejděte na to https://trials.autocruitment.com, Klikněte na „Pokračovat k odběru“.

Nainstalujte Apache Solr

Krok 2) Klikněte na Přijmout podmínky
Na další stránce klikněte na Přijmout podmínky.

Nainstalujte Apache Solr

Krok 3) Počkejte nějakou dobu
Dále Počkejte nějakou dobu a poté je Požadavek po nějaké době přijat.

Nainstalujte Apache Solr

Krok 4) Pokračujte do Konfigurace
Obnovte stránku a klikněte na „Pokračovat ke konfiguraci“

Nainstalujte Apache Solr

Krok 5) Pokračujte ke spuštění
Ponechte výchozí nastavení a klikněte na „Pokračovat ke spuštění“.

Nainstalujte Apache Solr

Krok 6) Ponechte výchozí nastavení
Na další stránce Zachovat výchozí nastavení

  • Ujistěte se, že máte soubor pem klíče
  • Klikněte na „Spustit“

Nainstalujte Apache Solr

Uvidíte tuto zprávu o úspěchu

Nainstalujte Apache Solr

Krok 7) Všimněte si veřejného DNS
V konzole EC2 si poznamenejte veřejný DNS vaší instance

Nainstalujte Apache Solr

Krok 8) Otevřete níže adresu URL
Pro přístup k Solr jednoduše použijte URL

http://publicdns:8983

v našem případě se stává

http://ec2-18-221-175-53.us-east-2.compute.amazonaws.com:8983

Nainstalujte Apache Solr

Poznámka: Pokud máte potíže s přístupem k instanci, změňte ve své instanci příchozí a odchozí pravidla tak, aby povolila veškerý provoz, jak je znázorněno v níže uvedeném příkladu dotazu Solr:

Nainstalujte Apache Solr

Elasticsearch vs. Apache Solr

parametry Apache Solr Elastické vyhledávání
Příroda Jedná se o open source projekt. Nejedná se o open-source projekt.
Statický stav Statické v shema.xml Statické v elasticsearch.yml
Formát XML, CSV, JSON Pouze JSON
index Lze znovu načíst za běhu s kolekcí/obnovením jádra Definováno během vytváření indexu/typu pomocí volání REST
Dokumentace Je to dobře zdokumentováno. Je to špatně zdokumentováno.
Štípání střepů Možný Není to možné

Výhody Apache Solr

  • Pomáhá zkrátit dobu potřebnou k nalezení informací
  • Je to rychlý, jednoduchý, výkonný a flexibilní vyhledávač
  • Pomáhá vám zpřístupnit vaše produkty a služby
  • Zvyšte útratu zákazníků za webovou aplikaci
  • Pomáhá vám zlepšit uživatelskou zkušenost s webovou aplikací za účelem zvýšení příjmů a zisku
  • Komplexní administrační rozhraní založené na HTML
  • Flexibilní a adaptabilní s konfigurací XML
  • Rozšiřitelný plugin Architecture
  • Vysoce škálovatelný, robustní vyhledávač odolný proti chybám
  • Podporuje distribuované, stínování, replikace, Clustering a Multi-Node Architecture

Nevýhody Apache Solr

  • Nejedná se o úložiště dat kompatibilní s ACID
  • Není užitečné jako primární úložiště dat. Užitečné pouze jako sekundární úložiště dat
  • Not nabízí podporu pro transakce a distribuované transakce
  • Nepodporuje spojení a složité dotazy
  • Není optimální pro normalizovaná data

Shrnutí

  • Apache Solr je open-source REST-API založený vyhledávací server
  • Apache Solr byl vyvinut v CNET Yonikem Seeleym jako interní projekt dílčí společnosti
  • Apache Solr nabízí funkce jako Automatické dokončování a Geo-Spatial Search
  • Solr Core, Solr Instance, Indexing, Document, Restful API, Fulltextové vyhledávání, Admin Interface atd. jsou některé klíčové pojmy používané v Apache Solr.
  • Query, Request handler, Request Writer a update handlers jsou některé z důležitých součástí Apache Solr
  • Užitečné aplikace Apache Solr jsou intranetový portál, federovaný klient, datové sady nástrojů, regulační dokumenty a aplikace Embedded in PLM
  • Apache Solr je dobře zdokumentován ve srovnání s elastickým vyhledáváním, které je zdokumentováno špatně
  • Největší výhodou Apache Solr je, že vám pomáhá zkrátit dobu potřebnou k nalezení informací
  • Hlavní nevýhodou této aplikace není úložiště dat kompatibilní s ACID

Shrňte tento příspěvek takto: