2017-07-21 4 views
0

以下はユースケースです:[ElasticSearch]:特定の値を含むすべてのインデックスを取得する

特定の値を含むelasticsearchのすべてのインデックスをリストしようとしています。説明の目的のために は、私たちは、インデックステンプレートであることを次のよう考えてみましょう:

{ 
    "order": 0, 
    "template": "sample-*", 
    "settings": { 
    "index.refresh_interval": "300", 
    "index.number_of_replicas": "1", 
    "index.number_of_shards": "10" 
    }, 
    "mappings": { 
    "digital": { 
     "_source": { 
     "enabled": false 
     }, 
     "_all": { 
     "enabled": false 
     }, 
     "properties": { 
     "website": { 
      "index": "not_analyzed", 
      "store": false, 
      "type": "string", 
      "doc_values": true 
     }, 
     "iab_codes": { 
      "store": false, 
      "type": "long", 
      "doc_values": true 
     }, 
     "audiences": { 
      "store": false, 
      "type": "long", 
      "doc_values": true 
     } 
     } 
    } 
    }, 
    "aliases": { 

    } 
} 

このテンプレートでaudiencesフィールドが長いなどのシーケンスです。 [1,2,3]。このテンプレートに基づいて1日に1つのインデックスを作成します。 audiences配列フィールドに特定の値を含むすべてのインデックスのリストを取得するにはどうすればよいですか。

オーディエンスアレイに値3が含まれているすべてのインデックスをリストするようなものがあります。

ありがとうございます。

答えて

0

あなたは

http://localhost:9200/sample-*/_search?q=audiences:3&pretty 

に似た検索クエリを行うことができますし、Java APIを使用して、あなたはhits.hits._index

というか使用filter_pathの値が取得しようとすることができます

http://localhost:9200/sample*/_search?q=audiences:3&filter_path=hits.hits._index&pretty

Result will look like this

関連する問題