本文介绍桑基图操作步骤及案例。
简介
桑基图 (Sankey Diagram),是一种特定类型的流图,用于描述一组值到另一组值的流向。适合网络流量等场景,通常包含3组值source
、target
以及value
。source
和target
描述了节点的关系,而value
描述了该source
和target
之间边的关系。
基本构成如下:
- 节点
- 边
桑基图具有以下特点:
- 初始流量和结束流量相同,所有主边宽度的总和与所有分出去的分边宽度总体和近似值,保持流量的平衡。
- 两列之间边的宽度代表了特定状态下的流量大小,不同的边代表了不同的流量分流情况,它的宽度成比例地显示此边占有的流量。
- 节点不同的宽度代表了特定状态下的流量大小。
例如以下数据可以用桑基图表示。
source | target | value |
---|---|---|
node1 | node2 | 14 |
node1 | node3 | 12 |
node3 | node4 | 5 |
… | .. | … |
使用如下桑基图描述上述数据的关系。
操作步骤
普通桑基图示例
如果日志字段包含了source
、target
和value
,即每条日志本身就是节点和边的关系,可以通过嵌套子查询获取到steamValue
的总和。
* | select sourceValue, targetValue, sum(streamValue) as streamValue from (select sourceValue, targetValue,
streamValue, __time__ from log group by sourceValue, targetValue, streamValue, __time__ order by __time__ desc) group by sourceValue,
targetValue
负载均衡7层访问日志场景
日志服务支持使用前须知,可以直接通过访问日志绘制桑基图。
* | select COALESCE(client_ip, slbid, host) as source, COALESCE(host, slbid, client_ip) as dest, sum(request_length) as inflow group by grouping sets( (client_ip, slbid), (slbid, host))
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
转转请注明出处:https://www.yunxiaoer.com/164788.html