Vytvořte škálovatelnou vyhledávací síť – indexování dokumentů pomocí GroupDocs.Java

V tomto tutoriálu se naučíte jak přidávat dokumenty do indexu a vytvořit škálovatelnou vyhledávací síť s GroupDocs.Search pro Java. Provedeme vás konfigurací vyhledávací sítě, nasazením uzlů a zpracováním událostí, aby vaše aplikace mohla efektivně zpracovávat velké kolekce dokumentů napříč více servery.

Rychlé odpovědi

  • Co znamená „přidávat dokumenty do indexu“? Znamená to vložení souborů do prohledávatelného indexu, aby bylo možné je rychle dotazovat.
  • Která knihovna tuto funkci poskytuje? GroupDocs.Search pro Java.
  • Potřebuji licenci? Je k dispozici dočasná zkušební licence; pro produkční nasazení je vyžadována komerční licence.
  • Mohu škálovat horizontálně? Ano—nasazením více instancí SearchNetworkNode.
  • Jaká verze Javy je požadována? JDK 8 nebo vyšší.

Co je přidávání dokumentů do indexu?

Načtěte své zdrojové soubory (PDF, DOCX, PPTX atd.) do enginu GroupDocs.Search, který extrahuje text, vytváří tabulky četnosti termínů a ukládá je do souboru indexu. Výsledný index umožňuje podsekundové dotazy na klíčová slova i u kolekcí o stovkách stránek.

Proč používat GroupDocs.Search pro Java v síťovém prostředí?

Rozdělte zátěž indexování a vyhledávání mezi několik uzlů, snižte latenci dotazů zpracováním blízko zdroje dat a přidávejte nebo odebírejte uzly bez výpadku. Tato architektura vám umožní vyhledávat napříč více servery při zachování konzistentního výkonu.

Požadavky

  • Java Development Kit (JDK) 8+ nainstalován.
  • Maven pro správu závislostí.
  • Základní znalost Javy a struktury Maven projektu.

Požadované knihovny, verze a závislosti

Pro implementaci GroupDocs.Search pro Java zahrňte následující do svého Maven projektu:

<repositories>
    <repository>
        <id>repository.groupdocs.com</id>
        <name>GroupDocs Repository</name>
        <url>https://releases.groupdocs.com/search/java/</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-search</artifactId>
        <version>25.4</version>
    </dependency>
</dependencies>

Alternativně si stáhněte nejnovější verzi z GroupDocs.Search for Java releases. Vydání najdete také na GroupDocs Search Java releases.

Požadavky na nastavení prostředí

  • JDK 8 nebo vyšší nainstalovaný ve vašem systému.
  • Maven nainstalovaný a nakonfigurovaný, pokud používáte Maven projekt.

Předpoklady znalostí

  • Základní pochopení programování v Javě.
  • Znalost správy závislostí v Maven.

Nastavení GroupDocs.Search pro Java

  1. Maven Setup: Přidejte repozitář a závislost, jak je ukázáno výše, do souboru pom.xml.
  2. Přímé stažení: Alternativně si stáhněte knihovnu z GroupDocs Search Java releases.

Získání licence

  • Získejte bezplatnou zkušební nebo dočasnou licenci na GroupDocs website.
  • Pro plný přístup a podporu zvažte zakoupení komerční licence.

Základní inicializace

Inicializujte GroupDocs.Search ve své Java aplikaci:

import com.groupdocs.search.*;

public class SearchSetup {
    public static void main(String[] args) {
        // Initialize an index
        Index index = new Index("path/to/index/directory");

        // Add documents to the index
        index.add("path/to/documents");
        
        System.out.println("GroupDocs.Search setup complete.");
    }
}

Jak přidávat dokumenty do indexu ve vyhledávací síti?

Načtěte své dokumenty přes libovolný uzel v síti; framework automaticky rozděluje zátěž indexování, vyvažuje zatížení a v reálném čase aktualizuje sdílený index. Každý uzel zpracuje přiřazené soubory, extrahuje text a zapisuje přírůstkové změny do centrálního indexu, čímž zajistí, že nově přidaný obsah se téměř okamžitě stane prohledávatelným na všech uzlech.

Funkce 1: Konfigurace vyhledávací sítě

Přehled

Konfigurace vyhledávací sítě zahrnuje nastavení uzlů pro efektivní správu a rozdělování úloh vyhledávání.

Krok 1: Definujte základní cestu a port

Třída SearchNetworkNode představuje jediný uzel, který se podílí na distribuovaném indexu.

String basePath = "YOUR_DOCUMENT_DIRECTORY/AdvancedUsage/Scaling/SearchNetworkNodeEvents/";
int basePort = 49140; // Change if necessary due to busy port issues
Krok 2: Konfigurace sítě

