Elastic Search:3つ以上のフィールドの複数の組み合わせの結果を取得する方法

サンジェイ

Elastic Searchで、Foo Bar Baz Qux属性を含むドキュメントと他の属性がたくさんある場合

以下の方法で結果が得られるようにクエリを実行する必要があります

Foo Bar Baz Qux
foo1 bar1 baz1 qux1
foo1 bar1 baz1 qux2
foo1 bar1 baz2 qux1
foo1 bar1 baz2 qux2
foo1 bar2 baz1 qux1

基本的に、doc_countで利用できるすべての組み合わせが必要です。結果を使用すると、Foo = foo1、Bar = bar1、Baz = baz1、Qux = qux1の場合、20のドキュメント/レコードがあると言えます。

粗雑な方法は、terms集約内でterms集約を使用することです(この場合は4回)。

これを行うためのより簡単な方法があるはずです。

前もって感謝します

ヴァル

4つの埋め込みtermsアグリゲーションでのあなたの言及は良いものです。

もう1つの方法は、次のように、集計しようとしている4つの用語で構成される偽の用語を作成する単一のterms集計を使用するscriptことです。

{
   "size": 0,
   "aggs": {
      "combinations": {
          "terms": {
              "script": "[doc.foo.value, doc.bar.value, doc.baz.value, doc.qux.value].join(',')"
          }
      }
   }
}

注:上記のスクリプト集約を使用するには、必ず動的スクリプト有効にしてください

検索時にいくつかのサイクルを節約するためのさらに別の解決策は、別のフィールドでインデックス作成時にその集計用語を作成し、それを単一のterms集計で使用することです

編集:結果の順序が重要であり、のdoc_countに基づいて並べ替える必要がある場合 foo

{
   "size": 0,
   "aggs": {
        "primary": {
            "terms": {
                "field": "foo"
            },
           "aggs": {
               "combinations": {
                   "terms": {
                   "script": "[doc.foo.value, doc.bar.value, doc.baz.value, doc.qux.value].join(',')"
                   }
               }
           }
     }
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Elastic Search-複数のmust句を組み合わせる方法は?

分類Dev

Elastic Search:フィールドを使用した場合のクエリ文字列の結果が異なる

分類Dev

Elastic Searchは、複数のフィールドを1つのフィールドにマップします

分類Dev

Elastic Search:特定のフィールドのすべてのデータを取得する方法

分類Dev

Elastic Searchは、インデックス付きフィールドのクエリ結果を返しません

分類Dev

存在する場合にのみフィールドでフィルタリング、Elastic Search

分類Dev

Elastic Search> Groovyスクリプト>複数の結果がsymfonyであるネストされたフィールド

分類Dev

フィルター付きの複数のフィールドによるElastic Search Group

分類Dev

Elastic Searchは、単一のクエリリクエストで複数のフィールドを更新します

分類Dev

Java高レベルレストクライアントを介してElastic Searchで複数のフィールドを使用して検索する方法

分類Dev

Elastic Search Java API を使用して複数のフィールドで検索できますか?

分類Dev

Elastic SearchNest-2つのフィールドを比較します

分類Dev

以下の Elastic Search Query の結果が false

分類Dev

elastic4s-複数のフィールドで検索

分類Dev

Elasticsearchで3つ以上のフィルターを組み合わせる方法は?

分類Dev

Elastic Search(複数のノードを使用)とKibanaを1つのDocker構成ファイルに含めるにはどうすればよいですか?

分類Dev

Elastic Search:配列内の検索結果を制限する

分類Dev

Elastic Search PythonAPIを使用したフィールドの最大値

分類Dev

SpringブートをElastic Searchと統合する最良の方法

分類Dev

Elasticの_allフィールド全体を検索し、強調表示して結果を返します

分類Dev

Elastic SearchNEST-検索で複数レベルのフィルターを使用する方法

分類Dev

Elastic Search substring search

分類Dev

match_phraseを使用してフィルターを組み合わせる-Elastic1.7

分類Dev

Elastic search for .net

分類Dev

Sublisting Aggregations Elastic search

分類Dev

Elastic search _count queries

分類Dev

Elastic Search bulk operation

分類Dev

Elastic Search query filtering

分類Dev

Elastic Search Multimatch:1つを除くすべてのフィールドを検索する方法はありますか?

Related 関連記事

  1. 1

    Elastic Search-複数のmust句を組み合わせる方法は?

  2. 2

    Elastic Search:フィールドを使用した場合のクエリ文字列の結果が異なる

  3. 3

    Elastic Searchは、複数のフィールドを1つのフィールドにマップします

  4. 4

    Elastic Search:特定のフィールドのすべてのデータを取得する方法

  5. 5

    Elastic Searchは、インデックス付きフィールドのクエリ結果を返しません

  6. 6

    存在する場合にのみフィールドでフィルタリング、Elastic Search

  7. 7

    Elastic Search> Groovyスクリプト>複数の結果がsymfonyであるネストされたフィールド

  8. 8

    フィルター付きの複数のフィールドによるElastic Search Group

  9. 9

    Elastic Searchは、単一のクエリリクエストで複数のフィールドを更新します

  10. 10

    Java高レベルレストクライアントを介してElastic Searchで複数のフィールドを使用して検索する方法

  11. 11

    Elastic Search Java API を使用して複数のフィールドで検索できますか?

  12. 12

    Elastic SearchNest-2つのフィールドを比較します

  13. 13

    以下の Elastic Search Query の結果が false

  14. 14

    elastic4s-複数のフィールドで検索

  15. 15

    Elasticsearchで3つ以上のフィルターを組み合わせる方法は?

  16. 16

    Elastic Search(複数のノードを使用)とKibanaを1つのDocker構成ファイルに含めるにはどうすればよいですか?

  17. 17

    Elastic Search:配列内の検索結果を制限する

  18. 18

    Elastic Search PythonAPIを使用したフィールドの最大値

  19. 19

    SpringブートをElastic Searchと統合する最良の方法

  20. 20

    Elasticの_allフィールド全体を検索し、強調表示して結果を返します

  21. 21

    Elastic SearchNEST-検索で複数レベルのフィルターを使用する方法

  22. 22

    Elastic Search substring search

  23. 23

    match_phraseを使用してフィルターを組み合わせる-Elastic1.7

  24. 24

    Elastic search for .net

  25. 25

    Sublisting Aggregations Elastic search

  26. 26

    Elastic search _count queries

  27. 27

    Elastic Search bulk operation

  28. 28

    Elastic Search query filtering

  29. 29

    Elastic Search Multimatch:1つを除くすべてのフィールドを検索する方法はありますか?

ホットタグ

アーカイブ