私はLuceneNetを初めて使用します..非常に新しいと言わざるを得ません。それに関する多くのデータを読んだ後、クリアできなかったいくつかの疑問が頭にありました。さて、私は膨大な数の PDF/Docs/Excels/Images とそれに関連するデータを持つ Web ページを持っているシーンにいます。システムにはさまざまなタイプのユーザーがいて、特定の PDF/Docs にアクセスできるユーザーもいれば、そうでないユーザーもいます。アプリをデプロイする場所で Azure を使用します。したがって、ユーザーが何かを検索した場合、そのユーザーが表示を許可されている結果のみを表示したいと考えています。LuceneNetを使えばできますか?また、特定のドキュメント/URL などへのヒットを追跡して、ほとんどの検索などに表示できるようにしたいと考えています。LuceneNet を使用してこれを実装することは可能ですか? PDF/Doc/Docx/XSL/XSLX/PPT/PPTX などに関して、ファイルとその中のデータにインデックスを付けたい場合、どのようなものを使用する必要がありますか? つまり、BLOB ストレージに保存する必要がありますか? おすすめです?? アプリケーションをスケーラブルにする必要があります。LuceneNet はその点で私をサポートしてくれますか? worker ロールのインスタンスを複数持つことはできますか? インデックスの再作成はどのように行われますか? インデックスの再作成はすべてのインデックスを再生成しますか? その場合、インデックスの再作成中に検索できますか?? あまりにも多くの質問をまとめて申し訳ありません。それらのすべてが適切な順序ではない可能性もあります。思い出したように尋ねました。LuceneNet によるデータ (索引付けされたデータ) をどのように保管すればよいですか? つまり、BLOB ストレージに保存する必要がありますか? おすすめです?? アプリケーションをスケーラブルにする必要があります。LuceneNet はその点で私をサポートしてくれますか? worker ロールのインスタンスを複数持つことはできますか? インデックスの再作成はどのように行われますか? インデックスの再作成はすべてのインデックスを再生成しますか? その場合、インデックスの再作成中に検索できますか?? あまりにも多くの質問をまとめて申し訳ありません。それらのすべてが適切な順序ではない可能性もあります。思い出したように尋ねました。LuceneNet によるデータ (索引付けされたデータ) をどのように保管すればよいですか? つまり、BLOB ストレージに保存する必要がありますか? おすすめです?? アプリケーションをスケーラブルにする必要があります。LuceneNet はその点で私をサポートしてくれますか? worker ロールのインスタンスを複数持つことはできますか? インデックスの再作成はどのように行われますか? インデックスの再作成はすべてのインデックスを再生成しますか? その場合、インデックスの再作成中に検索できますか?? あまりにも多くの質問をまとめて申し訳ありません。それらのすべてが適切な順序ではない可能性もあります。思い出したように尋ねました。それらのすべてが適切な順序であるとは限りません。思い出したように尋ねました。それらのすべてが適切な順序であるとは限りません。思い出したように尋ねました。
1 に答える
まず、「Lucene InAction」という本をお勧めします。これはJava用ですが、現在のLucene.NETバージョンであるLuceneバージョン3.0.3にあります。APIは同じであるため、優れた開始リソースです。 。
回答するには...1)Lucene.NETで許可されたレコードのみを表示することは可能ですか?はい..あなたはそれをいくつかの方法で行うことができます。ユーザーが必要な場合はインデックスを分離するか、フィールドを追加して常に検索クエリに含めることができます。
2)はい、Luceneでもヒットを追跡できます(ヒットのログを保持し、必要に応じて挿入できます)
3)PDF、ドキュメント、Docxのインデックスを作成する場合は、テキストを抽出する必要があります。Luceneはあなたのためにそれをしません。したがって、Office Automationを使用できます(Word Docsの場合は無料のAPI)。APIは基本的なものですが、もっと成熟した/コストのかかるものが必要な場合は、AsPose(必要なことを正確に実行するための.NETライブラリ)を使用してください。
4)AzureDirectoryを抽象化し、BLOBストレージを使用するライブラリがあります。Lucene 3.0.3には安定性の問題があり、古いStorage Client API(2.0より前)を使用しているため、お勧めしません。Azure IaaS仮想マシンを使用して、Luceneインデックスをディスクに保存します。必要に応じて、いつでもスケーリングと追加、およびディスクのストライプ化を行うことができます。
5)IndexWriterは1つだけにする必要がありますが、複数のインデックスサーチャーを使用できます。
6)Lucene 2.9.xの時点で、「リアルタイム」検索と呼ばれるものがあります。この場合、インデックスを更新し、クエリを実行するサーチャーは、インデックスが完全にコミットされることなく、「ほぼ」リアルタイムで新しいデータを取得できます。 /flushed。