Jak dodać zależność GroupDocs Maven dla sieci wyszukiwania

W tym obszernej przewodniku dowiesz się jak dodać zależność groupdocs Maven, skonfigurujesz solidną sieć wyszukiwania Java przy użyciu GroupDocs.Search oraz utrzymasz synchronizację swoich fragmentów (shards). Niezależnie od tego, czy indeksujesz dokumenty prawne, sprawozdania finansowe czy prace akademickie, poniższe kroki pomogą Ci stworzyć przeszukiwalne indeksy, rozłożyć obciążenie zapytań na węzły oraz utrzymać spójność danych przy minimalnym wysiłku.

Szybkie odpowiedzi

  • Co to jest zależność GroupDocs Maven? Artefakt Maven, który zawiera bibliotekę GroupDocs.Search dla projektów Java.
  • Dlaczego używać sieci wyszukiwania? Rozdziela indeksowanie i obciążenie zapytań na wiele węzłów, zwiększając szybkość i niezawodność.
  • Jak dodać katalogi do indeksu? Użyj IndexingDocuments.addDirectories na węźle głównym.
  • Jak synchronizować fragmenty? Wywołaj SynchronizeOptions na Indexer każdego węzła.
  • Czy potrzebna jest licencja? Tak, wymagana jest licencja próbna lub komercyjna do użytku produkcyjnego.

Co to jest zależność GroupDocs Maven?

GroupDocs Maven dependency to artefakt Maven, który zawiera bibliotekę GroupDocs.Search dla projektów Java.
Zapewnia wszystkie niezbędne klasy do tworzenia przeszukiwalnych indeksów, zarządzania węzłami sieci i wykonywania szybkich zapytań, a Maven automatycznie rozwiązuje zależności tranzytywne, dając gotowy do użycia silnik wyszukiwania w kilku linijkach w pliku pom.xml.

Jak dodać zależność GroupDocs Maven

Dodaj wpisy repozytorium i zależności do swojego pom.xml, a następnie uruchom mvn clean install; Maven pobiera JAR groupdocs-search oraz wymagane biblioteki, udostępniając API w Twoim projekcie. Po pomyślnym zbudowaniu możesz od razu rozpocząć korzystanie z klas com.groupdocs.search.

Konfiguracja Maven

Dodaj repozytorium i 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>

Wskazówka: Utrzymuj numer wersji aktualny, sprawdzając oficjalną stronę wydań.

Możesz także pobrać JAR bezpośrednio z oficjalnej strony: Wydania GroupDocs.Search dla Javy.

Dlaczego używać sieci wyszukiwania?

Sieć wyszukiwania umożliwia skalowanie poziome poprzez podział indeksu na fragmenty (shards), które znajdują się na oddzielnych węzłach. GroupDocs.Search obsługuje ponad 50 formatów wejściowych i przetwarza dokumenty wielostronicowe bez ładowania całego pliku do pamięci, zapewniając odpowiedzi na zapytania w czasie poniżej sekundy, nawet przy rosnącej objętości danych.

Wymagania wstępne

  • JDK (11 lub nowszy) zainstalowany.
  • IDE, takie jak IntelliJ IDEA lub Eclipse.
  • Podstawowa znajomość Javy, Maven oraz pojęć związanych z węzłami sieci.
  • Ważna licencja GroupDocs.Search (bezpłatna wersja próbna lub komercyjna).

Podstawowa inicjalizacja i konfiguracja

Zacznij od utworzenia katalogu indeksu:

import com.groupdocs.search.SearchIndex;
import com.groupdocs.search.options.IndexingOptions;

// Create an index in the specified directory
SearchIndex index = new SearchIndex("YOUR_INDEX_DIRECTORY");

Ten prosty krok przygotowuje środowisko do kolejnej konfiguracji sieci.

Przewodnik implementacji

Funkcja 1: Konfiguracja sieci wyszukiwania

Przegląd

Konfiguracja sieci wyszukiwania ustawia ścieżki plików i porty, z których będą korzystać węzły do komunikacji.

Ustawienie ścieżek i portów

Configuration to klasa, która przechowuje ścieżki sieciowe, porty i inne ustawienia klastra wyszukiwania.

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

// Set custom paths for input/output directories
String basePath = "YOUR_DOCUMENT_DIRECTORY/AdvancedUsage/Scaling/SynchronizingShards/";
int basePort = 49144; // Adjust if there's a port conflict

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

Obiekt configuration zawiera teraz wszystkie niezbędne ustawienia dla Twojej sieci wyszukiwania.

Funkcja 2: Wdrażanie węzłów sieci wyszukiwania

Przegląd

Wdroż węzły, aby rozłożyć obciążenie na sieć. Węzeł główny zarządza operacjami i zdarzeniami.

Kod wdrożenia

SearchNetworkNode reprezentuje węzeł w sieci wyszukiwania, który może pełnić rolę mastera lub pracownika.

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

SearchNetworkNode[] nodes = SearchNetworkDeployment.deploy(basePath, basePort, configuration);
// Retrieve the master node for further operations
SearchNetworkNode masterNode = nodes[0];

