Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
<img src="//i.stack.imgur.com/RUiNP.png" height="16" width="18" alt="" class="sponsor tag img">elasticsearch Kibana:在表可视化中连接两个文档_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch_Kibana - Fatal编程技术网 elasticsearch Kibana:在表可视化中连接两个文档,elasticsearch,kibana,elasticsearch,Kibana" /> elasticsearch Kibana:在表可视化中连接两个文档,elasticsearch,kibana,elasticsearch,Kibana" />

elasticsearch Kibana:在表可视化中连接两个文档

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

我有一个数据表可视化,显示文档中的字段,这些字段具有电子邮件地址和id:

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可视化非常感兴趣,通过使用额外的数据扩充原始查找。谢谢