本文約4000字,建議閱讀10分鐘。
本文從大資料應用出發,討論資料視覺化在大資料時代所面臨的一系列挑戰,並重點介紹AutoVis針對這些挑戰所做嘗試及其體系架構、關鍵技術和功能特點。
簡介:AutoVis是清華大學“大資料系統軟體國家工程實驗室”自主研發的大資料視覺化設計框架。面向大資料應用,特別是工業場景,此框架提供了一種新的資料生成圖表和看板的方式,具有表達能力豐富、簡單易用、高可擴充套件、高效率等特點,已應用於中車四方車輛有限公司、石家莊天遠科技集團有限公司等工業企業。
前言
“看見”是人類的基本需求,也是人類探索未知的重要途徑。2019年,多個機構通過捕捉射電波,收集大量資料,幫助人類第一次“看見”黑洞。資料視覺化使得人們透過資料“見所不見”,成為人與資料之間的“橋樑”。作為第四正規化“資料密集型科學發現”的組成部分,資料視覺化已廣泛應用於不同的科學研究領域。伴隨著計算機通用化、資訊時代、網際網路時代的發展,資料視覺化逐漸應用於人們生活的各個領域。在大資料時代,資料視覺化應用更加廣泛,並面臨諸多新的挑戰。
挑戰
大資料時代,資料應用需求多種多樣,資料特點亦發生本質上的變化。智慧硬體的豐富與普及,網際網路、物聯網、移動化、智慧化的浪潮,給資料視覺化帶來新的機遇與挑戰。如下圖所示,我們簡要梳理了資料視覺化(系統)在大資料應用中所面臨的一些關鍵問題,例如資料規模增加,螢幕畫素空間有限,資料視覺化系統的資料取樣能力與繪製效率問題突出。資料多樣的特點要求資料視覺化系統不僅需要支援更多的視覺化方法,也要具有良好的系統可擴充套件性以適應不斷出現的新資料、新需求。資料快速變化的特點要求資料視覺化系統能夠快速構建新的圖表,及時捕捉資料變化。由於不同使用者所關注資料特徵的差異及資料探索的需求,視覺化圖表的互動性在大資料時代將更加重要。
大資料時代資料視覺化(系統)所面臨的一些挑戰
為了探究資料視覺化是否滿足大資料應用場景,我們梳理了相關程式設計工具及系統的研究與應用現狀,如下圖所示,資料視覺化生成方式可以分為程式設計、互動與自動生成三種。面向不同的應用領域,出現了眾多視覺化程式設計工具,例如常用的OpenGL、VTK、D3.js。程式設計方式的優點在於豐富的表達能力,缺點在於需要使用者具有程式設計經驗。互動方式提供了一種不需要程式設計的視覺化生成方式,例如PowerBI、Tableau、Qlik,推動了資料視覺化工具的普及,其在表達能力方面有所欠缺。近些年,一些學者提出了根據資料自動生成圖表的方法,其優點是不需要使用者具備資料視覺化背景,缺點是自動生成的圖表型別有限,未能體現使用者的個性化需求。
資料視覺化程式設計工具與系統
梳理大資料視覺化所面臨的挑戰與相關進展,可見其中有許多問題亟待解決,例如系統資料取樣能力、表達能力、可擴充套件性、圖表快速構建能力以及互動能力。下面介紹我們的相關工作。
AutoVis
AutoVis是清華大學 “大資料系統軟體國家工程實驗室”針對大資料場景自主研發的資料視覺化設計框架。如下圖所示,圍繞大資料所帶來的挑戰,採用視覺化設計的技術路線,基於平臺化架構思想,我們嘗試設計新的大資料視覺化工具,其定位是成為一個開放平臺,目標是支援資料驅動的互動和設計過程,構建人與數、人與人溝通的橋樑。
AutoVis基本思想
針對上述大資料視覺化面臨的挑戰,我們嘗試從12個方面探索應對的方法,如下圖所示。針對系統所需的取樣能力,提出了一種新的流式時序資料高效取樣方法;實現了一種資料特徵提取框架,支援擴充套件不同的特徵提取方法。針對系統繪製效率,我們一方面採用了資料壓縮傳輸,將資料通訊量降低到非壓縮通訊的三分之一,另一方面,結合圖表LAZY更新策略,著力降低圖表非必要更新。針對圖表表達能力要求,提出了一種新的圖表模板化與互動式編輯方法,目前提供267種圖表模板,覆蓋常用資料視覺化方法。針對系統可擴充套件性要求,提出一種平衡易用性與表達能力的圖表模板擴充套件方法;設計實現了圖表擴充套件實時反饋技術。針對圖表構建能力的要求,設計實現了圖表引數自動化填充技術,實現圖表的秒級構建與響應,分鐘級構建一個看板。針對圖表互動能力的要求,實現了常用的圖表互動方法;提出一種新的多圖表聯動關係自動發現技術,自動化支援多圖表鑽取。
AutoVis在應對大資料視覺化挑戰中的探索動態資料取樣與視覺化:針對大資料場景中資料更新頻繁和資料規模較大的挑戰,我們提出了一種動態分桶與層級取樣相結合的流式資料取樣框架,實現了百萬點的毫秒級查詢,滿足高頻資料的可視分析與監控需求。如下圖所示,其中資料寫入與圖表重新整理速度均達到了100次/秒。
高頻時序資料視覺化
多源資料聚合查詢技術:針對資料檢索與處理耗時長的挑戰,我們設計實現了一種資料聚合查詢技術,通過將常用資料查詢與過濾操作對映成資料的SQL語句,將更多的資料過濾操作在資料庫層完成。有助於顯著提升資料處理速度,提高資料視覺化的效率與互動性。
圖表模板編輯與管理技術:針對已有視覺化軟體中圖表模板有限,可擴充套件性弱,以及通過編碼方式定義新的圖表模板需要大量的人力資源和時間成本,複用性弱等挑戰,我們設計了一種新的可擴充套件圖表模板分類與管理技術以及互動式編輯工具。我們選擇使用視覺化程式語言Vega和Vega-Lite,並在其示例的基礎上進行擴充套件,目前形成了267種圖表模板。另外,提供了選項配置、引數擴充套件與自由配置三種自由度從低到高的圖表目標互動式編輯方式,著力同時滿足圖表易用性、表達能力與可擴充套件性的需求。
圖表引數自動填充技術:AutoVis提供了一種自動填充圖表引數快速生成圖表的技術。使用者在開啟資料後,拖選圖表模板,系統將根據資料資訊及模板配置自動填充模板引數,實現視覺化圖表的一鍵生成。同時,AutoVis提供了即時響應的圖表引數編輯技術,如果自動填充的結果不滿足個性化需求,使用者可以很方便地修改圖表引數,如下圖所示。值得強調的是,AutoVis系統實現了引數推薦與自動補全,努力減少使用者修改引數所需的互動次數。
AutoVis快速生成圖表
看板模板描述語言與編輯工具:看板是視覺化設計工具生成的主要內容,為了在達到圖表模板化、看板配置通用化目標的同時,滿足跨平臺和跨終端等常用需求,我們設計實現了一種面向視覺化看板的描述語言,實現看板的輕量靈活定義。同時,AutoVis提供了一種所見即所得的看板編輯工具,使用者可以採用類Visio畫圖的互動方式,直觀調整看板圖表大小與佈局。另外,AutoVis還支援面向不同終端的針對性看板設計,方便使用者設定適用於特定終端的視覺化看板。
AutoVis設計看板
執行時看板互動技術:大資料時代,使用者對於資料的關注多種多樣,不再滿足於單向呈現資料的圖表,希望通過交互發掘所關注資料特徵,滿足特定需求,這時需要提供合理的互動方式。AutoVis對於單個圖表提供了常用的互動手段,特別地,我們設計實現了一種多圖表聯動關係自動發現技術,使用者在定義看板時,不需要手工定義圖表之間的聯動關係,即可實現圖表之間的聯動與資料鑽取。
圖資料佈局與視覺化探索:現實生活中不同的關聯關係越來越普遍,例如人與人、人與商品,知識圖譜的應用亦越來越普遍。如何有效地與圖資料進行互動,AutoVis實現了一種新的圖佈局演算法MGLA以及視覺化探索方法。MGLA演算法實現了多子圖情況下關鍵節點與邊突出的保結構佈局,使用者可以通過滑鼠標記關注節點,系統亦能夠根據不同的搜尋條件自動解析所關注節點。
圖資料佈局與視覺化探索
大資料時代資料“無處不在”,這要求我們實現資料“隨處可見”。為此,AutoVis支援跨平臺與跨終端,如下圖所示,相容常用作業系統、主流瀏覽器以及不同螢幕解析度的終端裝置。此外,為了滿足企業使用者的需求,AutoVis還實現了釘釘企業軟體小程式,幫助企業實現資料驅動的共享、會商與決策。
AutoVis的跨平臺、跨終端特性
AutoVis移動端看板示例
結束語
大資料時代資料視覺化作為人與資料的橋樑,將發揮越來越重要的作用,經過數十年發展的資料視覺化如何迎接新的機遇與挑戰,值得大家的共同探索。本文簡介了我們在這方面的嘗試,以希拋磚引玉。如果讀者對於AutoVis有興趣,
http://101.6.240.89:18080/;
https://github.com/eeyshen/AutoVis-issues反饋問題與需求;
校對:林亦霖
譯者簡介
沈恩亞,國防科技大學電腦科學博士,清華大學博士後,主持研發“清華數為”大資料視覺化平臺,長期從事資料視覺化、可視分析和人機互動等方面的研究。曾經主持或參與多項863、973、科技重大專項、國家重點研發計劃等專案,其中作為骨幹完成的“極大規模並行可視計算系統”獲得全軍科技進步獎。在TVCG、VC等期刊和會議上發表論文10餘篇,申請專利10餘項。曾獲得中國虛擬現實大會最佳論文,全國高效能運算學術年會最佳論文提名等。
—完—