Bangun Jaringan Pencarian yang Dapat Diskalakan – Indeks Dokumen dengan GroupDocs.Java

Dalam tutorial ini Anda akan belajar cara menambahkan dokumen ke indeks dan membangun jaringan pencarian yang dapat diskalakan dengan GroupDocs.Search untuk Java. Kami akan menjelaskan cara mengonfigurasi jaringan pencarian, menyebarkan node, dan menangani peristiwa sehingga aplikasi Anda dapat memproses koleksi dokumen besar secara efisien di beberapa server.

Jawaban Cepat

  • Apa arti “add documents to index”? Itu berarti memasukkan file ke dalam indeks yang dapat dicari sehingga dapat dipertanyakan dengan cepat.
  • Perpustakaan mana yang menyediakan kemampuan ini? GroupDocs.Search untuk Java.
  • Apakah saya memerlukan lisensi? Lisensi percobaan sementara tersedia; lisensi komersial diperlukan untuk produksi.
  • Bisakah saya melakukan skala secara horizontal? Ya—dengan menyebarkan beberapa instance SearchNetworkNode.
  • Versi Java apa yang diperlukan? JDK 8 atau lebih tinggi.

Apa itu menambahkan dokumen ke indeks?

Muat file sumber Anda (PDF, DOCX, PPTX, dll.) ke dalam mesin GroupDocs.Search, yang mengekstrak teks, membangun tabel frekuensi istilah, dan menyimpannya dalam file indeks. Indeks yang dihasilkan memungkinkan kueri kata kunci dalam hitungan subdetik bahkan pada koleksi berisi ratusan halaman.

Mengapa menggunakan GroupDocs.Search untuk Java dalam lingkungan jaringan?

Sebarkan beban kerja pengindeksan dan pencarian ke beberapa node, kurangi latensi kueri dengan memproses dekat dengan sumber data, serta tambahkan atau hapus node tanpa waktu henti. Arsitektur ini memungkinkan Anda menelusuri di seluruh server sambil menjaga kinerja tetap konsisten.

Prasyarat

  • Java Development Kit (JDK) 8+ terpasang.
  • Maven untuk manajemen dependensi.
  • Familiaritas dasar dengan Java dan struktur proyek Maven.

Perpustakaan, Versi, dan Dependensi yang Diperlukan

Untuk mengimplementasikan GroupDocs.Search untuk Java, sertakan hal berikut dalam proyek Maven Anda:

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

Alternatifnya, unduh versi terbaru dari Rilisan GroupDocs.Search untuk Java. Anda juga dapat menemukan rilisnya di Rilisan GroupDocs Search Java.

Persyaratan Penyiapan Lingkungan

  • JDK 8 atau lebih tinggi terpasang di sistem Anda.
  • Maven terpasang dan dikonfigurasi jika menggunakan proyek Maven.

Prasyarat Pengetahuan

  • Pemahaman dasar tentang pemrograman Java.
  • Familiaritas dengan mengelola dependensi di Maven.

Menyiapkan GroupDocs.Search untuk Java

  1. Pengaturan Maven: Tambahkan repositori dan dependensi seperti yang ditunjukkan di atas dalam file pom.xml Anda.
  2. Unduhan Langsung: Alternatifnya, unduh perpustakaan dari Rilisan GroupDocs Search Java.

Perolehan Lisensi

  • Dapatkan lisensi percobaan gratis atau sementara dengan mengunjungi situs web GroupDocs.
  • Untuk akses penuh dan dukungan, pertimbangkan membeli lisensi komersial.

Inisialisasi Dasar

Inisialisasi GroupDocs.Search dalam aplikasi Java Anda:

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.");
    }
}

Cara menambahkan dokumen ke indeks dalam Jaringan Pencarian?

Muat dokumen Anda melalui node mana pun dalam jaringan; kerangka kerja secara otomatis mendistribusikan beban kerja pengindeksan, menyeimbangkan beban, dan memperbarui indeks bersama secara waktu nyata. Setiap node memproses file yang ditugaskan, mengekstrak teks, dan menulis perubahan inkremental ke indeks pusat, memastikan konten yang baru ditambahkan menjadi dapat dicari di semua node hampir seketika.

Fitur 1: Mengonfigurasi Jaringan Pencarian

Gambaran Umum

Mengonfigurasi jaringan pencarian melibatkan penyiapan node untuk mengelola dan mendistribusikan tugas pencarian secara efisien.

Langkah 1: Tentukan Jalur Dasar dan Port

Kelas SearchNetworkNode mewakili satu node yang berpartisipasi dalam indeks terdistribusi.

