Zarządzanie głównym indeksem wyszukiwania przy użyciu GroupDocs.Search dla Javy

W dzisiejszych aplikacjach opartych na danych, zarządzanie indeksem wyszukiwania jest podstawą szybkiego i dokładnego wyszukiwania dokumentów. Niezależnie od tego, czy tworzysz korporacyjną bazę wiedzy, czy repozytorium dokumentów prawnych, dobrze zbudowany indeks pozwala zlokalizować informacje w milisekundach. Ten samouczek pokazuje, jak skonfigurować GroupDocs.Search dla Javy, utworzyć indeks przeszukiwalny, dodać dokumenty do indeksu oraz precyzyjnie dostroić optymalizację opcji wyszukiwania dla wydajnego wyszukiwania dokumentów.

Szybkie odpowiedzi

  • Jaki jest pierwszy krok, aby rozpocząć korzystanie z GroupDocs.Search? Dodaj zależność GroupDocs Maven do swojego pom.xml i zainicjalizuj bibliotekę.
  • Jak utworzyć nowy indeks wyszukiwania? Zainstancjuj SearchIndex z ścieżką folderu i wywołaj create() – to jednowierszowa operacja.
  • Czy mogę dodać wiele dokumentów jednocześnie? Tak, użyj index.addFolder(documentsFolder), aby załadować pliki hurtowo.
  • Co umożliwia obsługę wariantów słów? Skonfiguruj własny WordFormsProvider i włącz go w SearchOptions.
  • Gdzie mogę znaleźć najnowsze wydanie GroupDocs.Search? Na oficjalnej stronie wydań: GroupDocs.Search for Java releases.

Czym jest zarządzanie indeksem wyszukiwania?

Zarządzanie indeksem wyszukiwania odnosi się do procesu tworzenia, aktualizacji i utrzymania struktury danych przeszukiwalnej, która mapuje zawartość dokumentu na terminy wyszukiwalne. Odpowiednie zarządzanie zapewnia szybkie czasy odpowiedzi na zapytania oraz aktualne wyniki w dużych zbiorach dokumentów.

Dlaczego warto używać GroupDocs.Search dla Javy?

GroupDocs.Search obsługuje ponad 50 formatów plików (w tym DOCX, PDF, XLSX, PPTX, HTML oraz popularne typy obrazów) i może indeksować dokumenty wielostronicowe bez ładowania całego pliku do pamięci, zapewniając opóźnienie zapytań poniżej sekundy dla indeksów poniżej 1 GB. Wbudowane narzędzia językowe, takie jak własne dostawcy form słów, zapewniają 99 % trafności zapytań w środowiskach wielojęzycznych.

Wymagania wstępne

  • Java Development Kit (JDK) 8 lub nowszy.
  • Maven do zarządzania zależnościami.
  • GroupDocs.Search for Java w wersji 25.4 lub nowszej (zalecane jest najnowsze wydanie).

Wymagane biblioteki, wersje i zależności

  1. GroupDocs.Search for Java – wersja 25.4+.
  2. Konfiguracja Maven – dodaj repozytorium GroupDocs oraz zależność do swojego pom.xml:
<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>

Możesz również pobrać najnowszą wersję bezpośrednio z GroupDocs.Search for Java releases.

Wymagania dotyczące konfiguracji środowiska

  • Zainstalowany JDK 8+ i skonfigurowane JAVA_HOME.
  • Maven 3.6+ dostępny w wierszu poleceń.

Wymagania wiedzy

  • Podstawowa znajomość programowania w Javie (klasy, metody i obsługa wyjątków).
  • Znajomość pojęć takich jak indeksowanie, tokenizacja i zapytania wyszukiwania.

Jak skonfigurować GroupDocs.Search dla Javy?

Załaduj bibliotekę GroupDocs.Search, wskaż folder dla indeksu i opcjonalnie zastosuj licencję. To przygotowanie wymaga tylko kilku linii kodu i zapewnia, że silnik jest gotowy do efektywnego indeksowania i przeszukiwania dokumentów, obsługując duże zestawy plików przy minimalnym zużyciu pamięci.

Klasa Index reprezentuje przeszukiwalny indeks przechowywany na dysku i udostępnia metody do dodawania dokumentów oraz ich przeszukiwania.

import com.groupdocs.search.*;

public class SearchSetup {
    public static void main(String[] args) {
        // Initialize an index in a specified folder
        String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Index";
        Index index = new Index(indexFolder);
        
        System.out.println("GroupDocs.Search is set up and ready!");
    }
}

Jak utworzyć i zarządzać indeksem wyszukiwania?

Utwórz nowy folder indeksu, a następnie wypełnij go dokumentami ze źródłowego katalogu. Klasa SearchIndex jest podstawowym komponentem reprezentującym indeks w pamięci i na dysku, umożliwiając dodawanie, usuwanie lub aktualizację dokumentów bez konieczności przebudowy całej struktury przy każdym użyciu.

import com.groupdocs.search.*;

// Specify the path where the index will be stored
String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Index";
Index index = new Index(indexFolder);
  • Cel: Inicjalizuje nowy indeks wyszukiwania w określonym katalogu.
// Specify the directory containing documents to index
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY";

index.add(documentsFolder);
  • Wyjaśnienie: Dodaje wszystkie dokumenty z documentsFolder do nowo utworzonego indeksu. Ten krok jest kluczowy dla wypełnienia indeksu treścią przeszukiwaną.

Jak skonfigurować własnego dostawcę form słów?

