錢浩東 蘇有慧 周軍 楊晨



摘? 要: 以歐洲疫情數據為依據,從多個層面展示歐洲疫情的發展。根據9月14日歐洲新冠肺炎疫情數據,利用Hive與大數據框架Hadoop對其進行處理,借助Tableau組件對歐洲9月14日疫情情況進行可視化,獲得相關可視化圖表。
關鍵詞: 歐洲新冠肺炎; Tableau; 大數據可視化; Hadoop; Hive
中圖分類號:TP391.4? ? ? ? ? 文獻標識碼:A? ? ? ?文章編號:1006-8228(2021)09-51-04
Abstract: According to the European epidemic data, this paper shows the development of the epidemic in Europe from multiple levels. The epidemic data of COVID-19 in September 14th is processed by Hive and big data frame Hadoop. The epidemic data in September 14th is visualized by Tableau component to obtain the relevant visual charts.
Key words: European COVID-19; Tableau; Big data visualization; Hadoop; Hive
0 引言
大數據背景下,海量數據只有被合理解讀與表達之后才能展現其奧秘[1-2],大數據、人工智能時代的到來,使這些設想變得可能。可視化技術可以將原始數據轉變成易于展示的文字、 圖表或圖形的形式,是體現數據關聯性價值最直觀的方式[3]。人們不再局限于通過關系數據表來觀察和分析數據信息, 還能以更直觀的方式看到數據及其結構關系[4]。一般而言,大數據的可視化復雜且難以理解,需要經過抽取、清洗、轉化、挖掘 等一系列過程才能展示潛在價值信息[5]。目前,大數可視化形式主要包括文本可視化、網絡(圖)可視化、時空數據可視化和多維數據可視化[6],豐富多樣的可視化形式極大程度的為人們獲取關鍵信息帶來便利。
本文通過多種類別圖形的方式來反映歐洲各國疫情數據的變化趨勢,直觀地體現出不同指標下的數據差異。具體來說,根據9月14日歐洲新冠肺炎疫情數據,利用Hive與大數據架Hadoop對疫情數據進行處理,借助Tableau組件對歐洲9月14日疫情情況進行可視化展示,獲得了歐洲各國在不同指標下的相關圖表。
1 可視化內容設計
Tableau是大數據領域中常用數據可視化軟件,能夠基于海量的數據靈活、快捷地生成多種圖形,能夠將大量數據智能地轉變成各類圖表。Tableau 利用便捷的數據接口快速提取數據[7] ,能夠兼容許多主流的數據庫或者數據倉庫工具,通過接口驅動進行連接,對于存儲在數據庫的大量數據能夠方便快捷地進行可視化。本文數據來源于百度新冠實時肺炎疫情數據[8],利用Tableau對其進行處理與展示,獲得相應的圖形。
1.1 歐洲各國疫情柱狀圖
下面,借助于Tableau生成歐洲各國疫情柱狀圖。從柱狀圖,可以直觀地看到各個國家確診、死亡以及治愈人數,方便人們從整體上了解新冠疫情嚴重程度。
圖1(a)中橫軸為歐洲各個具體國家,縱軸是確診人數,可以看出俄羅斯、西班牙、法國、英國、意大利等國確診人數較多。圖1(b)中橫軸為歐洲各個具體國家,縱軸是死亡人數,可以看出英國、意大利、法國、西班牙、俄羅斯等國死亡人數較多。圖1(c)中橫軸為歐洲各個具體國家,縱軸是治愈人數,可以看出俄羅斯、德國、意大利、西班牙等國治愈人數較多。
1.2 歐洲各國新冠疫情確診情況地理圖
借助于Tableau軟件生成的歐洲各國新冠疫情確診、死亡、治愈情況地理圖。以地理圖形式,具體清晰地展現相關指標下每個國家人數的情況。顏色越深,代表人數越多。以鼠標懸浮的形式可以查看具體的國家和人數。
就確診情況而言,從圖2(a)可以直觀地看出俄羅斯的顏色最深,其確診人數最多;其次是歐洲西南部的國家依次為西班牙、英國、法國等國。就治愈情況而言,從圖2(b)可以直觀地看出俄羅斯的顏色最深,其治愈人數最多;其次是歐洲西南部的國家依次為德國、意大利、西班牙等國。就死亡情況而言,從圖2(c)可以直觀地看出英國的顏色最深,其死亡人數最多;其他歐洲西南部的國家如法國、意大利、西班牙等國死亡人數也較多。而地圖上俄羅斯的顏色較前幾個國家淡,死亡人數較少。
1.3 歐洲各國在確診、死亡、治愈指標下的人數氣泡圖
下面是借助Tableau軟件生成的氣泡圖,分別是確診人數氣泡圖、治愈人數氣泡圖、死亡人數氣泡圖、現存確診人數氣泡圖。
圖3中,氣泡越大代表確診人數越多,其中俄羅斯確診人數最多,為1068320人,其次是西班牙,確診人數為593730人。圖4中,氣泡越大代表治愈人數越多,其中俄羅斯確診人數最多為878700人,其次是德國,確診人數為237550人。圖5中,氣泡越大代表死亡人數越多,其中英國死亡人數最多為41637人,其次是意大利,確診人數為35624人。圖6中,氣泡越大代表現存確診人數越多,其中西班牙現存確診人數最多,為1068320人,其次是英國,現存確診人數為327336人。
1.4 歐洲各國在確診、死亡、治愈、現存確診指標下的人數比值餅圖
為了解在各指標下,每個國家指標人數占總額的比值,本文借助Tableau,生成確診人數總額比餅圖、治愈人數總額百分比餅圖、死亡人數總額百分比餅圖、現存確診人數總額百分比餅圖。
從圖7可以看出,俄羅斯確診人數占總額百分比最多,為39.20%,其次是德國,占比為10.60%;從圖8可以看出,俄羅斯的治愈人數占總額百分比最多為25.90%,其次是西班牙,為14.39%;從圖9可以看出,英國的現存確診人數占總額百分比最多,為19.56%,其次為法國,為14.54%;從圖10可以看出,西班牙的死亡人數占總額百分比最多,為21.96%,其次是英國,為19.59%。
2 系統架構與實現
2.1 整體架構
整體架構分為三層:數據存儲層、數據處理層以及數據展示層。如圖11(a)所示,數據存儲層利用Hadoop中的模塊Hdfs分布式文件存儲系統來進行數據存儲;數據處理層利用Hive編寫Hql來進行數據的處理;數據展示層利用Tableau連接Hive中的庫來進行圖表化的展示。
2.2 具體實現
⑴ 數據存儲層
通過Hdfs存儲數據。數據存儲層利用Hadoop中的Hdfs分布式文件存儲系統,將獲取的相關疫情信息進行存儲。如圖11(b),Hdfs,采用分布式設計與按塊存儲設計,可以使其存儲大量數據,并且減少一定的數據傳輸時間。由于疫情數據數據量大的特點,所以選用Hadoop中的Hdfs模塊來進行數據存儲。
⑵ 數據處理層
通過Hive進行數據處理。對于獲取的新冠疫情數據,我們依舊需要進行處理,來刪選出我們所需要的重要字段。Hadoop里的MapReduce是大數據離線計算框架,能夠對Hdfs上的數據進行讀取、清洗、聚合,從而獲得所需要的干凈數據。圖11為Hive具體架構圖。
Hive是數據倉庫工具,如圖11(c),Hive的底層運行的依舊是MapReduce,它能夠將Hdfs上數據通過編寫類SQL語句,通過解釋器、編譯器、優化器、執行器轉化成MapReducer程序,進行自定義處理與清洗。本系統將Hdfs上的疫情數據通過HQL語句來篩選出歐洲各國的疫情信息,然后再存儲到Hdfs上,方便通過Hive來查看數據。將數據處理完成后,獲取到相應字段如表1所示,以及對應的數據。
⑶ 數據展示層
本文通過Tableau與相關ODBC驅動連接Hive,將Hive中處理過后的數據,按照確診、死亡、治愈、現存確診人數指標生成對應指標下的柱狀圖、地理圖、氣泡圖和相關人數總額比值餅圖。數據展示層以多種形式的圖形,從多個角度展示歐洲各國疫情情況,做到了真正意義上的數據可視化。
3 結束語
大數據可視化將數據以圖表形式進行展示,提高數據的可讀性。本系統借助Tableau以及Hadoop和Hive大數據框架,對歐洲各國的疫情數據實現了可視化,生成相關柱狀圖、地理圖、氣泡圖以及餅圖,方便直觀了解歐洲疫情,對從事歐洲相關活動的人們做好疫情防控起到至關重要的作用。
參考文獻(References):
[1] 艾廷華.大數據驅動下的地圖學發展[J].測繪地理信息,2016.41(2):1-7
[2] 曾悠.大數據時代背景下的數據可視化概念研究[D].浙江大學,2014.
[3] 陳鐳,劉玉,楊琴.高校實驗室大數據可視化平臺研究[J].計算機時代,2020.11:43-46
[4] 劉勘,周曉崢,周洞汝.數據可視化的研究與發展[J].計算機工程,2002.8:1-2,63
[5] 賀群,楊明川.基于Web GIS的大數據可視化研究與優化[J].電信技術,2015.6(8):37-40
[6] 王露,楊晶晶,黃銘.基于R語言和Tableau的氣象數據可視化分析[J].計算機與網絡,2017.43(24):69-71
[7] 任磊,杜一,馬帥等.大數據可視分析綜述[J].軟件學報,2014,25(9):1901-1936
[8] 百度新冠肺炎實時數據:http://voice.baidu.com/act/newpneumonia/newpneumonia.