elasticsearch Kibana:在表可视化中连接两个文档
我有一个数据表可视化,显示文档中的字段,这些字段具有电子邮件地址和id:elasticsearch Kibana:在表可视化中连接两个文档,elasticsearch,kibana,elasticsearch,Kibana,我有一个数据表可视化,显示文档中的字段,这些字段具有电子邮件地址和id: timestamp | email | field_id Feb 5th jdoe@gmail.com xyz123 这些字段属于同一弹性文档。但是,我有其他文档,其中包含与此唯一id相关的额外信息,并且可以将这些文档显示为自己的表: timestamp | field_id | key1 | key2 | key3 Feb 6th
timestamp | email | field_id
Feb 5th jdoe@gmail.com xyz123
这些字段属于同一弹性文档。但是,我有其他文档,其中包含与此唯一id相关的额外信息,并且可以将这些文档显示为自己的表:
timestamp | field_id | key1 | key2 | key3
Feb 6th xyz123 val1 val2 val3
您可以看到第一个表中的行与第二个表中的行具有相同的字段_id。我想知道的是,是否可以显示带有Kibana和/或弹性查询的合并行:
field_id | email | key1 | key2 | key3
xyz123 jdoe@gmail.com val1 val2 val3
这在某种程度上相当于SQL中关系数据库的联接。如果在Kibana中不可能做到这一点,也许有一种方法可以通过使用json输入和elastic的查询间接实现这一点,并执行一种应用程序端连接?看起来您可以尝试在没有SQL数据库(如ElasticeSearch)的情况下使用您的关系数据库知识。你有几个选择 备选案文1。将所有信息保存到同一文档中。如果在对初始文档编制索引后获得更多数据,只需使用额外的键进行更新即可。如果不同的文档有不同的模式,也就是一组密钥,那么对于ES来说这不是问题。此外,在查询ES时,如果您关心ES请求/响应的大小,可以指定要检索哪些字段 备选案文2。您可以对不同的id/电子邮件文档和id/密钥文档使用不同的类型,但要将它们存储在同一索引中。然后,您可以创建一个仪表板并放置多个可视化: 能够选择id的数据表; 电子邮件可视化,显示所有电子邮件一旦您通过单击可视化a中的id选择该id,Kibana将立即向您显示给定id的文档电子邮件 c键可视化,再次显示所有键,一旦选择id或电子邮件,此可视化将更新为仅显示与选择相关的键 备选案文3。与上面相同,但是您可以有不同的索引,而不是不同的类型。只要这些索引有一个共同的前缀,例如docs email和docs key,您就可以在kibana中使用它们的前缀从不同的索引检索数据
备选案文4。应用程序级连接,如您在问题中所述。ES为其存储的所有数据提供RESTAPI。您可以随时从中检索所需内容并构建客户端连接。这让人不禁要问,为什么您选择ES作为存储数据的后端,而不是关系数据库您无法在elasticsearch中执行联合操作,因此在kibana中也无法执行联合操作。您能否通过一个示例详细说明选项2?对Kibana可视化非常感兴趣,通过使用额外的数据扩充原始查找。谢谢