GroupDocs.Search for Javaでインデックスにドキュメントを追加する
このチュートリアルでは、インデックスにドキュメントを追加する方法 を学び、GroupDocs.Search for Java を使用した高度にスケーラブルな検索ソリューションを作成します。検索ネットワークの構成、ノードのデプロイ、イベントの処理方法を順に説明し、アプリケーションが複数サーバーにまたがる大規模なドキュメントコレクションを効率的に処理できるようにします。
クイック回答
- What does “add documents to index” mean? インデックスにファイルを挿入し、検索可能にすることで、迅速にクエリできるようになることです。
- Which library provides this capability? GroupDocs.Search for Java。
- Do I need a license? 一時的なトライアルライセンスが利用可能です。商用環境では商用ライセンスが必要です。
- Can I scale horizontally? はい、複数の SearchNetworkNode インスタンスをデプロイすることで水平スケーリングが可能です。
- What Java version is required? JDK 8 以上。
インデックスにドキュメントを追加するとは?
インデックスにドキュメントを追加するとは、ソースファイル(PDF、Word 文書など)を GroupDocs.Search エンジンに取り込み、内容を検索可能にするプロセスです。インデックスは用語頻度データを保持し、クエリ時の高速取得を実現します。
ネットワーク環境で GroupDocs.Search for Java を使用する理由
- Scalability: 複数ノードにインデックス作成と検索の負荷を分散できます。
- Performance: データソースに近い場所でクエリを処理することでレイテンシを低減します。
- Reliability: ノードの追加・削除がダウンタイムなしで行えます。
- Flexibility: 多種多様なドキュメント形式を箱から出したままサポートします。
前提条件
- Java Development Kit (JDK) 8+ がインストールされていること。
- Maven が依存関係管理に使用できること。
- Java と Maven プロジェクト構造に基本的に慣れていること。
Required Libraries, Versions, and Dependencies
GroupDocs.Search for Java を実装するには、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>
または、最新バージョンを GroupDocs.Search for Java releases からダウンロードしてください。
Environment Setup Requirements
- システムに JDK 8 以上がインストールされていること。
- Maven がインストールされ、Maven プロジェクトを使用する場合は設定が完了していること。
Knowledge Prerequisites
- Java プログラミングの基本的な理解。
- Maven における依存関係管理に慣れていること。
Setting Up GroupDocs.Search for Java
- Maven Setup: 上記のリポジトリと依存関係を
pom.xmlファイルに追加します。 - Direct Download: あるいは、GroupDocs Search Java releases からライブラリをダウンロードします。
License Acquisition
- 無料トライアルまたは一時ライセンスは GroupDocs website から取得できます。
- フルアクセスとサポートが必要な場合は、商用ライセンスの購入をご検討ください。
Basic Initialization
GroupDocs.Search を Java アプリケーションで初期化します。
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.");
}
}
How to add documents to index in a Search Network
ネットワーク環境で インデックスにドキュメントを追加 すると、ワークロードが自動的に利用可能なノード間で分散され、スループットと耐障害性が向上します。
Feature 1: Configure Search Network
Overview
検索ネットワークの構成は、検索タスクを効率的に管理・分散できるようノードを設定することを意味します。
Step 1: Define Base Path and Port
String basePath = "YOUR_DOCUMENT_DIRECTORY/AdvancedUsage/Scaling/SearchNetworkNodeEvents/";
int basePort = 49140; // Change if necessary due to busy port issues
Step 2: Configure the Network
import com.groupdocs.search.scaling.*;
import com.groupdocs.search.scaling.configuring.*;
Configuration configuration = ConfiguringSearchNetwork.configure(basePath, basePort);
Feature 2: Deploy Search Network Nodes
Overview
ノードをデプロイして、ネットワーク全体に検索操作を分散・処理させます。
Step 1: Deploy Nodes Using Configuration
import com.groupdocs.search.scaling.*;
SearchNetworkNode[] nodes = SearchNetworkDeployment.deploy(basePath, basePort, configuration);
Feature 3: Subscribe to Node Events
Overview
ノードイベントにサブスクライブすることで、検索ネットワーク内のさまざまなアクションを監視・応答できます。
Step 1: Define Subscription Method
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...
}
Step 2: Use Subscription Method
SearchNetworkNode masterNode = nodes[0];
subscribe(masterNode);
Closing Nodes
使用後はすべてのデプロイ済みノードをクローズしてください。
for (SearchNetworkNode node : nodes) {
node.close();
}
Practical Applications
- Enterprise Search Solutions – 複数サーバーにまたがる大規模ドキュメント検索を処理する検索ネットワークを実装します。
- E‑commerce Platforms – 複数ノードにインデックス作成タスクを分散させ、製品検索機能を強化します。
3ンスを向上させます。
合わせてノード展開を最適化します。
- 大規模データセットを扱う際は、メモリ使用量を定期的に監視し、リークを防止します。
- 設定項目を活用して、インデックス作成と検索操作を細かくチューニングし、効率を高めます。
Common Issues and Solutions
| 問題 | 主な原因 | 対策 |
|---|---|---|
| ポート競合 | basePort が既に使用中 | basePort を使用可能な番号に変更する |
| ノードに到達できない | ファイアウォールまたはネットワークないを指しているか確認する | |
| メモリ** | ||
| A: はい、適切な設定によりリアルタイムインデックス作成をサポートします。 |
Q: What are some common issues during node deployment?
A: ネットワーク接続やパス設定の誤りが頻繁に発生します。すべてのパスとポートが正しく設定されていることを確認してください。
Q: Is it possible to add documents to index after the network is running?
A: もちろん可能です。任意のノードで index.add(...) を呼び出せば、ネットワークが自動的に新しいワークロードを分散します。
Q: Do I need a license for development testing?
A: テストには一時的なトライアルライセンスで十分です。商用環境では商用ライセンスが必要です。
Resources
- Documentation: GroupDocs Search Java Docs
- API Reference: GroupDocs API Reference
- Download: Latest Release
- GitHub: GroupDocs.Search GitHub Repository
- Free Support: GroupDocs Forum
- Temporary License: Obtain a Temporary License
このガイドに従うことで、インデックスにドキュメントを追加 し、GroupDocs.Search forラブルな検索ネットワークを効果的に管理できます。ハッピーコーディング!
Last Updated: 2026-01-24
Tested With: GroupDocs.Search 25.4 for Java
Author: GroupDocs