"

Proceed.

I’ll translate.

Also note “step-by-step in order - do not skip sections”. Provide full translation.

Let’s craft.

Přidání dokumentů do indexu s vyhledáváním po částech v Javě

V moderních aplikacích, které potřebují rychle přidávat dokumenty do indexu a poté provádět rychlé dotazy po částech, chcete řešení, které škáluje bez přetížení paměti. Tento tutoriál vás provede nastavením GroupDocs.Search pro Java, přidáním více složek s dokumenty a konfigurací enginu tak, aby zvýšil výkon vyhledávání a zároveň udržel paměť indexu vyhledávání v Javě pod kontrolou. Ať už indexujete právní smlouvy, podporné tikety nebo výzkumné práce, níže uvedené kroky vám poskytnou implementaci připravenou pro produkci.

Rychlé odpovědi

  • Jaký je první krok? Vytvořit složku pro index vyhledávání.
  • Jak zahrnout mnoho souborů? Použijte index.add() pro každou složku s dokumenty.
  • Která možnost povoluje vyhledávání po částech? options.setChunkSearch(true).
  • Mohu pokračovat ve vyhledávání po první části? Ano, zavolejte index.searchNext() s tokenem.
  • Potřebuji licenci? Pro vývoj stačí bezplatná zkušební nebo dočasná licence; pro produkci je vyžadována plná licence.

Co se naučíte

  • Jak vytvořit index vyhledávání ve specifikované složce.
  • Kroky k přidání dokumentů do indexu z více umístění.
  • Konfiguraci možností vyhledávání pro povolení vyhledávání po částech.
  • Provádění počátečního a následného vyhledávání po částech.
  • Reálné scénáře, kde vyhledávání po částech vyniká.

Předpoklady

Abyste mohli tento návod sledovat, ujistěte se, že máte:

  • Požadované knihovny: GroupDocs.Search pro Java 25.4 nebo novější.
  • Nastavení prostředí: Nainstalovaný kompatibilní Java Development Kit (JDK).
  • Základní znalosti: Základy programování v Javě a znalost Maven.

Nastavení GroupDocs.Search pro Java

Pro začátek integrujte GroupDocs.Search do svého projektu pomocí Maven:

<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.

Získání licence

Pro vyzkoušení GroupDocs.Search:

  • Bezplatná zkušební verze – otestujte základní funkce bez závazku.
  • Dočasná licence – prodloužený přístup pro vývoj.
  • Nákup – plná licence pro produkční použití.

Základní inicializace a nastavení

Vytvořte index ve složce, kde má být uložená prohledávatelná data:

import com.groupdocs.search.*;

public class CreateIndex {
    public static void main(String[] args) {
        String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\SearchByChunks";
        // Creating an index in the specified folder
        Index index = new Index(indexFolder);
    }
}

Jak přidat dokumenty do indexu

Nyní, když index existuje, dalším logickým krokem je přidat dokumenty do indexu z míst, kde jsou vaše soubory uloženy.

1. Vytvoření indexu

Přehled: Nastavte adresář pro index vyhledávání.

String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\SearchByChunks";
Index index = new Index(indexFolder);

2. Přidání dokumentů do indexu

Přehled: Načtěte soubory z několika zdrojových složek.

String documentsFolder1 = "YOUR_DOCUMENT_DIRECTORY";
String documentsFolder2 = "YOUR_DOCUMENT_DIRECTORY";
String documentsFolder3 = "YOUR_DOCUMENT_DIRECTORY";
index.add(documentsFolder1);
index.add(documentsFolder2);
index.add(documentsFolder3);

Povolte vyhledávání po částech úpravou objektu možností.

SearchOptions options = new SearchOptions();
options.setChunkSearch(true);

4. Provádění počátečního vyhledávání po částech

Spusťte první dotaz s možnostmi povolenými pro částečné vyhledávání.

String query = "invitation";
SearchResult result = index.search(query, options);