String basePath = "YOUR_DOCUMENT_DIRECTORY/AdvancedUsage/Scaling/SearchNetworkNodeEvents/";
int basePort = 49140; // Change if necessary due to busy port issues
Langkah 2: Konfigurasikan Jaringan

NetworkConfiguration menyimpan pengaturan umum (jalur dasar, port, faktor replikasi) yang dibaca setiap node saat startup.

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

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

Fitur 2: Menyebarkan Node Jaringan Pencarian

Gambaran Umum

Sebarkan node untuk mendistribusikan dan menangani operasi pencarian di seluruh jaringan Anda.

Langkah 1: Sebarkan Node Menggunakan Konfigurasi

Instansi SearchNetworkNode dimulai dengan file konfigurasi yang sama, memungkinkan mereka menemukan satu sama lain melalui rentang port dasar yang ditentukan.

import com.groupdocs.search.scaling.*;

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

Fitur 3: Berlangganan ke Peristiwa Node

Gambaran Umum

Berlangganan ke peristiwa node memungkinkan Anda memantau dan merespons berbagai tindakan dalam jaringan pencarian.

Langkah 1: Tentukan Metode Berlangganan

NodeEventListener adalah antarmuka yang Anda implementasikan untuk menerima panggilan balik tentang kemajuan pengindeksan, kesalahan, dan perubahan kesehatan node.

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...
}
Langkah 2: Gunakan Metode Berlangganan

Daftarkan listener Anda pada setiap node sehingga Anda mendapatkan umpan balik waktu nyata selama operasi batch besar.

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

Selalu matikan node dengan lembut untuk membersihkan penulisan yang tertunda dan melepaskan soket jaringan.

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

Aplikasi Praktis

  1. Solusi Pencarian Perusahaan – Implementasikan jaringan pencarian untuk menangani pencarian dokumen berskala besar di seluruh beberapa server.
  2. Platform E‑commerce – Tingkatkan kemampuan pencarian produk dengan mendistribusikan tugas pengindeksan ke beberapa node.
  3. Sistem Manajemen Konten (CMS) – Tingkatkan kinerja pengambilan dan pembaruan konten dalam lingkungan CMS.

Pertimbangan Kinerja

  • Optimalkan penyebaran node berdasarkan sumber daya sistem Anda.
  • Pantau penggunaan memori secara teratur untuk mencegah kebocoran, terutama saat menangani dataset besar.
  • Manfaatkan pengaturan konfigurasi untuk menyempurnakan operasi pengindeksan dan pencarian demi efisiensi yang lebih baik.

Masalah Umum dan Solusinya

MasalahPenyebab UmumSolusi
Konflik portbasePort sudah digunakanUbah basePort ke nomor yang tersedia
Node tidak dapat dijangkauAturan firewall atau jaringanBuka port yang diperlukan dan verifikasi konektivitas
Indeks tidak diperbaruiJalur dokumen tidak tepatVerifikasi basePath mengarah ke direktori yang benar
Penggunaan memori tinggiPengindeksan batch besarIndeks dokumen dalam batch lebih kecil atau tingkatkan ukuran heap

Pertanyaan yang Sering Diajukan

Q: Bagaimana cara menangani konflik port saat menyebarkan node?
A: Ubah variabel basePort dalam kode konfigurasi Anda ke port yang tersedia.

Q: Bisakah GroupDocs.Search digunakan untuk pengindeksan waktu nyata?
A: Ya, ia mendukung pengindeksan waktu nyata dengan konfigurasi yang tepat.

Q: Apa saja masalah umum selama penyebaran node?
A: Konektivitas jaringan dan pengaturan jalur yang salah sering menjadi penyebab. Pastikan semua jalur dan port dikonfigurasi dengan benar.

Q: Apakah memungkinkan menambahkan dokumen ke indeks setelah jaringan berjalan?
A: Tentu saja. Anda dapat memanggil index.add(...) pada node mana pun, dan jaringan akan mendistribusikan beban kerja baru secara otomatis.

Q: Apakah saya memerlukan lisensi untuk pengujian pengembangan?
A: Lisensi percobaan sementara sudah cukup untuk pengujian; lisensi komersial diperlukan untuk penggunaan produksi.

Sumber Daya

Dengan mengikuti panduan ini, Anda dapat secara efektif menambahkan dokumen ke indeks dan mengelola membangun jaringan pencarian yang dapat diskalakan yang kuat menggunakan GroupDocs.Search untuk Java. Selamat coding!


Terakhir Diperbarui: 2026-05-22
Diuji Dengan: GroupDocs.Search 25.4 for Java
Penulis: GroupDocs

Tutorial Terkait