技術領域
本發明涉及云計算、大數據計算、流式計算、數據可視化領域,具體涉及 到一種面向實時大數據平臺Storm的運行時三維可視化系統。
背景技術
Storm云環境內部實時可視化對于感知云環境健康狀態是及其重要的。
首先,Storm作為海量實時數據流處理平臺,其必須保證高可獲得性、高可 靠性和高使用性,挖掘Storm集群內部狀態,并將其可視化對于保證高可獲得 性和高可靠性是至關重要的。
其次,Storm云集群無論是從節點規模還是流數據規模而言,從任務到物理 節點的部署都具有高度分布式化的特性,這使得獲取整個云環境的狀態變得十 分困難。加之,三維可視化具有速度慢、開銷大、可移植性差等特性,給面向 實時大數據平臺Storm的運行時三維可視化系統的開發帶來了諸多挑戰。
發明內容
本發明提出一種面向實時大數據平臺Storm的運行時三維可視化系統,解 決了現有技術中獲取整個云環境的狀態十分困難的問題。
本發明的技術方案是這樣實現的:
一種面向實時大數據平臺Storm的運行時三維可視化系統,周期性地與 Storm云環境主節點交互,感知集群節點個數和資源消耗、worker與任務線程到 Storm云的物理映射、每個任務資源消耗、拓撲結構的靜態結構和動態屬性的狀 態,實現對Storm云環境內部運行狀態的監控;同時,利用OpenGL在Java虛 擬機上實現的JOGL開源庫來實現對所獲得的狀態的實時可視化。
可選地,Storm云環境上運行的Nimbus主節點為外界提供調用自身的API 接口,首先通過指定主節點IP和Nimbus進程所在端口開啟遠程過程調用客戶 端,客戶端訪問物理集群的狀態和業務拓撲的狀態。
可選地,集群中的計算節點周期性地發送自己的狀態到主節點上的Nimbus 進程,其保存著每個計算節點的狀態和運行在計算節點上的拓撲的狀態,連接 到Nimbus進程的客戶端周期性地調用Nimbus提供的API接口來獲取其保存的 狀態,從而實現集群的狀態感知。
本發明的有益效果是:
(1)具有資源消耗少的特點,不會與Storm集群運行的任務爭搶資源。
(2)該系統在Java虛擬機上運行,但是其底層的三維顯示是基于OpenGL 開發,通過JNI技術導入動態鏈接庫,實現了可接受的響應速度。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施 例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述 中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付 出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發明一種面向實時大數據平臺Storm的運行時三維可視化系統的 拓撲映射圖;
圖2為本發明一種面向實時大數據平臺Storm的運行時三維可視化系統示 意圖。
具體實施方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清 楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是 全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造 性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
本發明提出了一種面向實時大數據平臺Storm的運行時三維可視化系統, 首先,開啟Storm實時云環境,并提交拓撲到集群;接下來,開啟Storm部署狀 態收集器;然后,開啟三維可視化服務器;再然后,判斷并更新Storm集群狀 態,判斷Storm部署狀態是否為最新數據;最后,在三維空間中動態顯示集群 的物理特性、部署狀態以及任務的運行時狀態。
下面結合說明書附圖1和附圖2對本發明的面向實時大數據平臺Storm的 運行時三維可視化系統進行詳細說明。