1

次のようにネストされたオブジェクトがあります

{"stats": {"abc": {"NumSources": 6, "Size": 12754890006, "Sources": {"NodeA": {"NumFiles": 246, "Size": 509071269}, "NodeB": {"NumFiles": 104, "Size": 823385346}, "NodeC": {"NumFiles": 466, "Size": 1259819487}, "NodeD": {"NumFiles": 178, "Size": 1712383515}, "NodeE-daemon": {"NumFiles": 79, "Size": 7338}, "NodeF": {"NumFiles": 244, "Size": 8450223051}}}}}

ここに私が作成したマッピングがあります

put statsview
{
  "mappings":{
    "test2":{

      "properties":{
          "stats":{
            "type":"nested",
            "properties":{
              "abc":{
                "type":"nested",
                "include_in_parent": true,
                "properties": {
                  "NumSources": {
                    "type": "long"
                  },
                  "Size": {
                    "type": "long"
                  },
                  "Sources": {
                    "type":"nested",
                    "include_in_parent": true,
                    "properties": {
                      "NodeA": {
                        "type":"nested",
                        "include_in_parent": true,
                        "properties": {
                          "NumFiles": {
                            "type": "long"
                          },
                          "Size": {
                            "type": "long"
                          }
                        }
                      },
                      "NodeB": {
                        "type":"nested",
                        "include_in_parent": true,
                        "properties": {
                          "NumFiles": {
                            "type": "long"
                          },
                          "Size": {
                            "type": "long"
                          }
                        }
                      },
                      "NodeC": {
                        "type":"nested",
                        "include_in_parent": true,
                        "properties": {
                          "NumFiles": {
                            "type": "long"
                          },
                          "Size": {
                            "type": "long"
                          }
                        }
                      },
                      "NodeD": {
                        "type":"nested",
                        "include_in_parent": true,
                        "properties": {
                          "NumFiles": {
                            "type": "long"
                          },
                          "Size": {
                            "type": "long"
                          }
                        }
                      },
                      "NodeE": {
                        "type":"nested",
                        "include_in_parent": true,
                        "properties": {
                          "NumFiles": {
                            "type": "long"
                          },
                          "Size": {
                            "type": "long"
                          }
                        }
                      },
                      "NodeF": {
                        "type":"nested",
                        "include_in_parent": true,
                        "properties": {
                          "NumFiles": {
                            "type": "long"
                          },
                          "Size": {
                            "type": "long"
                          }
                        }
                      }
                    }
                  }
                }
            }
          }
        }
      }
    }
  }
}

各レベルで仕様を含めていることに注意してください"include_in_parent": true,

現在、私の Kibana Discover ビューには、1 つのレコードしか表示されていません。これは理にかなっています。

GET statsview/_search { "query": { "match_all": {} } }

それは私に与えます

{
  "took": 1,
  "timed_out": false,
  "_shards": {
    "total": 5,
    "successful": 5,
    "failed": 0
  },
  "hits": {
    "total": 1,
    "max_score": 1,
    "hits": [
      {
        "_index": "statsview",
        "_type": "test2",
        "_id": "1",
        "_score": 1,
        "_source": {
          "logs": {
            "abc": {
              "NumSources": 6,
              "Size": 12754890006,
              "Sources": {
                "NodeA": {
                  "NumFiles": 246,
                  "Size": 509071269
                },
                "NodeB": {
                  "NumFiles": 104,
                  "Size": 823385346
                },
                "NodeC": {
                  "NumFiles": 466,
                  "Size": 1259819487
                },
                "NodeD": {
                  "NumFiles": 178,
                  "Size": 1712383515
                },
                "NodeE-daemon": {
                  "NumFiles": 79,
                  "Size": 7338
                },
                "NodeF": {
                  "NumFiles": 244,
                  "Size": 8450223051
                }
              }
            }
          }
        }
      }
    ]
  }
}

ここに画像の説明を入力

したがって、このレコードは Kibana の Discover ビューに表示されます。しかし、次のようなクエリを実行できません

logs.abc.Sources

NodeA から NodeF までのすべてのソースを見たいと思います。私も試してみました

logs.abc.Sources:[NodeA To NodeF]

しかし、私はまだステータス200を取得しています。

  1. ネストされたオブジェクトに対してそのようなクエリを実行するための Kibana のサポートはありますか?
  2. これらのネストされたオブジェクトを視覚化するにはどうすればよいですか?
  3. 私のマッピングは正しいですか?
4

0 に答える 0