インデックスの削除と GroupDocs.Search for Java を使用したテキスト検索の実行方法

今日のデータ駆動型の世界では、インデックスの削除方法を迅速に行いながら、ライトニングスピードのフルテキスト検索 Java 機能を提供することが競争上の優位性となります。内部ナレッジベース、法的案件リポジトリ、または e コマース製品カタログを構築する場合でも、適切に調整された検索ネットワークはユーザー満足度を大幅に向上させます。このガイドでは、検索ネットワークの設定、検索可能インデックスの作成、検索パフォーマンスの最適化、および必要に応じてインデックスからドキュメントを削除する方法を、すべて GroupDocs.Search for Java を使用して学びます。

クイック回答

  • GroupDocs.Search for Java の主な目的は何ですか? 50 以上のドキュメント形式に対してフルテキスト検索を提供し、迅速なキーワード取得を可能にします。
  • 分散環境でテキスト検索を実行するにはどうすればよいですか? 検索ネットワークをデプロイし、マスターノードでドキュメントをインデックス化し、任意のノードでクエリを実行します。
  • インデックスを再構築せずにドキュメントを削除できますか? はい、Delete API を使用して選択したファイルを削除し、実質的に インデックスの削除方法 をフル再インデックスなしで実行できます。
  • 必要な Java バージョンは何ですか? JDK 8 以上。
  • 本番環境でライセンスは必要ですか? 有効な GroupDocs.Search ライセンスが必要です;無料トライアルが利用可能です。

「テキスト検索の実行」とは何ですか?

テキスト検索を実行するとは、フルテキストインデックスにクエリを投げ、指定されたキーワードやフレーズを含むドキュメントを取得することを意味します。GroupDocs.Search は倒立インデックスを構築し、数千ファイルに対してもこれらの検索を極めて高速に行います。

なぜ検索ネットワークを設定するのですか?

検索ネットワークはインデックス作成とクエリ処理の負荷を複数のノードに分散し、検索パフォーマンスの最適化、水平スケーリング、そして高可用性の維持を可能にします。このアーキテクチャは、レイテンシとスループットが重要なエンタープライズレベルのドキュメントリポジトリに最適です。

GroupDocs.Search for Java を使用した検索ネットワークの実装と最適化方法

設定をロードし、マスターノードを起動し、同じベースパスとポートを共有するワーカーノードを追加します。このようにネットワークをデプロイすると、任意のノードがインデックス作成またはクエリ要求を処理でき、ドキュメント数が数十万に増えても一貫した応答時間を提供します。

手順概要

  1. 共有ディレクトリと TCP ポートを含むベース構成を定義します。
  2. インデックスを管理し、ワーカーノードを調整するためにマスターノードを起動します。
  3. マスターに接続するワーカーノードを追加し、並列インデックス作成と検索を可能にします。
  4. リソース使用状況を監視し、JVM ヒープ設定を調整してレイテンシを低く保ちます。

GroupDocs.Search for Java でインデックスを削除する方法

SearchNode はインデックス作成とクエリ操作を管理する GroupDocs.Search ネットワーク内のノードを表します。delete メソッドはインデックスから指定されたドキュメントを削除します。

直接削除手順

  • SearchNode インスタンスで delete メソッドを呼び出します。
  • 相対ファイルパスの配列を提供します。
  • 変更をコミットします;インデックスは即座に更新され、以降の検索で削除されたファイルは返されなくなります。

検索ネットワークとは何ですか?

検索ネットワーク は、共通のインデックスリポジトリを共有する相互接続されたノードのクラスターで、分散インデックス作成とクエリ実行を可能にします。大規模ドキュメントコレクションに対して水平スケーリングとフォールトトレランスを実現します。

検索可能インデックスの作成方法(index documents java)

add メソッドはドキュメントを検索インデックスに登録します。add メソッドを使用してマスターノードにドキュメントを追加すると、ネットワークは変更をすべてのワーカーノードに伝搬します。このアプローチにより、追加の同期ステップなしで、すべてのノードが最新インデックスに対するクエリを処理できるようになります。

