Apache Superset是一款開源的企業(yè)級數(shù)據(jù)可視化和探索平臺乖篷。它具有直觀的界面,豐富的圖表與儀表盤類型,并支持大規(guī)模數(shù)據(jù)集,方便進行實時分析與探索枚驻。Apache Druid是一款高性能、分布式炮姨、低延遲的OLAP數(shù)據(jù)存儲方案。它適用于數(shù)據(jù)探查和快速數(shù)據(jù)摘要等場景,能輕松應對PB級數(shù)據(jù)。
本文將介紹如何結(jié)合Superset和Druid這兩個優(yōu)秀的開源軟件,快速搭建一個實時數(shù)據(jù)分析看板應用殊者。將二者整合,我們可以輕松實現(xiàn)一個幫助企業(yè)快速監(jiān)控數(shù)據(jù)、獲得數(shù)據(jù)洞察的智能平臺验夯。
一猖吴、環(huán)境準備
安裝 Druid,安裝和配置Superset
安裝步驟省略挥转,可自行搜索海蔽。添加 Druid 數(shù)據(jù)源
- 登錄Superset, 選擇“數(shù)據(jù)源”菜單
- 點擊“+ 數(shù)據(jù)源”按鈕,選擇“Druid”數(shù)據(jù)源類型
- 填寫Druid數(shù)據(jù)源相關(guān)信息:
- 名稱: Druid數(shù)據(jù)源名稱, 如test_druid
- 主機: Druid Broker主機IP/域名
- 端口:Druid Broker服務端口,默認為8082
- 點擊“保存”按鈕,Druid數(shù)據(jù)源添加成功!
二共屈、構(gòu)建Druid數(shù)據(jù)表和查詢
登錄Druid Console, 構(gòu)建數(shù)據(jù)表
在Druid Console通過上傳數(shù)據(jù)文件或提供數(shù)據(jù)流的方式創(chuàng)建數(shù)據(jù)表定義復雜的查詢
Druid支持豐富的查詢類型, 如GroupBy、TopN党窜、Timeseries等...(查詢語法示例)
{
"queryType": "groupBy",
"dataSource": "wikiticker",
"granularity": "all",
"dimensions": ["page","country"],
"aggregations": {
"count": "count"
},
"intervals": [
"2020-01-01/2020-01-02"
]
}
- queryType:指定GroupBy查詢類型
- dataSource:查詢的數(shù)據(jù)源
- granularity:聚合粒度,all表示全量數(shù)據(jù)
- dimensions:分組維度
- aggregations:聚合指標,這里使用count計數(shù)
- intervals:時間范圍
該查詢會按page和country兩個維度對wikiticker數(shù)據(jù)源在2020-01-01至2020-01-02的所有數(shù)據(jù)進行分組,并統(tǒng)計每個分組的記錄數(shù)拗引。
Druid通過簡潔的JSON配置支持構(gòu)建復雜的分組、TopN幌衣、時間序列等聚合查詢矾削。
三、在 Superset 中創(chuàng)建報表
- 新建Druid表格視圖
在Superset中,我們需要創(chuàng)建表格視圖來顯示Druid數(shù)據(jù)集的數(shù)據(jù)豁护。新建Druid表格視圖的步驟如下:
- 選擇數(shù)據(jù)源為我們之前添加的Druid數(shù)據(jù)源test_druid
- 選擇“Druid數(shù)據(jù)集”,這會拉取Druid Console中已有的數(shù)據(jù)集列表
- 選擇要查詢的Druid數(shù)據(jù)集,比如wikiticker
- 選擇要查詢的時間范圍,可選擇最近1小時怔软、1天、1周择镇、1月或自定義時間范圍
- 選擇要使用的查詢類型,包括Timeseries挡逼、TopN、GroupBy等
- 根據(jù)所選查詢類型配置對應的參數(shù),如分組維度腻豌、聚合指標等
- 點擊“引入表格”按鈕,表格視圖創(chuàng)建成功
- 使用多種圖表類型可視化數(shù)據(jù)
在新建的表格視圖上,點擊工具欄的“創(chuàng)建圖表”按鈕,選擇要使用的圖表類型,即可將查詢結(jié)果以圖表形式進行可視化展示家坎。
Superset支持線圖、柱狀圖吝梅、散點圖虱疏、地圖、盒形圖等多種圖表類型苏携,選擇合適的可視化形式做瞪。
- 構(gòu)建實時數(shù)據(jù)看板
將創(chuàng)建好的多個圖表和文本框拖動到儀表盤,設(shè)置自動刷新間隔,即可以實現(xiàn)一個實時數(shù)據(jù)監(jiān)控看板。
步驟如下:
- 點擊左側(cè)“儀表盤”菜單, 選擇“新建儀表盤”
- 輸入儀表盤名稱, 選擇布局樣式, 點擊“保存”
- 添加文本框右冻、圖像等組件進行裝飾(可選)
- 將創(chuàng)建好的圖表從左側(cè)的可用內(nèi)容拖動到儀表盤 Grid 空間中
- 點擊添加到儀表盤的圖表,在右側(cè)設(shè)置面板中設(shè)置自動刷新間隔(如每1分鐘)
- 回到儀表盤界面, 點擊右上方“保存并進入編輯模式”按鈕
- 調(diào)整組件大小和位置, 美化儀表盤整體樣式
- 點擊右上方“保存”按鈕, 實時數(shù)據(jù)看板創(chuàng)建成功!
四装蓬、總結(jié)
通過 Superset 和 Druid,我們實現(xiàn)了一個實時數(shù)據(jù)分析看板應用。Druid提供實時和歷史數(shù)據(jù)的存儲與查詢纱扭,Superset通過豐富的可視化手段, 將Druid查詢結(jié)果呈現(xiàn)直觀的網(wǎng)頁報表和儀表盤牍帚。
寫作是一個學習和思考的過程, 我也會不斷總結(jié)與改進。謝謝閱讀乳蛾,如果你對文章中的內(nèi)容有疑惑暗赶,歡迎點擊我頭像,看我個人介紹肃叶,與我取得聯(lián)系蹂随,謝謝~