我在Elastic中有一个复杂的查询要求,我想知道在Elastic中这是否可能。 我的弹性索引具有以下数据结构:
{
{
"hostname" : "host1",
"neighbors" : ["host2", host3"]
},
{
"hostname" : "host2",
"neighbors" : ["host1", host3"]
},
{
"hostname" : "host3",
"dc" : "dc1",
"neighbors" : ["host2", host1"]
}
}
我的最终目标是使用“邻居”字段从已经具有该信息的数据中查找“ dc”数据。基本上,由于“ host1”是“ host3”的邻居,并且“ host3”具有dc信息,因此我应该可以说“ host1”也应具有“ dc1”作为“ dc”信息。 我可以在脚本中使用多个弹性查询来做到这一点,例如:从“ host1”获取“邻居”,然后遍历每个主机以获取dc信息,最终我将从“ host3”获取“ dc1”并完成。 但是我想知道是否可以构建一个可以执行上述操作的弹性查询,而不是多个单独的查询。