主な操作

  • マスターノードをソースファイルが格納されたフォルダーに指す。
  • インデックス作成ルーチンを呼び出す;ネットワークは各ファイルを処理し、倒立インデックスを更新する。
  • インデックスファイルが指定されたストレージディレクトリに出力されていることを確認する。

インデックス化されたファイルの削除方法(remove indexed files)

ドキュメントが不要になった場合、そのパスを指定して delete API を呼び出します。システムは倒立インデックスからそのファイルのエントリを削除し、ストレージを解放し、古い結果が返されるのを防ぎます。

GroupDocs.Search for Java の設定

まず、以下の設定を使用して GroupDocs.Search を Java プロジェクトに統合します。

Maven 設定

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>

直接ダウンロード

あるいは、GroupDocs から最新バージョンを直接ダウンロードできます。

ライセンス取得

GroupDocs は無料トライアルを提供しており、購入前に機能を評価できます。購入ページの手順に従って一時ライセンスを取得できます。これにより、テストフェーズ中にフル機能が有効になります。

基本的な初期化と設定

以下のコードで Java アプリケーションに GroupDocs.Search を初期化します。

import com.groupdocs.search.*;

class SearchNetworkSetup {
    public static void main(String[] args) {
        Index index = new Index("path/to/index/directory");
        // Additional configuration can be set here.
    }
}

実装ガイド

検索ネットワークの構成

概要: 検索ネットワークのベースパスとポートを設定し、ノード間の効果的な通信を可能にします。

手順 1: ベース構成の定義

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

String basePath = "YOUR_DOCUMENT_DIRECTORY/output/AdvancedUsage/Scaling/DeletingDocuments/";
int basePort = 49104; // Change if necessary.
Configuration configuration = ConfiguringSearchNetwork.configure(basePath, basePort);
  • パラメータ:
    • basePath: ネットワーク操作用のディレクトリパス。
    • basePort: 検索ネットワークで使用されるポート番号。

手順 2: トラブルシューティング

指定したポートがファイアウォール設定でブロックされていないか、他のアプリケーションで使用されていないことを確認してください。競合を避けるために必要に応じて調整します。

検索ネットワークノードのデプロイ

概要: 設定を使用して、ネットワーク全体にノードをデプロイし、分散インデックス作成と検索を行います。

import com.groupdocs.search.scaling.*;

String basePath = "YOUR_DOCUMENT_DIRECTORY/output/AdvancedUsage/Scaling/DeletingDocuments/";
int basePort = 49104;
Configuration configuration = ConfiguringSearchNetwork.configure(basePath, basePort);
SearchNetworkNode[] nodes = SearchNetworkDeployment.deploy(basePath, basePort, configuration);

// Nodes are now deployed and ready for further operations.
  • 主要な構成オプション:
    • ベースパスとポート: これらの値は、最初の構成で使用したものと一致させ、一貫性を保ちます。

ドキュメントのインデックス作成(create searchable index)

概要: マスターノードを使用して、ドキュメントを検索インデックスに効率的に追加します。

import com.groupdocs.search.scaling.*;

String documentsPath = "YOUR_DOCUMENT_DIRECTORY/path/to/documents";
SearchNetworkNode masterNode = nodes[0];
IndexingDocuments.addDirectories(masterNode, documentsPath);
  • 目的:
    • masterNode: ドキュメントインデックスを管理する主要ノード。
    • documentsPath: ドキュメントが格納されたディレクトリへのパス。

トラブルシューティングのヒント

ドキュメントパスが正しくアクセス可能であることを確認してください。これらのディレクトリの読み取り権限があることを確認します。

概要: インデックス化されたネットワーク全体で包括的なテキスト検索を実行します。

import com.groupdocs.search.scaling.*;