NetworkConfiguration obsahuje společná nastavení (základní cesta, porty, faktor replikace), která každý uzel načte při spuštění.

import com.groupdocs.search.scaling.*;
import com.groupdocs.search.scaling.configuring.*;

Configuration configuration = ConfiguringSearchNetwork.configure(basePath, basePort);

Funkce 2: Nasazení uzlů vyhledávací sítě

Přehled

Nasazujte uzly pro rozdělení a zpracování vyhledávacích operací napříč vaší sítí.

Krok 1: Nasazení uzlů pomocí konfigurace

Instance SearchNetworkNode jsou spuštěny se stejným konfiguračním souborem, což jim umožňuje navzájem se objevit pomocí definovaného rozsahu základních portů.

import com.groupdocs.search.scaling.*;

SearchNetworkNode[] nodes = SearchNetworkDeployment.deploy(basePath, basePort, configuration);

Funkce 3: Přihlášení k událostem uzlu

Přehled

Přihlášení k událostem uzlu vám umožní sledovat a reagovat na různé akce v rámci vyhledávací sítě.

Krok 1: Definujte metodu předplatného

NodeEventListener je rozhraní, které implementujete pro získání zpětných volání o průběhu indexování, chybách a změnách stavu uzlu.

import com.groupdocs.search.events.*;
import com.groupdocs.search.scaling.events.*;

public static void subscribe(SearchNetworkNode node) {
    // Subscribe to IndexingCompleted event
    node.getEvents().IndexingCompleted.add(new EventHandler() {
        @Override
        public void invoke(Object s, EventArgs e) {
            System.out.println("Indexing completed.");
        }
    });

    // Additional events can be subscribed similarly...
}
Krok 2: Použijte metodu předplatného

Zaregistrujte svého posluchače u každého uzlu, aby vám poskytoval zpětnou vazbu v reálném čase během velkých dávkových operací.

SearchNetworkNode masterNode = nodes[0];
subscribe(masterNode);

Ukončení uzlů

Vždy uzly ukončujte elegantně, aby se vyprázdnily čekající zápisy a uvolnily síťové sockety.

for (SearchNetworkNode node : nodes) {
    node.close();
}

Praktické aplikace

  1. Enterprise Search Solutions – Implementujte vyhledávací síť pro zpracování rozsáhlých vyhledávání dokumentů napříč více servery.
  2. E‑commerce Platforms – Zlepšete možnosti vyhledávání produktů rozdělením úloh indexování mezi několik uzlů.
  3. Content Management Systems (CMS) – Zvyšte výkon získávání obsahu a aktualizací v prostředích CMS.

Úvahy o výkonu

  • Optimalizujte nasazení uzlů podle zdrojů vašeho systému.
  • Pravidelně monitorujte využití paměti, aby se předešlo únikům, zejména při práci s velkými datovými sadami.
  • Využijte konfigurační nastavení k jemnému ladění operací indexování a vyhledávání pro vyšší efektivitu.

Časté problémy a řešení

ProblémTypická příčinaŘešení
Konflikty portůbasePort již používánZměňte basePort na dostupné číslo
Uzlu není dosažitelnéFirewall nebo síťová pravidlaOtevřete požadované porty a ověřte konektivitu
Index se neaktualizujeNesprávná cesta k dokumentuOvěřte, že basePath ukazuje na správný adresář
Vysoké využití pamětiIndexování velkých dávekIndexujte dokumenty v menších dávkách nebo zvětšete velikost haldy

Často kladené otázky

Q: Jak řešit konflikty portů při nasazování uzlů?
A: Změňte proměnnou basePort ve vašem konfiguračním kódu na dostupný port.

Q: Lze GroupDocs.Search použít pro indexování v reálném čase?
A: Ano, podporuje indexování v reálném čase s vhodnými konfiguracemi.

Q: Jaké jsou některé časté problémy při nasazování uzlů?
A: Častými příčinami jsou problémy s konektivitou sítě a nesprávná nastavení cest. Ujistěte se, že všechny cesty a porty jsou správně nakonfigurovány.

Q: Je možné přidávat dokumenty do indexu po spuštění sítě?
A: Rozhodně. Můžete zavolat index.add(...) na libovolném uzlu a síť automaticky rozdistribuuje novou zátěž.

Q: Potřebuji licenci pro vývojové testování?
A: Dočasná zkušební licence stačí pro testování; pro produkční použití je vyžadována komerční licence.

Zdroje

Podle tohoto průvodce můžete efektivně přidávat dokumenty do indexu a spravovat robustní, vytvořit škálovatelnou vyhledávací síť pomocí GroupDocs.Search pro Java. Šťastné kódování!


Poslední aktualizace: 2026-05-22
Testováno s: GroupDocs.Search 25.4 pro Java
Autor: GroupDocs

Související tutoriály