2021-4-9 | 信息科學(xué)論文
大數(shù)據(jù)應(yīng)用的技術(shù)體系
1.云計算及其編程模型MapReduce
1)云計算簡述:大約從2007年下半年開始,云計算由于其能提供靈活動態(tài)的IT平臺,服務(wù)質(zhì)量保證的計算環(huán)境以及可配置的軟件服務(wù)而成為熱門話題。文獻(xiàn)中給出了云計算的比較完整的定義:云計算一個大規(guī)模的由規(guī)模經(jīng)濟(jì)驅(qū)動的分布式模型,位于其中的抽象的、虛擬的、動態(tài)可擴(kuò)展的、可管理的計算能源、存儲、平臺、服務(wù)等通過因特網(wǎng)交付給外圍客戶。由上述云計算的定義我們知道,云計算首先得是大規(guī)模的、分布式的,少量的計算處理用不著云計算;其次,它是跟規(guī)模經(jīng)濟(jì)相關(guān)聯(lián)的,比較形象的說法是,云計算資源跟“電”和“水”一樣,是按需收費的,并且是大規(guī)模式銷售的,通常在建立數(shù)據(jù)中心時會考慮成本因素;最后,它從廣義上說是給客戶的一種服務(wù),可以包括提供存儲、計算等資源。云計算可以按服務(wù)的內(nèi)容和交付形式分為基礎(chǔ)設(shè)施即服務(wù)(IaaS)、平臺即服務(wù)(PaaS)、軟件即服務(wù)(SaaS)等。在單機(jī)芯片集成度已進(jìn)入極小尺度級別,指令級并行度提升也已接近極限的今天,縱向擴(kuò)展似乎已經(jīng)不夠現(xiàn)實,這也遠(yuǎn)遠(yuǎn)不能滿足大數(shù)據(jù)處理的要求,而云計算的要求比較寬松的允許異構(gòu)網(wǎng)絡(luò)的橫向擴(kuò)展,無疑給大數(shù)據(jù)處理帶來了方便。云計算能為大數(shù)據(jù)提供強(qiáng)大的存儲和計算能力,可以迅速、方便地為大數(shù)據(jù)提供服務(wù),另一方面,大數(shù)據(jù)的處理需求也為云計算提供了更多更好地應(yīng)用場景。由此,云計算作為大數(shù)據(jù)的支撐技術(shù)而倍受業(yè)界關(guān)注。
2)MapReduce簡述:關(guān)系數(shù)據(jù)庫作為一門發(fā)展了近40年的主流數(shù)據(jù)管理技術(shù),主要用于聯(lián)機(jī)事務(wù)處理(OLTP)應(yīng)用、聯(lián)機(jī)分析處理(OLAP)應(yīng)用和數(shù)據(jù)倉庫等,然而擴(kuò)展性方面的局限使得其在大數(shù)據(jù)時代遇到了極大障礙。2004年,谷歌公司提出的MapReduce技術(shù),以其利用大規(guī)模廉價服務(wù)器以達(dá)到并行處理大數(shù)據(jù)的目的而倍受學(xué)術(shù)界和工業(yè)界的關(guān)注,廣泛應(yīng)用于機(jī)器學(xué)習(xí)、數(shù)據(jù)挖掘等諸多領(lǐng)域。基于MapReduce的大數(shù)據(jù)分析處理研究也在不斷深入,MapReduce作為一種非關(guān)系數(shù)據(jù)庫的數(shù)據(jù)管理工具代表,克服了關(guān)系數(shù)據(jù)庫擴(kuò)展性方面的不足,將計算推向數(shù)據(jù)也迎合了大數(shù)據(jù)時代的內(nèi)在需要,成為大數(shù)據(jù)處理的基本工具。而Hadoop作為模仿MapReduce而實現(xiàn)的一個云計算開源平臺,目前已成為最為流行的大數(shù)據(jù)處理平臺。MapReduce對于大數(shù)據(jù)處理的基本構(gòu)思是分而治之,將大數(shù)據(jù)任務(wù)分解為多個子任務(wù),將得到的各個子結(jié)果組合并成為最終結(jié)果。MapReduce對大數(shù)據(jù)的處理可抽象為兩個主要階段,Map階段對初始的鍵-值(Key/Value)對進(jìn)行處理,產(chǎn)生一系列的中間結(jié)果Key/Value對,然后通過Reduce階段合并所有具有相同Key值的Key/Value對,得到最終結(jié)果。MapReduce對數(shù)據(jù)進(jìn)行處理的應(yīng)用思路如圖2所示。
2.大數(shù)據(jù)獲取技術(shù)
每天都有大量數(shù)據(jù)產(chǎn)生,并且這些數(shù)據(jù)通過不同的途徑,以不同的形式被接收和記錄。本節(jié)將簡單介紹幾種常見的大數(shù)據(jù)獲取途徑。
(1)傳感器技術(shù):近年來,傳感器技術(shù)蓬勃發(fā)展,無論是道路交通方面,還是醫(yī)療機(jī)構(gòu)方面甚至是個人工作和生活場所,傳感器無處不在,大量的數(shù)據(jù)源源不斷地被傳感器所接收。可以說,傳感器的迅速普及,為大數(shù)據(jù)的獲取提供了有力地保障。傳感器技術(shù)的快速發(fā)展,也促進(jìn)了傳感器網(wǎng)絡(luò)的逐步完善。由于構(gòu)建傳感器網(wǎng)絡(luò)的設(shè)備、數(shù)據(jù)收集、數(shù)據(jù)存儲等方面的差異性,網(wǎng)絡(luò)孤島普遍存在,如何解決異構(gòu)網(wǎng)絡(luò)所帶來的數(shù)據(jù)共享問題一度成為研究者們面臨的極大挑戰(zhàn)。不過隨后美國國家技術(shù)標(biāo)準(zhǔn)局(NIST)和IEEE共同組織了關(guān)于制訂智能傳感器接口和連接網(wǎng)絡(luò)通用標(biāo)準(zhǔn)的研討會,產(chǎn)生了IEEE1451傳感器/執(zhí)行器、智能變送器接口標(biāo)準(zhǔn)協(xié)議族,試圖解決傳感器市場上總線不兼容的問題。2005年,開放地理空間聯(lián)盟(OGC)提出了一種新型的傳感器Web整合框架標(biāo)準(zhǔn),讓用戶能透過Web的界面來進(jìn)行節(jié)點搜尋、數(shù)據(jù)獲取及節(jié)點控制功能。文獻(xiàn)[12]對無線傳感器網(wǎng)路的路由協(xié)議進(jìn)行了研究,指出多路徑路由發(fā)展的趨勢和挑戰(zhàn),而文獻(xiàn)[13]則從生物學(xué)、商業(yè)、環(huán)境、醫(yī)療、工業(yè)以及軍事等領(lǐng)域探討無線傳感器的重要用途。
(2)Web2.0技術(shù):“Web2.0”的概念2004年始于出版社經(jīng)營者O'Reilly和MediaLiveInternational之間的一場頭腦風(fēng)暴論壇,所謂的Web2.0是指互聯(lián)網(wǎng)上的每一個用戶的身份由單純的“讀者”進(jìn)化為了“作者”以及“共同建設(shè)人員”,由被動地接收互聯(lián)網(wǎng)信息向主動創(chuàng)造互聯(lián)網(wǎng)信息發(fā)展。Web2.0伴隨著博客、百科全書以及社交網(wǎng)絡(luò)等多種應(yīng)用技術(shù)的發(fā)展,大量的網(wǎng)頁點擊與交流促使了大數(shù)據(jù)的形成,給人類日常生活方式帶來了極大的變革。
(3)條形碼技術(shù):條形碼的使用給零售業(yè)帶來了革命性的改變,通過內(nèi)嵌ID等信息,條形碼在被掃描之后,快速在數(shù)據(jù)庫中進(jìn)行ID匹配,便很快就獲知該產(chǎn)品的價格、性能、產(chǎn)商等具體信息,條形碼被廣泛應(yīng)用于零售商店的收銀以及車站售票等業(yè)務(wù)中,每天大量的商品銷售記錄通過掃描條形碼而產(chǎn)生。近年來的智能手機(jī)的盛行,手機(jī)應(yīng)用如微信中的二維條形碼也隨處可見,文獻(xiàn)[14]中設(shè)計了一種應(yīng)用于手機(jī)應(yīng)用的彩色二維條形碼,改善了用戶對應(yīng)用程序的感受。
(4)RFID技術(shù):RFID與條形碼相比,擴(kuò)展了操作距離,且標(biāo)簽的使用比條形碼容易,攜帶一個可移動的閱讀器便可收集到標(biāo)簽的信息,被廣泛應(yīng)用于倉庫管理和清單控制方面。RFID標(biāo)簽可以分為兩類,一類是被動的,如今被廣泛使用,其造價便宜,但是沒有內(nèi)部電源,依靠閱讀器的射頻波產(chǎn)生能量,操作距離也很近,因而其適用性也受到了制約;另一類是主動的,其擁有內(nèi)部電源,因此造價較貴,但是操作距離遠(yuǎn),存儲能力強(qiáng),因而適用范圍廣,在未來這種標(biāo)簽會受到普遍歡迎的。學(xué)術(shù)界在RFID技術(shù)的研究上已經(jīng)取得巨大的進(jìn)步。較早的工作重心大多集中在對標(biāo)簽進(jìn)行搜集的問題上,即盡可能快地在大量標(biāo)簽中搜集他們的ID,而這方面最大的挑戰(zhàn)是解決多標(biāo)簽同時競爭較窄的信道引起沖突的問題。研究者們提出了兩類解決思路,即基于ALOHA的協(xié)議[15-17]和基于樹的協(xié)議[18-20]。而其他的工作專注于標(biāo)簽評估問題,即使用統(tǒng)計學(xué)的方法來評估一個龐大系統(tǒng)中的標(biāo)簽數(shù)目[21-23]。總之,RFID由于具有操作范圍廣泛、性能穩(wěn)定以及高存儲能力等特性,在工業(yè)界中將具有巨大的潛力。
(5)移動終端技術(shù):隨著科學(xué)技術(shù)的發(fā)展,移動終端諸如手機(jī)、筆記本、平板電腦等隨處可見,加上網(wǎng)絡(luò)的寬帶化發(fā)展以及集成電路的升級,人類已經(jīng)步入了真正的移動信息時代。如今的移動終端已經(jīng)擁有極強(qiáng)的處理能力,通信、定位以及掃描功能應(yīng)有盡有,大量的移動軟件程序被開發(fā)并應(yīng)用,人們無時無刻不在接收和發(fā)送信息。目前,智能手機(jī)等移動設(shè)備的數(shù)量仍然在迅猛增長中,移動社交網(wǎng)絡(luò)也會日益龐大和復(fù)雜,海量的數(shù)據(jù)穿梭其中,針對移動數(shù)據(jù)的處理也將越來越復(fù)雜。
3.文件系統(tǒng)
文件系統(tǒng)是支撐上層應(yīng)用的基礎(chǔ),本小節(jié)將簡要介紹面向大數(shù)據(jù)處理的文件系統(tǒng)如谷歌分布式文件系統(tǒng)(GFS),以及一些其他的分布式文件系統(tǒng)。
1)分布式文件系統(tǒng)GFS:谷歌自行開發(fā)的文件系統(tǒng)GFS[24],是一個基于分布式集群的大型的分布式文件系統(tǒng),它為MapReduce計算框架提供底層數(shù)據(jù)存儲和數(shù)據(jù)可靠性。GFS采用廉價普通磁盤,并把磁盤數(shù)據(jù)出錯視為常態(tài),其自動多數(shù)據(jù)備份存儲也增加了可靠性。GFS基本構(gòu)架中,GFSMaster保存了GFS文件系統(tǒng)的3種元數(shù)據(jù):命名空間、Chunk與文件名的映射表、Chunk副本的位置信息,前兩個數(shù)據(jù)通過操作日志提供容錯處理能力,第3個數(shù)據(jù)存儲在ChunkServer上,可在Master失效時快速恢復(fù)Master上的元數(shù)據(jù);GFSChunkServer是用來保存大量實際數(shù)據(jù)的數(shù)據(jù)服務(wù)器。GFS基本工作過程如下:(1)在程序運(yùn)行前,數(shù)據(jù)已經(jīng)存儲在GFS文件系統(tǒng)中,程序執(zhí)行時應(yīng)用程序會告訴GFSServer所要訪問的文件名或者數(shù)據(jù)塊索引是什么。(2)GFSServer根據(jù)文件名和數(shù)據(jù)塊索引在其文件目錄空間中查找和定位該文件或數(shù)據(jù)塊,并將這些位置信息回送給應(yīng)用程序。(3)應(yīng)用程序根據(jù)GFSServer返回的具體Chunk數(shù)據(jù)塊位置信息,直接訪問相應(yīng)的ChunkServer。(4)應(yīng)用程序直接讀取指定位置的數(shù)據(jù)進(jìn)行計算處理。后來谷歌對GFS進(jìn)行了改進(jìn),并對新版本命名為Colosuss,主要對原有的單點故障、海量小文件存儲等諸多問題進(jìn)行了修正和改進(jìn),使得系統(tǒng)更加安全和健壯。
2)其他文件系統(tǒng):除了谷歌的GFS,業(yè)界其他針對大數(shù)據(jù)存儲需求的文件系統(tǒng)也層出不窮。Hadoop的文件系統(tǒng)HDFS[25]作為模仿GFS的開源實現(xiàn),同樣也為Hadoop的底層數(shù)據(jù)存儲支撐,提供數(shù)據(jù)的高可靠性和容錯能力,擁有良好的擴(kuò)展性和高速數(shù)據(jù)訪問性;SUN公司開發(fā)的Lustre[26]是一個大規(guī)模的、安全可靠的、具備高可用性的開源集群文件系統(tǒng),美國能源部在此基礎(chǔ)上實現(xiàn)了新一代的集群系統(tǒng),顯著提高了輸入輸出速度,已在高校、國家實驗室和超級計算研究中心產(chǎn)生了深遠(yuǎn)影響;Facebook推出的針對海量小文件的文件系統(tǒng)Haystack[27]有效地解決了海量圖片存儲問題,它實現(xiàn)多個邏輯文件共享一個物理文件功能,并且增加緩存層,部分元數(shù)據(jù)直接被加載到了內(nèi)存。
4.數(shù)據(jù)庫系統(tǒng)
1)上在索引、數(shù)據(jù)壓縮、可視化等技術(shù)方面的不斷擴(kuò)展,使其具有了高性能的優(yōu)勢。但是諸多因素導(dǎo)致了其擴(kuò)展性面臨嚴(yán)峻的挑戰(zhàn),主要體現(xiàn)在:(1)單機(jī)方面,并行數(shù)據(jù)庫基于高端硬件設(shè)計,認(rèn)為查詢失敗是特例且糾錯復(fù)雜,不符合大規(guī)模集群失效常態(tài)的特性;(2)集群方面,并行數(shù)據(jù)庫對異構(gòu)網(wǎng)絡(luò)支持有限,各節(jié)點性能不均,容易引起“木桶效應(yīng)”。總之,并行數(shù)據(jù)庫的擴(kuò)展性方面的缺陷使其面臨大數(shù)據(jù)的處理往往力不從心。
2)MapReduce分布式數(shù)據(jù)庫BigTable:由前述知,并行數(shù)據(jù)庫由于擴(kuò)展性方面的缺陷無法勝任大數(shù)據(jù)的處理工作,以谷歌公司推出的BigTable為代表的未采用關(guān)系模型的NoSQL(NotonlySQL)數(shù)據(jù)庫由此誕生,NoSQL數(shù)據(jù)庫具有模式自由、簡易備份、接口簡單和支持海量數(shù)據(jù)等特性,對于大數(shù)據(jù)的存儲和處理十分有效。谷歌在GFS之上又設(shè)計了MapReduce的分布式數(shù)據(jù)庫BigTable[28],為應(yīng)用程序提供了比單純地文件系統(tǒng)更方便、更高層的數(shù)據(jù)操作能力,BigTable提供了一定粒度的結(jié)構(gòu)化數(shù)據(jù)操作能力,主要解決一些大型媒體數(shù)據(jù)(Web文檔、圖片等)的結(jié)構(gòu)化存儲問題。BigTable主要是一個分布式多維表,表中數(shù)據(jù)通過行關(guān)鍵字、列關(guān)鍵字和時間戳來進(jìn)行索引和查詢定位,并且BigTable對存儲在表中的數(shù)據(jù)不做任何解釋,一律視為字串,具體數(shù)據(jù)結(jié)構(gòu)的實現(xiàn)由用戶自行定義。BigTable的基本構(gòu)架如圖3所示,BigTable中的數(shù)據(jù)均以子表形式保存在子表服務(wù)器上,最終以GFS文件形式存儲在GFS文件系統(tǒng)中。客戶端程序直接和子表服務(wù)器通信,Chubby服務(wù)器完成對子表服務(wù)器的狀態(tài)監(jiān)控,主服務(wù)器通過查看Chubby服務(wù)器目錄來終止出現(xiàn)故障的子服務(wù)器并將其數(shù)據(jù)轉(zhuǎn)移至其他子服務(wù)器。另外,主服務(wù)器還完成子表的創(chuàng)建和負(fù)載均衡等操作。當(dāng)然,由于MapReduce將本來應(yīng)由數(shù)據(jù)庫管理系統(tǒng)完成的諸如文件存儲格式的設(shè)計、模式信息的記錄、數(shù)據(jù)處理算法的實現(xiàn)等工作轉(zhuǎn)移給了程序員,從而導(dǎo)致程序員負(fù)擔(dān)過重。另外,MapReduce是面向非結(jié)構(gòu)化的大規(guī)模數(shù)據(jù)處理的,往往是一次處理,因而同等硬件條件下的性能也比并行數(shù)據(jù)庫低[29]。
3)數(shù)據(jù)庫的深層探討:并行數(shù)據(jù)庫具有高性能的優(yōu)勢,但擴(kuò)展性問題阻礙了其在大數(shù)據(jù)處理上的進(jìn)一步發(fā)展,而MapReduce性能和易用性上提升空間較大,因此目前兩種方案均不理想。業(yè)界經(jīng)過長時間的探討,基本一致認(rèn)為并行數(shù)據(jù)庫和MapReduce各取其長,相互融合,也許是一種不錯的道路[30]。由此誕生了并行數(shù)據(jù)庫主導(dǎo)型、MapReduce主導(dǎo)型以及并行數(shù)據(jù)庫與MapReduce集成型3類大數(shù)據(jù)處理數(shù)據(jù)庫。
(1)并行數(shù)據(jù)庫主導(dǎo):型這類數(shù)據(jù)庫的基本思路是在并行數(shù)據(jù)庫上增加MapReduce的大數(shù)據(jù)處理能力,將數(shù)據(jù)分析過程轉(zhuǎn)移到數(shù)據(jù)庫內(nèi)進(jìn)行,使得原系統(tǒng)同時獲得SQL的易用性與MapReduce的開放性。但是,并行數(shù)據(jù)庫的擴(kuò)展能力與容錯能力并未得到改善,典型的系統(tǒng)如Greenplum[31]、Asterdata[32]等。
(2)MapReduce主導(dǎo)型:這類數(shù)據(jù)庫的基本思路是利用關(guān)系數(shù)據(jù)庫的SQL接口和模式支持技術(shù)改善MapReduce的易用性。通過SQL接口,可以很簡便的完成查詢分析等操作,大大減輕了程序員的負(fù)擔(dān),但MapReduce的性能方面仍有待提升,典型的系統(tǒng)如Facebook的Hive[33]和Yahoo!的PigLatin[34]等。
(3)并行數(shù)據(jù)庫與MapReduce集成型:這類數(shù)據(jù)庫兼顧并行數(shù)據(jù)庫與MapReduce的長處,主要分兩種思路:按功能將并行數(shù)據(jù)庫與MapReduce分別設(shè)計到相應(yīng)的部位以形成一個完整系統(tǒng),以及整合并行數(shù)據(jù)庫和MapReduce這兩套完整的系統(tǒng)以構(gòu)成一個混合系統(tǒng)。第一種思路典型代表是耶魯大學(xué)提出的HadoopDB[35],它將Hadoop作為調(diào)度層和網(wǎng)絡(luò)溝通層,關(guān)系數(shù)據(jù)庫作為執(zhí)行引擎,盡可能地將查詢壓入數(shù)據(jù)庫層處理,Hadoop框架的應(yīng)用可以獲得較好的容錯性和對異構(gòu)環(huán)境的支持,庫內(nèi)數(shù)據(jù)查詢的使用則可獲得關(guān)系數(shù)據(jù)庫的高性能優(yōu)勢。第二種思路的代表是Vertica數(shù)據(jù)庫[36],它擁有兩套獨立完整的系統(tǒng),Hadoop負(fù)責(zé)非結(jié)構(gòu)化數(shù)據(jù)和耗時的批量復(fù)雜數(shù)據(jù)的處理,Vertica負(fù)責(zé)結(jié)構(gòu)化數(shù)據(jù)的處理以及高性能的交互式查詢。當(dāng)然,這些思路仍非理想的方案,例如,HadoopDB喪失了MapReduce較低的預(yù)處理和維護(hù)代價等,Vertica則依舊存在Vertica擴(kuò)展性問題和Hadoop的性能問題。因此,在大數(shù)據(jù)面前,數(shù)據(jù)庫系統(tǒng)的研究還有很長的路要走,我們在總結(jié)傳統(tǒng)的數(shù)據(jù)庫經(jīng)驗的同時,還要積極了解新興的數(shù)據(jù)庫系統(tǒng),才能更好地促進(jìn)適應(yīng)現(xiàn)今大數(shù)據(jù)發(fā)展的優(yōu)良數(shù)據(jù)庫的面世。
5.大數(shù)據(jù)分析技術(shù)
用于大數(shù)據(jù)集的分析方法很多,包括統(tǒng)計學(xué)、計算機(jī)科學(xué)等各個領(lǐng)域的技術(shù)。本小節(jié)將簡要介紹其中幾種典型的大數(shù)據(jù)分析技術(shù),當(dāng)然,這些技術(shù)同樣適用于少量數(shù)據(jù)集的分析,但大數(shù)據(jù)集環(huán)境下的應(yīng)用無疑會發(fā)揮更加明顯的作用。
(1)A/B測試:傳統(tǒng)的A/B測試,是一種把各組變量隨機(jī)分配到特定的單變量處理水平,把一個或多個測試組的表現(xiàn)與控制組相比較,進(jìn)行測試的方式。現(xiàn)在的A/B測試主要用于在Web分析方面,例如通過對比統(tǒng)計新舊網(wǎng)頁的用戶轉(zhuǎn)化率,來掌握兩種設(shè)計的優(yōu)劣等。大數(shù)據(jù)時代的到來為大規(guī)模的測試提供了便利,提高了A/B測試的準(zhǔn)確性。由于移動設(shè)備及技術(shù)的迅猛發(fā)展,移動分析也逐漸成為A/B測試增長最快的一個領(lǐng)域。
(2)聚類分析聚類分析:
指將物理或抽象的集合分組成為由類似的對象組成的多個類的分析過程。聚類分析是一種探索性的數(shù)據(jù)挖掘分析方法,不需事先給出劃分的類的具體情況,主要用在商業(yè)、生物學(xué)、因特網(wǎng)等多個領(lǐng)域中。對于大數(shù)據(jù)的分析處理,通過聚類可以簡化后續(xù)處理過程,并且可以發(fā)現(xiàn)其中隱藏的某些規(guī)則,充分發(fā)揮了大數(shù)據(jù)的作用。
(3)集成學(xué)習(xí):集成學(xué)習(xí)指的是使用一系列“學(xué)習(xí)器”進(jìn)行學(xué)習(xí),并使用某種規(guī)則把各學(xué)習(xí)結(jié)果進(jìn)行整合從而獲得比單個“學(xué)習(xí)器”更好的學(xué)習(xí)效果的一種機(jī)器學(xué)習(xí)方法。對于大數(shù)據(jù)的集成學(xué)習(xí),可以更好地提煉和把握其中的本質(zhì)屬性。
(4)神經(jīng)網(wǎng)絡(luò):神經(jīng)網(wǎng)絡(luò)是一種模仿動物神經(jīng)網(wǎng)絡(luò)行為特征,進(jìn)行分布式并行信息處理的算法數(shù)學(xué)模型,它依靠系統(tǒng)的復(fù)雜程度,通過調(diào)整內(nèi)部大量節(jié)點之間相互連接的關(guān)系,來達(dá)到處理信息的目的。神經(jīng)網(wǎng)絡(luò)作為一門新興的交叉學(xué)科,是人類智能研究的重要組成部分,已成為腦科學(xué)、神經(jīng)科學(xué)、認(rèn)知科學(xué)、心理學(xué)等共同關(guān)注的焦點。神經(jīng)網(wǎng)絡(luò)對于大數(shù)據(jù)的并行處理,無疑也是一種比較可行的方式。
(5)自然語言處理:自然語言處理是計算機(jī)科學(xué)領(lǐng)域與人工智能領(lǐng)域中的一個重要方向,它研究能實現(xiàn)人與計算機(jī)之間用自然語言進(jìn)行有效通信的各種理論和方法。人與計算機(jī)的通信交流往往存在很多歧義,如何消除這些歧義,將帶有潛在歧義的自然語言輸入轉(zhuǎn)換成某種無歧義的計算機(jī)內(nèi)部表示,是自然語言處理的主要問題。大數(shù)據(jù)時代意味著有大量的知識和推理來完成消除歧義現(xiàn)象的可能,這也給自然語言處理帶來了新的挑戰(zhàn)和機(jī)遇。大數(shù)據(jù)分析技術(shù)還有很多,例如模式識別、空間分析、遺傳算法等等,并且研究者們還在不斷地尋找新的更有效地分析方法,另外通過結(jié)合多個方法來實現(xiàn)數(shù)據(jù)分析往往也能達(dá)到非常明顯的效果。
6.大數(shù)據(jù)的可視化
面對海量的數(shù)據(jù),如何將其清晰明朗地展現(xiàn)給用戶是大數(shù)據(jù)處理所面臨的巨大挑戰(zhàn)。無論是學(xué)術(shù)界還是工業(yè)界,對大數(shù)據(jù)進(jìn)行可視化的研究從未停止。通過將大數(shù)據(jù)圖形化、圖像化以及動畫化等展示出來的技術(shù)和方法不斷出現(xiàn),本節(jié)將介紹幾種典型的案例。
(1)宇宙星球圖:俄羅斯工程師RuslanEnikeev根據(jù)2011年底的互聯(lián)網(wǎng)數(shù)據(jù),將196個國家的35萬個網(wǎng)站數(shù)據(jù)整合起來,并根據(jù)200多萬個網(wǎng)站鏈接將這些“星球”通過“關(guān)系鏈”聯(lián)系起來組成了因特網(wǎng)的“宇宙星球圖”[37]。不同顏色代表不同的國家,每個“星球”的大小根據(jù)其網(wǎng)站流量來決定,而“星球”距離遠(yuǎn)近根據(jù)鏈接出現(xiàn)的頻率、強(qiáng)度等決定。類似地,對于具有復(fù)雜結(jié)構(gòu)的社交網(wǎng)絡(luò),“宇宙星球圖”同樣也十分適用,可以根據(jù)個人的知名度、人與人之間的聯(lián)系等進(jìn)行繪畫星球圖。
(2)標(biāo)簽云:“標(biāo)簽云”的設(shè)計思路主要是,對于不同的對象用標(biāo)簽來表示,標(biāo)簽的排列順序一般依照字典排序,按照熱門程度確定字體的大小和顏色。例如對于某個文檔,出現(xiàn)頻度越高的單詞將會越大,反之越小。這樣,便可以根據(jù)字母表順序和字體的大小來對各單詞的具體情況一目了然。文獻(xiàn)[38]通過將地圖上的各個物理位置根據(jù)描述的具體程度用“標(biāo)簽云”表示,使得用戶對各個場所的知名程度有個清晰的認(rèn)識。
(3)歷史流圖:文獻(xiàn)[39]提出了一種用于可視化文檔編輯歷史的“歷史流圖”,對于一個面向大眾的開放文檔,編輯和查閱都是自由的,用戶可以隨時自由的對文檔進(jìn)行增加或刪除操作。“歷史流圖”中,橫坐標(biāo)軸表示時間,縱坐標(biāo)軸表示作者,不同作者的不同內(nèi)容對應(yīng)中間部分不同顏色和長度,隨著時間的推移,文檔的內(nèi)容不斷變化,作者也在不斷增加中。通過對“歷史流圖”的觀察,很容易看出各人對該文檔的貢獻(xiàn),當(dāng)然,除了發(fā)現(xiàn)有人對文檔給出有益的編輯外,也存在著一些破壞文檔、刪除內(nèi)容的人,但總有逐漸被修復(fù)回去的規(guī)律。像維基百科等的詞條注釋文檔,“歷史流圖”的可視化效果十分明顯。關(guān)于大數(shù)據(jù)可視化的方面努力還有很多,不同的“源數(shù)據(jù)”有不同的可視化策略,大數(shù)據(jù)可視化的研究工作仍有待進(jìn)行下去。
大數(shù)據(jù)應(yīng)用所面臨的問題
大數(shù)據(jù)時代面臨的首要問題是人力和財力問題,IDC分析稱,大數(shù)據(jù)相關(guān)人才的欠缺將會成為影響大數(shù)據(jù)市場發(fā)展的一個重要因素。據(jù)調(diào)查,僅美國就缺少大約14萬到19萬的具有深層次數(shù)據(jù)分析技巧的專業(yè)技術(shù)人員以及150萬針對大數(shù)據(jù)的經(jīng)理人。據(jù)阿里巴巴稱,雖然其各類業(yè)務(wù)產(chǎn)生的數(shù)據(jù)為數(shù)據(jù)分析創(chuàng)造了非常好的基礎(chǔ)條件,然而卻招聘不到合適的數(shù)據(jù)科學(xué)家而影響了研發(fā)進(jìn)展。高德納公司預(yù)測,到2015年,全球?qū)⑿略?40萬個與大數(shù)據(jù)相關(guān)的工作崗位,且會有25%的組織設(shè)立首席數(shù)據(jù)官職位。其中有190萬個工作崗位將在美國,每一個與大數(shù)據(jù)有關(guān)的IT工作,都將在技術(shù)行業(yè)外部再建3個工作崗位,這將在美國再創(chuàng)建將近600萬個工作崗位。數(shù)據(jù)科學(xué)家是復(fù)合型人才,是對數(shù)學(xué)、統(tǒng)計學(xué)、機(jī)器學(xué)習(xí)等多方面知識的綜合掌控,能對數(shù)據(jù)做出預(yù)測性的、有價值的分析。因此,各國對大數(shù)據(jù)人才的培養(yǎng)工作應(yīng)當(dāng)快速有效地著手執(zhí)行。大數(shù)據(jù)的接收和管理也需要大量的基礎(chǔ)設(shè)施和能源,無論是傳感器還是數(shù)據(jù)中心的服務(wù)器,都需要大量的硬件投入和能源消耗,這也就意味著大數(shù)據(jù)處理的財力需求極為可觀。如何處理好大數(shù)據(jù)產(chǎn)生的資金投入比例,也成為了各國和各企業(yè)決策者面臨的難題。另外,大數(shù)據(jù)還將面臨嚴(yán)重的安全和隱私問題。首先,隨處可見的傳感器和攝像頭等設(shè)備,會監(jiān)視并記錄人們位置等信息,通過海量數(shù)據(jù)的分析,便可輕易了解人們的行蹤規(guī)律,從而可能給人們帶來生命和財產(chǎn)安全;其次,“云設(shè)施”的經(jīng)濟(jì)劃算,推動了僵尸網(wǎng)絡(luò)的發(fā)展及海量并行處理破解密碼系統(tǒng)的可能性;最后,由于云計算要求我們放棄自主計算能力,當(dāng)整個社會的信息,包括個人信息、商業(yè)信息都存儲在巨頭們提供的“云”上時,我們只能寄希望于這些巨頭們都是道德高尚的圣人,否則我們將面臨災(zāi)難性損失。面對這些安全威脅,學(xué)術(shù)界和工業(yè)界也都紛紛提出自己策略。針對基于位置服務(wù)的安全性問題,文獻(xiàn)[40]提出了一種k-匿名方法,即將自己與周圍k-1個用戶組成一個范圍集合性對象來請求位置服務(wù),從而模糊了自己的準(zhǔn)確位置。文獻(xiàn)[41]提出的策略是,搜集周圍的k-1個用戶的位置信息,并以其中的某一個的名義發(fā)送位置服務(wù)請求,從而也達(dá)到隱藏準(zhǔn)確坐標(biāo)的目的。Roy等人將集中信息流控制和差分隱私保護(hù)等技術(shù)融入云中的數(shù)據(jù)生成與計算階段,提出了一種隱私保護(hù)系統(tǒng)Airavat[42],防止MapReduce計算過程中將非授權(quán)的隱私數(shù)據(jù)泄露出去,并且支持對計算結(jié)果的自動除密。Mowbray等人在數(shù)據(jù)存儲和使用階段使用一種基于客戶端的隱私管理工具[43],提供以用戶為中心的信任模型,幫助用戶控制自己的敏感信息在云端的存儲和使用。蘋果最近申請了一項專利,叫做電子分析污染技術(shù),能夠?qū)⒂脩粼谔O果產(chǎn)品上產(chǎn)生的行為數(shù)據(jù)進(jìn)行污染和混淆,讓其他廠商獲取不到真正的用戶數(shù)據(jù)。這類信息安全保護(hù)的思路是:當(dāng)各種加密措施無法徹底保護(hù)個人信息時,不如將大量的垃圾信息、錯誤信息充斥在真實有效的信息之中,讓竊取者不得不耗費巨大的成本從中分析。高德納公司分析指出,大數(shù)據(jù)安全是一場必要的斗爭,并且大數(shù)據(jù)本身更可用來提高企業(yè)安全。因為解決安全問題的前提是,企業(yè)必須先確定正常、非惡意活動是啥樣子的,然后查找與之不同的活動;從而,發(fā)現(xiàn)惡意活動,基于大數(shù)據(jù)來建立一個基線標(biāo)準(zhǔn)就很好地達(dá)到了這個目的。
最后,大數(shù)據(jù)的出現(xiàn)會促使IT相關(guān)行業(yè)的生態(tài)環(huán)境和產(chǎn)業(yè)鏈的變革。傳統(tǒng)的網(wǎng)絡(luò)公司運(yùn)營模式是在自己的服務(wù)器上來管理若干產(chǎn)品和服務(wù),并通過網(wǎng)絡(luò)連線提供給用戶終端,產(chǎn)生的數(shù)據(jù)歸公司獨有。然而,在大數(shù)據(jù)時代,這種模式已經(jīng)難以勝任,服務(wù)公司往往會選擇租賃第三方的開放平臺來運(yùn)營自己的業(yè)務(wù)。這樣,用戶提供數(shù)據(jù),服務(wù)方處理數(shù)據(jù),但數(shù)據(jù)的實際存儲地卻在第三方。大數(shù)據(jù)影響的IT產(chǎn)業(yè)鏈大致包括數(shù)據(jù)資源、應(yīng)用軟件、基礎(chǔ)設(shè)施三大部分。數(shù)據(jù)資源方面,各大信息中心、通信運(yùn)營商等積極研制和引用大數(shù)據(jù)技術(shù),挖掘大量數(shù)據(jù)分析相關(guān)人才,數(shù)據(jù)資源的收集和開發(fā)產(chǎn)業(yè)逐步完善;應(yīng)用軟件方面,隨著高性能云平臺的出現(xiàn),云應(yīng)用軟件也不斷被開發(fā)出來,用戶再也不必?zé)缽?fù)雜的軟件安裝和配置過程,便可以輕松享受各種網(wǎng)絡(luò)應(yīng)用服務(wù);基礎(chǔ)設(shè)施方面,大數(shù)據(jù)對硬件的依賴,迫使高性能硬盤、低能耗服務(wù)器、小巧化個人終端等行業(yè)的快速發(fā)展。另外,大數(shù)據(jù)技術(shù)的日益成熟也會促使跨行業(yè)經(jīng)營模式的發(fā)展。第三方可以將用戶的各種服務(wù)請求進(jìn)行打包,然后利用大數(shù)據(jù)分析來尋求最好的服務(wù)商的組合以反饋給用戶。對服務(wù)提供方來說,借助第三方可以更好地推銷自己的服務(wù)。而對第三方而言,可以獲得大量的分析數(shù)據(jù),其中的利益也是可觀的,真正的實現(xiàn)了“雙贏”,同時也使得用戶獲得更好的服務(wù)體驗。
結(jié)束語
大數(shù)據(jù)時代挑戰(zhàn)與機(jī)遇并存,正確處理好大數(shù)據(jù),不僅符合企業(yè)的利益,也給人們?nèi)粘I顜順O大的便利。本文對大數(shù)據(jù)的基本概念、處理流程以及相關(guān)技術(shù)進(jìn)行了簡要的探討,并分析了大數(shù)據(jù)可能帶來的一些問題及應(yīng)對策略。云計算目前是處理大數(shù)據(jù)的基礎(chǔ)技術(shù),但其在安全和隱私方面的保障工作仍讓不少人感到懷疑,根本原因還是個人和商業(yè)的信息都存放在遠(yuǎn)端的巨頭們提供的看不見的“云”上。大數(shù)據(jù)時代已經(jīng)到來,但是,相應(yīng)的技術(shù)體系和社會保障仍是亟需研究的應(yīng)用課題。(本文圖略)
本文作者:竇萬春 單位:南京大學(xué) 計算機(jī)科學(xué)與技術(shù)系