5. Pokračování ve vyhledávání po částech

Iterujte přes zbývající části, dokud není vyhledávání dokončeno.

while (result.getNextChunkSearchToken() != null) {
    result = index.searchNext(result.getNextChunkSearchToken());
}

Proč používat vyhledávání po částech?

Vyhledávání po částech rozděluje obrovské kolekce dokumentů na zvládnutelné úseky, snižuje zatížení paměti a urychluje odezvu. Je zvláště užitečné, když:

  1. Právní týmy potřebují najít konkrétní klauzule v tisících smluv.
  2. Portály zákaznické podpory musí okamžitě zobrazit relevantní články znalostní báze.
  3. Výzkumníci procházejí rozsáhlé datové sady, aniž by načítali celé soubory do paměti.

Jak tento přístup zvyšuje výkon vyhledávání

Vyhledáváním menších částí místo celých souborů může engine:

  • Přeskočit irelevantní sekce již na začátku, čímž šetří CPU cykly.
  • Udržovat v paměti pouze aktivní část, což přímo snižuje spotřebu paměti indexu vyhledávání v Javě.
  • Paralelizovat zpracování částí na vícejádrových strojích pro rychlejší výsledky.

Správa paměti indexu vyhledávání v Javě

I když vyhledávání po částech již snižuje paměťovou stopu, můžete dále ladit JVM:

  • Přidělte dostatečnou haldu (-Xmx2g nebo vyšší) podle velikosti indexu.
  • Použijte index.optimize() po hromadném přidání pro kompresi struktury indexu.
  • Sledujte pauzy GC pomocí nástrojů jako VisualVM, abyste předešli špičkám latence.

Úvahy o výkonu

  • Správa paměti – Přidělte dostatečnou velikost haldy (-Xmx) pro velké indexy.
  • Monitorování zdrojů – Sledujte využití CPU během indexování a vyhledávání.
  • Údržba indexu – Pravidelně obnovujte nebo čistěte index, aby se odstranily zastaralá data.

Časté chyby a řešení problémů

ProblémProč se vyskytujeŘešení
OutOfMemoryError během indexováníPříliš malá velikost haldyZvyšte haldu JVM (-Xmx2g nebo vyšší)
Žádné výsledkyToken části nebyl zpracovánUjistěte se, že smyčka while běží, dokud getNextChunkSearchToken() není null
Pomalejší výkon vyhledáváníIndex není optimalizovánSpusťte index.optimize() po hromadném přidání

Často kladené otázky

Q: Co je vyhledávání po částech?
A: Vyhledávání po částech rozděluje datovou sadu na menší úseky, což umožňuje efektivní dotazy nad velkými objemy dat bez načítání celých dokumentů do paměti.

Q: Jak aktualizuji svůj index novými soubory?
A: Stačí zavolat index.add() s cestou k novým dokumentům; index je automaticky zahrne.

Q: Dokáže GroupDocs.Search pracovat s různými formáty souborů?
A: Ano, podporuje PDF, DOCX, XLSX, PPTX a mnoho dalších běžných formátů.

Q: Jaké jsou typické úzké hrdla výkonu?
A: Omezení paměti a neoptimalizované indexy jsou nejčastější; přidělte dostatečnou haldu a pravidelně optimalizujte index.

Q: Kde najdu podrobnější dokumentaci?
A: Navštivte oficiální GroupDocs.Search Documentation pro podrobné návody a reference API.

Q: Funguje vyhledávání po částech s šifrovanými PDF?
A: Ano, pokud poskytnete heslo pomocí příslušného přetížení API.

Q: Jak mohu sledovat průběh indexování?
A: Použijte přetížení Index.add(), které vrací objekt Progress, nebo se napojte na zpětné volání logování.

Zdroje


Poslední aktualizace: 2026-02-21
Testováno s: GroupDocs.Search 25.4 for Java
Autor: GroupDocs