gpt4 book ai didi

join - Elasticsearch /Kibana : Application-side joins

转载 作者:行者123 更新时间:2023-11-29 02:45:16 24 4
gpt4 key购买 nike

是否可以使用 Kibana(最好是 Shiny 的新版本 4 beta)执行应用程序端连接?

我知道 ES/Kibana 不是为了取代关系数据库而构建的,通常对我的数据进行非规范化是一个更好的主意。然而,在这个用例中,这不是最好的方法,因为索引大小正在爆炸并且性能正在下降:

我正在索引数十亿个包含网络流 session 信息的文档,如下所示:源 ip、源端口、目标 ip、目标端口、时间戳。

现在我还想收集每个 ip 地址的附加信息,例如地理位置、asn、反向 dns 等。将此信息添加到每个 session 文档会使整个数据库变得难以管理:有数百万个具有相同 ip 地址的文档并且向所有这些文档添加相同的附加信息的冗余会导致巨大的膨胀和无响应的用户体验,即使在具有数百 GB ram 的集群上也是如此。

相反,我想创建一个单独的索引,其中仅包含唯一的 ip 地址和我为每个地址收集的元数据。

问题是:我怎样才能仍然使用 kibana 分析我的数据?对于查询返回的每个文档,kibana 应该在 ip-index 中执行查找,并使用此信息“虚拟丰富”每个 ip 地址。像添加虚拟字段这样的结构看起来像这样(动态):

源ip、源端口、源国家、源asn、源fqdn

我知道这会以多次查询为代价。

最佳答案

我不认为有这样的事情,但也许你可以尝试一下过滤器:

  1. 您创建了漂亮而简单的数据可视化效果不同的类型,只显示一个简单的数据。
  2. 您将这些不同的可视化效果放在一个仪表板中,以显示与一种联接类型相关的所有数据。
  3. 您使用过滤器作为您的连接键并使用完整的仪表板,由不同的面板组成,以了解特定的连接键(在您的情况下为 ips,或 session )

您需要为要进行的每种类型的联接创建 1 个仪表板。

请注意,您需要协调不同文档中字段的名称和映射!

让我们了解最新情况,这是一个有趣的问题,我现在想知道这么多文档的结果如何。

关于join - Elasticsearch /Kibana : Application-side joins,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26881398/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com