2016-07-07 9 views
1

2つのインデックス(テーブル)の間で "Join"を行い、両方のインデックスに存在するドキュメントの特定のフィールドをチェックする必要があります。Elasticsearch "Join"テーブル

「dateExpiry」のような条件を追加したいと思いますが、エラーが表示されます。 2つ以上の索引を結合することは可能ですか?

GET cache-*/_search 
{ 
    "query": { 
    "bool": { 
     "must_not": [ 
     { 
      "query": { 
      "terms": { 
       "TagId": { 
       "index": "domain_block-2016.06", 
       "type": "cBlock", 
       "id": "57692ef6ae8c50f67e8b45", 
       "path": "TagId", 
       "range" : { 
       "dateExpiry" : { 
        "gte" : "20160705T12:00:00" 
       } 
       } 
      } 
      } 
     } 
     ] 
    } 
    } 
} 
+0

Elasticsearchは古典的な "結合"を行いません。 –

答えて

0

Terms Query Lookupのフィルタは現在サポートされていません。しかし、Elasticsearchには、結合/関係hereに関する素晴らしいドキュメントがあります。

Elasticsearchに対して2つのクエリを実行することが最善の方法です.1つはTagIdのリストを取得し、もう1つは除外句としてリストを含むものです。