String query = "nulla";
SearchNetworkNode masterNode = nodes[0];
TextSearchInNetwork.searchAll(masterNode, query, false);
  • パラメータ:
    • query: 検索対象のテキスト。
    • masterNode: 検索を実行するノード。

インデックスからドキュメントを削除(delete documents index)

概要: ファイルパスを使用してインデックスから特定のドキュメントを削除します。

import com.groupdocs.search.scaling.*;

SearchNetworkNode node = nodes[0];
String[] filePaths = {
    "YOUR_DOCUMENT_DIRECTORY/Lorem ipsum.pdf",
    "YOUR_DOCUMENT_DIRECTORY/Lorem ipsum.docx"
};
deleteDocuments(node, filePaths);

void deleteDocuments(SearchNetworkNode node, String... filePaths) {
    Indexer indexer = node.getIndexer();
    DeleteOptions options = new DeleteOptions();
    indexer.delete(filePaths, options);
}
  • メソッドの目的:
    • node: 削除操作の対象ノード。
    • filePaths: インデックスから削除するドキュメントのパス。

トラブルシューティング

ファイルパスが正確で、ディレクトリにファイルが存在することを確認してください。問題が続く場合は、ネットワークの権限と接続性を確認します。

実用的な応用例

  1. エンタープライズ文書管理: 内部ナレッジの取得を効率化します。
  2. 法的案件分析: 複数リポジトリにまたがる関連ケースファイルを迅速に検索します。
  3. E コマースプラットフォーム: 説明文やレビューをインデックス化して製品検索速度を向上させます。
  4. 学術研究: 論文や学位論文の大規模デジタルライブラリを効率的に検索します。
  5. カスタマーサポートシステム: エージェントが過去のチケットを即座に検索できるようにし、応答時間を短縮します。

パフォーマンス考慮事項

  • インデックス作成速度の最適化: オフピーク時間に新しいドキュメントを段階的に追加し、レイテンシを低く保ちます。
  • リソース使用ガイドライン: ノード数を拡大する際は、CPU とメモリを監視します。
  • Java メモリ管理: ワークロードに応じて JVM ヒープ設定を調整します(例: 中規模インデックスの場合 -Xmx2g)。

結論

本ガイドに従うことで、GroupDocs.Search for Java を使用して 検索ネットワークの設定、検索可能インデックスの作成、テキスト検索の実行、そして インデックスからドキュメントを削除 する方法を学びました。これらの機能により、分散環境でも高速で信頼性の高いドキュメント取得が可能になります。

次のステップ

  • ワークロードに最適なバランスを見つけるために、さまざまなノード構成を試してみてください。
  • カスタムアナライザーや関連性チューニングなど、上級インデックスオプションをさらに掘り下げてください。
  • エンドツーエンドの文書処理のために、他の GroupDocs 製品との統合を検討してください。

よくある質問

Q: GroupDocs.Search for Java の主なユースケースは何ですか?
A: 多くのドキュメント形式に対してフルテキスト検索を提供し、大規模リポジトリで テキスト検索を実行 できるようにします。

Q: 大規模ネットワークで検索速度を向上させるにはどうすればよいですか?
A: 追加ノードをデプロイし、JVM ヒープを調整し、低トラフィック時間にインデックス作成をスケジュールして 検索パフォーマンスを最適化 します。

Q: コレクション全体を再インデックスせずに単一ドキュメントを削除できますか?
A: はい、コード例に示した delete documents index API を使用して特定のファイルを削除できます。

Q: 開発にライセンスは必要ですか?
A: テストには無料トライアルライセンスで十分です;本番環境では商用ライセンスが必要です。

Q: PDF、Word ファイル、メールを一緒にインデックス化できますか?
A: もちろんです—GroupDocs.Search は多数のフォーマットを標準でサポートしています。


最終更新日: 2026-07-07
テスト環境: GroupDocs.Search for Java 25.4
作者: GroupDocs

関連チュートリアル