クローラについて


(nori) #1

定期的にファイルサーバー内のファイルの中身をElasticsearchでインデックス化したいのですが、インデックス化対象のファイルにはCADファイル(複数形式)があり、作り込みが必要と考えています。
機能拡張可能なクローラ?またはLogstashのプラグインを作成?など情報があれば教えて頂きたいと思います。


(tsgkdt) #2

CADファイル(複数形式)のところについて

既にご存知かもしれませんが、
ElasticsearchのIngestNodeでファイルからテキストを抽出するのには、Apache Tikaを使っています。

https://www.elastic.co/guide/en/elasticsearch/plugins/master/ingest-attachment.html

The ingest attachment plugin lets Elasticsearch extract file attachments in common formats (such as PPT, XLS, and PDF) by using the Apache text extraction library Tika.

また、ファイルサーバのクローラ実装の多くは、Apache TikaやPOIをご利用のようなので、まずIndex対象となっているCADファイルのそれぞれの形式が、Tikaで期待するテキストが抽出できるかを確認されるのが良いと思います。

そこで、Tikaじゃ対応していない形式だ! 期待するテキストが取れてない!
となりましたら、他のテキスト抽出方法を検討することになるでしょう。
例えば、こういう製品なんかもあります。
https://www.antenna.co.jp/axx/function02.html

これを、ファイルサーバのクローラの選定の前にまず確認しておいた方が良いかなと思いました。
参考になれば幸いです。


(nori) #3

ありがとうございます。
Tikaでは期待した情報が取得できないものもあるようなので、まずはそこをどうするか検討したいと思います。


(Jun Ohtani) #4

クローラーはこんなものもあります。参考になればと。

https://fscrawler.readthedocs.io/en/fscrawler-2.5/

残念ながらCADの形式がどんなもので、どのような検索をしたいのかがわかりませんが。。。
JSONやXMLにすればファイルをクロールするといったことが可能です。
もしくは、Tikaを使うパターンなども。


(nori) #5

ありがとうございます。

事前にCADファイルから必要な情報をJSONやXMLで抜き出し、ファイルで保存。
クローラが拾ってインデックス化という事でしょうか。

事前に情報を抜き出せない場合、クロール時にクローラの機能を拡張して特定のファイルからは必要な情報を抜き出してインデックス化する事も可能でしょうか?


(Jun Ohtani) #6

このクローラーが対応してるかどうかはドキュメントやソースを読んでみていただくのがいいかなぁと。


(system) #7

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.