当前位置:  开发笔记 > 前端 > 正文

Kibana:在表格可视化中加入两个文档

如何解决《Kibana:在表格可视化中加入两个文档》经验,为你挑选了1个好方法。

我有一个数据表可视化显示来自具有电子邮件地址和ID的文档中的字段:

timestamp |         email       |  field_id
 Feb 5th       jdoe@gmail.com       xyz123

这些字段属于同一弹性文档.但是,我有其他文档,其中包含与此唯一ID相关的额外信息,并且可以将这些文件显示为自己的表:

timestamp |  field_id   |    key1   |   key2   |  key3
  Feb 6th     xyz123         val1       val2      val3

您可以在第一个表中看到行,第二个表中的行具有相同的field_id.我想知道的是,是否可以使用Kibana和/或弹性查询显示合并的行:

 field_id   |     email      |    key1   |   key2   |  key3
   xyz123     jdoe@gmail.com      val1       val2      val3

这有点等同于SQL中关系数据库的连接.如果在Kibana中这是不可能的,也许有一种方法可以通过使用带弹性的json输入和执行一种应用程序端连接的查询间接实现这一点?



1> oldbam..:

似乎您尝试将对关系数据库的了解与无SQL数据库(例如Elasticsearch(ES))一起使用。您有几种选择。

选项1。将所有信息保存到同一文档中。如果在为初始文档建立索引后获得更多数据,只需使用额外的键进行更新。如果不同的文档具有不同的架构(也称为键集),则对于ES来说不是问题。另外,在查询ES时,如果您担心ES的请求/响应的大小,则可以指定要检索的字段。

选项2。您可以types对不同的id / email文档和id / keys文档使用不同的名称,但要始终将它们存储在相同的文件中index。然后,您可以创建一个仪表板并放置几个可视化对象:a)能够选择的数据表id;b)通过单击显示所有emails的电子邮件可视化(一旦您id在可视化a中选择一个),您的Kibana将立即为您显示给定文档的电子邮件id c)按键可视化将显示所有keys(再次)当您选择id或时email,此可视化效果将更新为仅显示与所选内容相关的键)

选项#3。与上述相同,但您可以使用不同的indices而不是不同的types。只要这些索引具有公共前缀(例如docs-emaildocs-keys),您就可以在kibana中使用其前缀来从不同索引中检索数据

选项#4。您在问题中描述的应用程序级连接。ES对它存储的所有数据提供REST API。您始终可以从中检索所需的任何内容并建立客户端联接(这使您想知道为什么选择ES作为存储数据而不是关系数据库的后端)

推荐阅读
落单鸟人
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有