Własny dostawca form słów informuje silnik, jak traktować różne warianty gramatyczne terminu (np. „run”, „running”, „ran”). Rejestrując te warianty, silnik wyszukiwania może dopasować zapytania do wszystkich odpowiednich form, znacząco poprawiając trafność dla użytkowników wpisujących dowolną morfologiczną wersję słowa.

import com.groupdocs.search.*;

// Set the custom word forms provider instance
index.getDictionaries().setWordFormsProvider(new SimpleWordFormsProvider());
  • Cel: Ulepsza wyszukiwanie poprzez rozumienie i zarządzanie różnymi wariantami gramatycznymi słów, zwiększając trafność wyników.

Jak włączyć opcje wyszukiwania dla form słów?

SearchOptions pozwala włączać funkcje takie jak dopasowanie rozmyte, rozróżnianie wielkości liter oraz obsługa form słów. Włączenie flagi form słów zapewnia, że silnik rozszerza zapytania o wszystkie zarejestrowane formy, oferując bardziej naturalne zachowanie wyszukiwania i wyższą czułość bez utraty precyzji.

Klasa SearchOptions konfiguruje sposób przetwarzania zapytań, np. włączając rozszerzanie form słów lub dopasowanie rozmyte.

import com.groupdocs.search.*;
import com.groupdocs.search.options.*;

// Create a SearchOptions instance
SearchOptions options = new SearchOptions();
options.setUseWordFormsSearch(true);
  • Wyjaśnienie: Ta konfiguracja pozwala wyszukiwaniu rozpoznawać różne formy słów, czyniąc je bardziej intuicyjnym i kompleksowym.

Jak wykonać wyszukiwanie z konfiguracją form słów?

Zdefiniuj ciąg zapytania i wykonaj wyszukiwanie przy użyciu wcześniej skonfigurowanych SearchOptions. Silnik automatycznie rozszerzy zapytanie o wszystkie pasujące formy słów, zwracając wyniki obejmujące każdy morfologiczny wariant wyszukiwanego terminu, co zwiększa satysfakcję użytkownika.

Obiekt SearchResult zawiera trafienia zwrócone przez zapytanie, w tym dopasowane fragmenty i oceny trafności.

import com.groupdocs.search.*;
import com.groupdocs.search.options.*;
import com.groupdocs.search.results.*;

// Define the query for searching word forms
String query = "mrs";

// Perform a search using the specified query and options
SearchResult result = index.search(query, options);
  • Cel: Wykonuje wyszukiwanie uwzględniające różne warianty gramatyczne słowa „mrs”, zwiększając dokładność wyszukiwania.

Typowe przypadki użycia

  1. Zarządzanie dokumentami w przedsiębiorstwie – Indeksuj tysiące dokumentów polityk, umów i raportów, a następnie pozwól pracownikom natychmiast znajdować informacje.
  2. Badania prawne – Obsługuj złożoną terminologię i synonimy w bazach danych orzecznictwa, zapewniając prawnikom dostęp do wszystkich istotnych precedensów.
  3. Biblioteki cyfrowe – Udostępnij czytelnikom wyszukiwanie w języku naturalnym wśród książek, artykułów i metadanych multimediów.

Uwagi dotyczące wydajności

  • Częstotliwość indeksowania – Planuj przyrostowe aktualizacje nocą, aby utrzymać indeks aktualny bez ponownego przetwarzania całego korpusu.
  • Ślad pamięci – Dla indeksów większych niż 2 GB włącz tryb MemoryMapped, aby przechowywać w RAM tylko niezbędne metadane.
  • Przetwarzanie wsadowe – Dodawaj dokumenty w partiach po 500–1 000, aby zmniejszyć obciążenie I/O i zwiększyć przepustowość.

Porady dotyczące rozwiązywania problemów

  • Wyszukiwanie nie zwraca wyników – Sprawdź, czy folder indeksu zawiera najnowsze pliki oraz czy SearchOptions ma ustawione enableWordForms na true.
  • Błędy Out‑Of‑Memory – Zwiększ rozmiar sterty JVM (-Xmx2g) lub przełącz się na indeksowanie MemoryMapped.
  • Nieprawidłowe formy słów – Upewnij się, że Twój własny WordFormsProvider rejestruje wszystkie potrzebne warianty; możesz zalogować słownik dostawcy podczas uruchamiania w celu weryfikacji.

Najczęściej zadawane pytania

Q: Jak GroupDocs.Search radzi sobie z dużymi zestawami danych?
A: Używa przyrostowego indeksowania i plików mapowanych w pamięci, co pozwala indeksować miliony dokumentów przy zużyciu RAM poniżej 1 GB.

Q: Czy mogę dostosować formy słów poza domyślnym dostawcą?
A: Tak, zaimplementuj IWordFormsProvider i zarejestruj go w SearchOptions, aby dostarczyć własne reguły morfologiczne.

Q: Jakie są wymagania systemowe dla GroupDocs.Search?
A: JDK 8+ i Maven 3.6+; biblioteka działa na każdym systemie operacyjnym obsługującym Javę (Windows, Linux, macOS).

Q: Jak mogę poprawić trafność wyszukiwania dla synonimów?
A: Dodaj mapowania synonimów do własnego dostawcy form słów lub włącz wbudowany słownik synonimów poprzez SearchOptions.

Q: Gdzie mogę uzyskać wsparcie w przypadku problemów?
A: Odwiedź GroupDocs Support Forum po pomoc społeczności i oficjalne wsparcie.

Zasoby


Ostatnia aktualizacja: 2026-06-22
Testowano z: GroupDocs.Search 25.4 for Java
Autor: GroupDocs

Powiązane samouczki