我在Splunkbase中发现了这个名为3D图网络拓扑可视化(GitHub链接)的应用程序,我已经将它添加到我的Splunk环境中。
我正在执行一个简单的搜索大量的数据,并使用这个可视化工具。然而,可视化工具有时需要花费大量时间来加载最终结果。所以我做了一些发现。
这是我的SPL
index=test source=mysource
| dedup myaddress myneighboraddress
| stats values(vendor), count by myaddress, myneighboraddress
| table myaddress myneighboraddress count
编辑我采纳了@warren的建议(如下)并更新了我的搜索。虽然这确实改善了我的搜索时间,但我不认为核心问题出在我的搜索上。
index=test source=mysource
| fields - _raw
| fields myaddress myneighboraddress vendor
| stats values(vendor) as vendor count by myaddress, myneighboraddress
检查工作检查器后,我注意到我的搜索只需要从1秒到5秒。然而,根据我返回的事件总数(使用splunkhead
命令),我注意到可视化实际显示任何内容所需的加载时间很长。在我的搜索完成后,当可视化正在尝试处理图形时,我的浏览器也会弹出"页面无响应"的弹出框:您可以等待它变得有响应或退出页面。你想等吗?因为这个过程需要很长时间。
我已经阅读了README并确认我的chrome://gpu
具有"硬件加速";打开WebGL入口。此外,我确认我的chrome://settings
有选项"可用时使用硬件加速"。启用。我注意到当我的搜索完成,并且可视化器正在尝试完成处理时,我的GPU将接近0%,直到所有内容都正式加载(但仍然不稳定,帧率下降)。我知道这是一张罚单,但它最后一次更新是在2020年。
我的问题是:
- 硬件有一定的基准吗?
- 如何依赖于一个好的GPU是可视化构建出的图形?
- 是否有发布在某个地方的可视化结果的总事件/节点的基准?我看到ReadMe提供的示例图像显示总共大约有2k和6k个事件。超过10k个事件/节点是不可能的吗?
- 是否有任何方法可以在执行搜索后加速视觉结果的初始加载?
我已经执行了自己的基准测试,想知道这是正常的还是我做错了什么。我的测试完全基于我的搜索完成和可视化工具开始处理图形的时间。因此,我将在搜索结束时使用| head X
(如上所示),其中X是第1列下面的数字:
head of X (total nodes) | 总加载秒数 | 20000 | 42 |
---|---|
15000 | 21 |
10000 | 12 |
8000 | 10 |
6000 | 7 |
5000 | 4.7 |
4000 | 2.5 |
看看这个简化的版本是否对你有帮助(dedup
很少是合适的工具,而且在你这样做的stats
之前运行几乎总是毫无意义的):
index=test source=mysource vendor=* myaddress=* myneighboraddress=*
| fields - _raw
| fields myaddress myneighboraddress vendor
| stats count by myaddress myneighboraddress
根据事件的大小,删除_raw
可以极大地提高性能。同样,只保留您关心的字段
我删除了values(vendor)
,因为你的| table
立即删除了它
如果你想让它留在里面,用stats
行代替:
| stats values(vendor) as vendors count by myaddress myneighboraddress
目前,似乎简单的答案(在这篇文章的时候)如下:
- 没有基准(可以找到)
- 尽管在我的浏览器中启用了GPU加速,但它不清楚特定GPU硬件的基准
- 没有任何基准来帮助它的总节点的应用程序可以显示(在合理的时间内)
- 未知如何提高加载时间的视觉