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