# Ingest Attachment Processor Plugin利用時のattachment型設定について

**URL:** <https://discuss.elastic.co/t/ingest-attachment-processor-plugin-attachment/56262>\
**Category:** 日本語による質問・議論はこちら\
**Created:** [July 25, 2016, 6:55am UTC](https://discuss.elastic.co/t/ingest-attachment-processor-plugin-attachment/56262 "2016-07-25T06:55:24Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![s-hatanaka](https://avatars.discourse-cdn.com/v4/letter/s/c68b51/32.png) [@s-hatanaka](https://discuss.elastic.co/u/s-hatanaka)\
**Post date:** [July 25, 2016, 6:55am UTC](https://discuss.elastic.co/t/ingest-attachment-processor-plugin-attachment/56262/1 "2016-07-25T06:55:24Z")

</div>

Elasticsearch、プラグインをを最新バージョン（5.0.0-alpha4）で構築・設定を行いました。  
ですが、Mappingの定義で「attachment」という型を認識させることができず、理由が不明な状況です。  
どのような考えで対応すべきかについて、教えていただけないでしょうか。  
（旧プラグインのMapper  
Attachmentではインストールするときに該当の型を認識できるようになるようなのですが、置き換わった新プラグインではどうすればよいのでしょうか）

‐関連ページ

[https://www.elastic.co/guide/en/elasticsearch/plugins/master/using-ingest-attachment.html](https://www.elastic.co/guide/en/elasticsearch/plugins/master/using-ingest-attachment.html)

---

<div class="post-metadata">

**Author:** ![johtani](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/johtani/32/44956_2.png) [@johtani](https://discuss.elastic.co/u/johtani)\
**Post date:** [July 25, 2016, 9:13am UTC](https://discuss.elastic.co/t/ingest-attachment-processor-plugin-attachment/56262/2 "2016-07-25T09:13:01Z")

</div>

Ingest Attachment PluginとMapper Attachment Pluginはそもそもコンセプトが異なります。

Ingest Attachment Pluginは5.0から導入されたIngest Nodeと言う仕組みにより、データを登録する前処理を行うことができるようになる機能になります。  
[Ingest Nodeに関してはこちらをご覧ください。](https://www.elastic.co/guide/en/elasticsearch/reference/master/ingest.html)

前処理でデータを展開できるようになったため、「attachment」という型は必要なくなっています。  
なので、authorやtitleなどがJSONに展開される形となります。  
上記のIngest Nodeに関するドキュメントを読んで、試してみてください。

---

<div class="post-metadata">

**Author:** ![s-hatanaka](https://avatars.discourse-cdn.com/v4/letter/s/c68b51/32.png) [@s-hatanaka](https://discuss.elastic.co/u/s-hatanaka)\
**Post date:** [August 2, 2016, 7:36am UTC](https://discuss.elastic.co/t/ingest-attachment-processor-plugin-attachment/56262/3 "2016-08-02T07:36:09Z")

</div>

失礼しました。pipelineの設定ミスでした。  
Attachmentの型はなくなったのですね。下記の記載があるので、Attachmentという型があるのだと思ってしまいました。  
ご確認いただけますか。必要に応じてマニュアルを見直して頂ければと思います。

□URL  
[https://www.elastic.co/guide/en/elasticsearch/plugins/master/using-ingest-attachment.html](https://www.elastic.co/guide/en/elasticsearch/plugins/master/using-ingest-attachment.html)

□マニュアル記載とご指摘頂いた点の不整合について  
Table 1. Attachment options  
target\_field のDefaultがattachment となっています。存在しないはずの型が記載されているようです。

---

<div class="post-metadata">

**Author:** ![johtani](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/johtani/32/44956_2.png) [@johtani](https://discuss.elastic.co/u/johtani)\
**Post date:** [August 2, 2016, 9:28am UTC](https://discuss.elastic.co/t/ingest-attachment-processor-plugin-attachment/56262/4 "2016-08-02T09:28:26Z")

</div>

`target_field`は「フィールド名」の指定になります。型ではないですね。  
なので、デフォルトだと`attachment`というオブジェクトフィールドの下に、タイトルなどが入る形になります。  
`target_field`を指定した場合は、ここのオブジェクトフィールドの名前が変更できます。

---

<div class="post-metadata">

**Author:** ![s-hatanaka](https://avatars.discourse-cdn.com/v4/letter/s/c68b51/32.png) [@s-hatanaka](https://discuss.elastic.co/u/s-hatanaka)\
**Post date:** [August 2, 2016, 10:03am UTC](https://discuss.elastic.co/t/ingest-attachment-processor-plugin-attachment/56262/5 "2016-08-02T10:03:17Z")

</div>

フィールド名はfield で設定してうまくいっています。target\_fieldとの違いは何なんでしょうか。  
（タイトルと関係のない質問になってしまっているので、起票しなおすべきかもですが、関連しているのでここで質問させて頂きます）

---

<div class="post-metadata">

**Author:** ![johtani](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/johtani/32/44956_2.png) [@johtani](https://discuss.elastic.co/u/johtani)\
**Post date:** [August 2, 2016, 10:23am UTC](https://discuss.elastic.co/t/ingest-attachment-processor-plugin-attachment/56262/6 "2016-08-02T10:23:30Z")

</div>

`field`はDescriptionにもありますが、base64されたデータ（PDFやWordなど）が入っているフィールドを指定します。取り出す元のフィールドの指定です。

`target_field`は、`field`のデータから抽出された`title`や`author`が保存されるフィールドになります。  
Ingest Attachmentのプラグインは、元データを消すのではなく、別のフィールド（`target_field`）にデータを抜き出す Processorになります。  
`_simulate`の結果を見ていただくとわかりますが、`field`で指定したフィールドとは別に`target_field`（指定しない場合は`attachment`）が増えていることがわかると思います。

---

<div class="post-metadata">

**Author:** ![s-hatanaka](https://avatars.discourse-cdn.com/v4/letter/s/c68b51/32.png) [@s-hatanaka](https://discuss.elastic.co/u/s-hatanaka)\
**Post date:** [August 2, 2016, 10:45am UTC](https://discuss.elastic.co/t/ingest-attachment-processor-plugin-attachment/56262/7 "2016-08-02T10:45:29Z")

</div>

迅速な回答ありがとうございます。  
試したらわかりました。

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 6, 2017, 1:46pm UTC](https://discuss.elastic.co/t/ingest-attachment-processor-plugin-attachment/56262/8 "2017-07-06T13:46:44Z")

</div>