Funkcja 3: Subskrypcja zdarzeń węzła sieci wyszukiwania

Przegląd

Nasłuchiwanie zdarzeń umożliwia dynamiczne obsługiwanie zmian lub aktualizacji w sieci.

Implementacja subskrypcji

SearchNetworkNodeEvents udostępnia haki zdarzeń dla cyklu życia węzła i działań indeksowania.

import com.groupdocs.search.scaling.SearchNetworkNode;
import com.groupdocs.search.scaling.SearchNetworkNodeEvents;

SearchNetworkNodeEvents.subscribe(masterNode);

Funkcja 4: Dodawanie katalogów do indeksu

Przegląd

Dodawanie katalogów to kluczowy krok, który sprawia, że dokumenty są przeszukiwalne.

Dodawanie dokumentów

IndexingDocuments.addDirectories dodaje ścieżki folderów do indeksu w celu przetworzenia.

import com.groupdocs.search.indexing.IndexingDocuments;
import com.groupdocs.search.scaling.SearchNetworkNode;

IndexingDocuments.addDirectories(masterNode, "YOUR_DOCUMENT_DIRECTORY/DocumentsPath");

Funkcja 5: Synchronizacja fragmentów w węźle sieci wyszukiwania

Przegląd

Synchronizacja zapewnia spójność danych we wszystkich fragmentach.

Kod synchronizacji

SynchronizeOptions konfiguruje sposób synchronizacji fragmentów pomiędzy węzłami.

import com.groupdocs.search.indexing.Indexer;
import com.groupdocs.search.scaling.SearchNetworkNode;
import com.groupdocs.search.options.SynchronizeOptions;

SearchNetworkNode node = null; // Assume 'node' is initialized as a SearchNetworkNode

def synchronizeShards(SearchNetworkNode node) {
    Indexer indexer = node.getIndexer();
    SynchronizeOptions options = new SynchronizeOptions();
    indexer.synchronize(options);
}

Funkcja 6: Zamykanie węzłów sieci wyszukiwania

Przegląd

Poprawne zamykanie węzłów zwalnia zasoby i zapobiega wyciekom pamięci.

Zamykanie węzła

close() zwalnia zasoby i wyłącza węzeł sieci wyszukiwania.

import com.groupdocs.search.scaling.SearchNetworkNode;

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

Praktyczne zastosowania

  1. Zarządzanie dokumentami prawnymi – Szybkie wyszukiwanie akt spraw i precedensów.
  2. Prowadzenie rejestrów finansowych – Dostęp do wyciągów i ścieżek audytu w kilka sekund.
  3. Badania akademickie – Przeszukiwanie tysięcy prac w celu znalezienia odpowiednich cytowań.

Uwagi dotyczące wydajności

  • Optymalizacja zapytań – Twórz zwięzłe zapytania, aby skrócić czas odpowiedzi.
  • Zarządzanie pamięcią – Monitoruj zużycie sterty JVM; rozważ dostrajanie GC dla dużych indeksów.
  • Strategia skalowania – Dodawaj węzły proporcjonalnie do wolumenu danych i obciążenia zapytań.

Typowe problemy i rozwiązania

ProblemPrzyczynaRozwiązanie
Węzły nie mogą się połączyćKonflikt portówZmień basePort na nieużywaną wartość
Indeks nie aktualizuje sięBrak subskrypcji zdarzeńUpewnij się, że wywołano SearchNetworkNodeEvents.subscribe(masterNode)
Wysokie opóźnienieNiewystarczająca liczba fragmentówZwiększ liczbę węzłów i zrównoważ dystrybucję dokumentów

Najczęściej zadawane pytania

Q: Jaka jest główna korzyść z używania GroupDocs.Search?
A: Zapewnia szybkie, skalowalne możliwości wyszukiwania w dużych zestawach dokumentów przy minimalnej konfiguracji.

Q: Czy mogę dostosować konfiguracje węzłów w sieci wyszukiwania?
A: Tak, możesz ustawić własne ścieżki, porty i inne opcje za pomocą obiektu Configuration.

Q: Jak dodać katalogi do indeksu po uruchomieniu sieci?
A: Wywołaj IndexingDocuments.addDirectories(masterNode, "path") za każdym razem, gdy potrzebujesz zindeksować nowe foldery.

Q: Jak synchronizować fragmenty, gdy nowy węzeł dołącza do sieci?
A: Użyj metody synchronizeShards przedstawionej powyżej na nowo dodanym węźle.

Q: Czy potrzebna jest licencja do rozwoju?
A: Licencja próbna jest wystarczająca do testów; licencja komercyjna jest wymagana w produkcji.

Zakończenie

Postępując zgodnie z tym przewodnikiem, teraz wiesz, jak dodać zależność groupdocs Maven, skonfigurować wielowęzłową sieć wyszukiwania, indeksować katalogi i utrzymywać synchronizację fragmentów. Te kroki tworzą podstawę wysokowydajnego rozwiązania do wyszukiwania dokumentów, które może rosnąć wraz z potrzebami Twojej organizacji.


Last Updated: 2026-05-17
Tested With: GroupDocs.Search 25.4
Author: GroupDocs

Powiązane samouczki