0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OpenSearch IngestionでネストされたJSONの中のフィールドを削除する方法

Posted at

前置き

OpenSearch Ingestionは、OpenSearchドメインにデータを取り込む部分をマネージドで実施してくれる機能です。これを利用することで、Lambdaなど作成することなく取り込みが設定できます。また、コンピューティングは勝手にスケールしてくれます。

このIngestionですが、取り込む際の加工処理もProcessorを使って記載できます。

このProcessorの中で、delete_entriesというものがあります。これはフィールドを指定しておくことで取り込む際にそのフィールドを削除してくれます。公式ドキュメントにあるように、以下のように動作します。

  • 設定値
  processor:
    - delete_entries:
        with_keys: ["message"]
  • 元データ
{"message": "hello", "message2": "goodbye"}
  • 処理後の取り込んだデータ
{"message2": "goodbye"}

本題

delete_entriesを使う際に、ネストされたJsonの中のフィールドを削除する際、普通にドットで指定するとうまくいきません。

  • 上手くいかない例
  processor:
    - delete_entries:
        with_keys: ["message.key1"]

以下のように、スラッシュで区切るとうまく削除されます。

  • 上手くいく例
  processor:
    - delete_entries:
        with_keys: ["message/key1"]
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?