現在、ユーザーがMS OfficeおよびPDFドキュメントに対してテキストクエリを実行し、結果がクエリに最も一致するドキュメントのリストを返す全文検索システムを設計しています。返されたドキュメントを選択して、MS Word、Excel、またはPDFビューアー内でそのドキュメントを表示します。
ElasticSearchまたはSolrを使用して、未加工のバイナリドキュメント(つまり、.docx、.xlsx、.pdfファイル)を「データストア」にインポートし、表示するコマンドでユーザーのデバイスにドキュメントをエクスポートできますか。
以前は、MongoDB 2.6.6を使用してRawファイルをGridFSにインポートし、抽出されたテキストを別のコレクション(コレクションにはテキストインデックスが含まれていました)にインポートしました。ただし、MongoDBの全文検索は非常に基本的なものであるため、より複雑なテキスト検索を実行するためにSolrまたはElasticSearchのいずれかを調べています。
ニック
SolrとElasticsearchは両方とも、ドキュメントのcontentにインデックスを付けます。 Solrにはその組み込み機能があり、Elasticsearchにはプラグインが必要です。どちらの方法も簡単で、どちらもカバーの下でTikaを使用します。
どちらもドキュメント自体を保存しません。あなたは彼らにそれをさせることができますが、彼らはそれのために設計されていないので、あなたは苦しむでしょう。
また、現在、SolrもElasticsearchもプライマリストレージとして推奨されていません。彼らはそれを行うことができますが、それは彼らにとってミッションクリティカルではありません-例えば-ファイルシステムの実装にとって。
そのため、ファイルを別の場所に置き、Solr/Elasticsearchを検索のみに使用することをお勧めします。それは彼らが輝く場所です。
Elasticsearch添付プラグインを試してみます。詳細はこちらをご覧ください:
https://www.elastic.co/guide/en/elasticsearch/plugins/2.2/mapper-attachments.html
https://github.com/elasticsearch/elasticsearch-mapper-attachments
Apache Tikaの上に構築されています。
http://tika.Apache.org/1.7/formats.html
添付ファイルの種類
添付ファイルタイプを使用すると、Microsoft Office形式、オープンドキュメント形式、ePub、HTMLなど、さまざまな「添付ファイル」タイプフィールド(base64としてエンコード)にインデックスを付けることができます(完全なリストはここにあります)。
添付ファイルタイプはプラグイン拡張機能として提供されます。プラグインは、ダウンロードして$ ES_HOME/pluginsの場所に配置できるシンプルなZipファイルです。自動的に検出され、添付ファイルの種類が追加されます。
サポートされているドキュメント形式
ハイパーテキストマークアップ言語
XMLおよび派生形式
- Microsoft Officeドキュメント形式
- OpenDocumentフォーマット
- iWorksドキュメント形式
- ポータブルドキュメントフォーマット
- 電子出版フォーマット
- リッチテキスト形式
- 圧縮およびパッケージング形式
- テキスト形式
- フィードとシンジケーションの形式
- ヘルプ形式
- オーディオ形式
- 画像フォーマット
- ビデオ形式
- Javaクラスファイルとアーカイブ
- ソースコード
- メール形式
- CADフォーマット
- フォント形式
- 科学フォーマット
- 実行可能なプログラムとライブラリ
- 暗号形式
Elasticsearchは、ドキュメント(.pdfs、.docsなど)を_source
フィールド。 NoSQLデータストアとして使用できます(MongoDBと同じ)。
Solrについて:
ドキュメントがメタデータ検索でのみ返される必要がある場合、SolrはBinaryFieldフィールドタイプを備えており、これにbase64エンコードされたバイナリデータを送信できます。一般的には、インデックス(RAM要件/パフォーマンス)、および可能であれば、外部にファイルを保存する設定(およびsolrのファイルへのパス)の方が適している場合があります。
Solrがpdf/doc内のテキストに自動的にインデックスを付けたい場合-extractrequesthandlerで可能です: https://wiki.Apache.org/solr/ExtractingRequestHandler
パーティーに少し遅れましたが、これは誰かを助けるかもしれません:)
同様の問題があり、いくつかの調査で fscrawler に導かれました。説明:
このクローラーは、PDF、Open Office、MS Officeなどのバイナリドキュメントのインデックス作成に役立ちます。
主な機能: