サンキーダイアグラム (Sankey diagram) は、あるデータセットから、別のデータセットへのトラフィック量を表現することができる、特殊なフローチャートです。例えば、source
、target
および value
の 3 つの値で構成されるネットワークトラフィックの量を表すのに適しています。各ノードを source
および target
、また、ノード間の関係 (value
) を線で表現します。
特徴
サンキーダイアグラムの特徴は、以下のとおりです。
- 始点と終点のトラフィック量は等しく、また、主線の合計幅と副線の合計幅は等しく保たれます。
- 線で各トラフィックは表現され、線の太さで各トラフィックの量を示します。
- ノードの幅は、特定の状況下におけるトラフィックの量を示します。
たとえば、下表のデータをサンキーダイアグラムに表示することができます。
Source | Target | Value |
---|---|---|
node1 | node2 | 14 |
node1 | node3 | 12 |
node3 | node4 | 5 |
… | .. | … |
上記のデータの関係は、下図のように表現されます。

基本コンポーネント
- ノード
- 線
設定項目
設定項目 | 説明 |
---|---|
開始列 | 開始ノード |
終了列 | 終了ノード |
数値列 | 開始ノードと終了ノードを結ぶ線の値 |
パディング | 座標軸とグラフ境界線の間の間隔 |
手順
- 照会/分析ページのクエリ欄にクエリステートメントを入力し、期間を選択して、照会/分析をクリックします。
- グラフタブの
(サンキーダイアグラム) をクリックします。
- グラフのプロパティを設定します。
例
通常のサンキーダイアグラム
ログに
source
、 target
、value
の各フィールドが含まれる場合、各ログはノードとエッジの関係を示します。したがって、入れ子サブクエリ を使用して streamValue
の合計値を取得することができます。* | 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 Server Load Balancer のアクセスログのシナリオ
Log Service では、レイヤー 7 Server Load Balancer のアクセスログを収集することができます。そのアクセスログのサンキーダイアグラムを作成します。
* | 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))
