こんにちは
たとえば、私はPC(A)にあり、ドキュメントをインデックスに登録したいが、その結果をいくつかのリモートロケーションに保存するなど、リモートロケーションにluceneインデックスファイルを保存する方法はありますか? PC(B)のディレクトリは内部的にサポートされているか、それをサポートするカスタムコードを記述する必要がありますか?正確な応答にLuceneインデックスファイルをリモートロケーションに保存する
多くのおかげ
こんにちは
たとえば、私はPC(A)にあり、ドキュメントをインデックスに登録したいが、その結果をいくつかのリモートロケーションに保存するなど、リモートロケーションにluceneインデックスファイルを保存する方法はありますか? PC(B)のディレクトリは内部的にサポートされているか、それをサポートするカスタムコードを記述する必要がありますか?正確な応答にLuceneインデックスファイルをリモートロケーションに保存する
多くのおかげ
です。
ネットワークとして公開されているリモートファイルシステムに対して、FSDirectory.Open(@"\\server\index")
で直接作業することはできますが、すでに述べたように、ネットワークの待ち時間と速度がインデックスに影響します。
FSDirectory
またはRAMDirectory
を使用してローカルでインデックスを作成し、Directory.Copy(src, dest, closeDirSrc)
に電話をかけて、ネットワーク共有経由で遠隔地に転送することもできます。これは、インデックス作成中にネットワークオーバーヘッドがないため、リモートディレクトリに対して直接作業するよりも高速になります。
速度が問題でない場合、または冒険的な気がする場合は、必要な転送方法(ftp、電子メール、キャリアピジョンなど)を使用するカスタムディレクトリの実装(Directory
から継承)を試してみてください。
あなたはリモートディレクトリのマッピングドライブを作成することを意味しますか?もしリモートファイルシステムが良い解決策ではないなら、私は別のシステムに複数のインデクサーを持ち、検索要求を送る検索者を – Ehsan
@エーザン:私の提案は分散検索機能を複製しようとするのではなく、Solrを使うことです。それとは別に、あなたには非常に多くのオプションがありません。 – Xodarap