鄒 丹,馬小寧,王 喆
(中國(guó)鐵道科學(xué)研究院集團(tuán)有限公司 鐵路大數(shù)據(jù)研究與應(yīng)用創(chuàng)新中心,北京 100081)
隨著信息采集手段的不斷發(fā)展,不同來源、不同類型的數(shù)據(jù)呈現(xiàn)指數(shù)級(jí)的爆發(fā)式增長(zhǎng)[1]。政府、金融、餐飲、電力等行業(yè)都紛紛進(jìn)入大數(shù)據(jù)的實(shí)用階段[2]。對(duì)于鐵路行業(yè)來說,各專業(yè)都在積極探索大數(shù)據(jù)應(yīng)用,例如:客運(yùn)專業(yè)在利用大數(shù)據(jù)構(gòu)建客運(yùn)產(chǎn)品360°立體畫像[3]、工務(wù)專業(yè)搭建了“數(shù)字工務(wù)”平臺(tái)提高設(shè)備設(shè)施維修的管理水平等[4],但是由于各系統(tǒng)分散建設(shè),目前,還缺乏能夠跨專業(yè)、跨領(lǐng)域的大數(shù)據(jù)分析。本文旨在設(shè)計(jì)一種更合理的鐵路大數(shù)據(jù)架構(gòu)模式,使鐵路數(shù)據(jù)在集中管理后,能夠統(tǒng)一存儲(chǔ)、綜合管理、有效利用,能夠使各專業(yè)除了分析本專業(yè)的數(shù)據(jù),還能夠疊加利用其它專業(yè)數(shù)據(jù),從數(shù)據(jù)層面挖掘潛在的經(jīng)濟(jì)效益,更好地發(fā)揮數(shù)據(jù)價(jià)值,提升鐵路的綜合競(jìng)爭(zhēng)力。
(1)缺乏數(shù)據(jù)集中管理
在鐵路信息化建設(shè)逐步發(fā)展的過程中,各專業(yè)根據(jù)自身業(yè)務(wù)需求建設(shè)了大量的信息系統(tǒng)。然而各系統(tǒng)之間多為隔離狀態(tài),數(shù)據(jù)資源分散在各個(gè)數(shù)據(jù)孤島之中,業(yè)務(wù)系統(tǒng)間無法進(jìn)行數(shù)據(jù)的交互和統(tǒng)一管理[5]。
(2)缺乏企業(yè)數(shù)據(jù)視圖
由于鐵路數(shù)據(jù)沒有集中管理,所以目前尚未形成統(tǒng)一的企業(yè)視圖。大數(shù)據(jù)的價(jià)值體現(xiàn)在多系統(tǒng)數(shù)據(jù)的融合和跨行業(yè)數(shù)據(jù)的聯(lián)合分析,沒有統(tǒng)一的企業(yè)視圖就很難實(shí)現(xiàn)數(shù)據(jù)的融合與分析。
(3)數(shù)據(jù)處理技術(shù)和架構(gòu)不能滿足需求
大數(shù)據(jù)由于數(shù)據(jù)量大、數(shù)據(jù)類型多,需要新型數(shù)據(jù)分析技術(shù)的支撐,目前鐵路還是以傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)處理技術(shù)為主,缺乏更高效的數(shù)據(jù)處理機(jī)制和開展大數(shù)據(jù)應(yīng)用的數(shù)據(jù)架構(gòu)模式[5]。
(1)平臺(tái)架構(gòu)需要完成數(shù)據(jù)集成整合的任務(wù),打破各應(yīng)用系統(tǒng)間的數(shù)據(jù)壁壘,形成數(shù)據(jù)資源的全景視圖;
(2)平臺(tái)架構(gòu)考慮需要滿足數(shù)據(jù)大容量、高可用、高擴(kuò)展要求;
(3)架構(gòu)設(shè)計(jì)滿足海量多源復(fù)雜數(shù)據(jù)存儲(chǔ)、計(jì)算要求;
(4)支持實(shí)時(shí)分析、動(dòng)態(tài)資源共享。
為了解決鐵路大數(shù)據(jù)目前面臨的問題,提出了面向鐵路數(shù)據(jù)的大數(shù)據(jù)平臺(tái)架構(gòu),目的是為了實(shí)現(xiàn)數(shù)據(jù)集中管理,并用大數(shù)據(jù)的理念和方法實(shí)現(xiàn)數(shù)據(jù)的高效處理。架構(gòu)模式分為3層,如圖1所示。(1)數(shù)據(jù)獲取層,基于不同的數(shù)據(jù)源,區(qū)別結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù),采用不同的采集方式和采集頻度完成數(shù)據(jù)集中;(2)數(shù)據(jù)處理層,完成數(shù)據(jù)的預(yù)處理,對(duì)采集數(shù)據(jù)進(jìn)行清洗、轉(zhuǎn)換、加載,完成數(shù)據(jù)的顆粒化處理,形成鐵路數(shù)據(jù)分類,實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)與計(jì)算分析[6];(3)數(shù)據(jù)服務(wù)層,以服務(wù)或組件等多種方式為應(yīng)用方提供業(yè)務(wù)應(yīng)用、數(shù)據(jù)分析和商業(yè)智能(BI)報(bào)表等智能決策支持。
圖1 鐵路數(shù)據(jù)架構(gòu)分層模式
鐵路大數(shù)據(jù)平臺(tái)的數(shù)據(jù)獲取層,任務(wù)是進(jìn)行數(shù)據(jù)采集,完成鐵路數(shù)據(jù)的集中管理[5]。采集過程為:(1)確定與大數(shù)據(jù)平臺(tái)對(duì)接的數(shù)據(jù)源;(2)明確數(shù)據(jù)采用哪種采集技術(shù);(3)根據(jù)數(shù)據(jù)源特點(diǎn)和制定采集方案。
2.1.1 數(shù)據(jù)源
鐵路大數(shù)據(jù)的數(shù)據(jù)來源包括路內(nèi)業(yè)務(wù)系統(tǒng)數(shù)據(jù)和來自其他行業(yè)的數(shù)據(jù)、互聯(lián)網(wǎng)數(shù)據(jù)、物聯(lián)網(wǎng)數(shù)據(jù)和其他數(shù)據(jù)等。(1)鐵路業(yè)務(wù)系統(tǒng)數(shù)據(jù)指來自鐵路行業(yè)的基礎(chǔ)數(shù)據(jù)、戰(zhàn)略決策數(shù)據(jù)、運(yùn)輸生產(chǎn)數(shù)據(jù)、經(jīng)營(yíng)開發(fā)數(shù)據(jù)、資源管理數(shù)據(jù)等;(2)外部數(shù)據(jù)指與鐵路運(yùn)輸、安全等相關(guān)的天氣數(shù)據(jù)、地質(zhì)數(shù)據(jù)、災(zāi)害預(yù)警數(shù)據(jù)、綜合交通類數(shù)據(jù)等;(3)互聯(lián)網(wǎng)數(shù)據(jù)是海量社交網(wǎng)絡(luò)信息、鐵路熱點(diǎn)話題、搜索平臺(tái)相關(guān)信息等;(4)物聯(lián)網(wǎng)數(shù)據(jù)包括傳感器、射頻識(shí)別(RFID)等設(shè)備采集的數(shù)據(jù);(5)其他數(shù)據(jù)指能夠參與數(shù)據(jù)關(guān)聯(lián)分析、參與深度挖掘等大數(shù)據(jù)分析、計(jì)算過程的數(shù)據(jù)。數(shù)據(jù)類型既包括結(jié)構(gòu)化的數(shù)據(jù)庫(kù)表、數(shù)據(jù)文件,也包括非結(jié)構(gòu)化的視頻、圖像、文本等。
2.1.2 數(shù)據(jù)采集技術(shù)
數(shù)據(jù)源中需要采用不同的數(shù)據(jù)抽取方式,常用數(shù)據(jù)采集工具,如表1所示。
(1)對(duì)于業(yè)務(wù)應(yīng)用系統(tǒng)中的數(shù)據(jù),可采用分布式ETL工具將關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)入到Hadoop分布式文件系統(tǒng)(HDFS)中,如Sqoop和Kettle等;
(2)對(duì) 于 圖片、音頻、視頻和日志等非結(jié)構(gòu)化數(shù)據(jù),可通過 FTP、SFTP、Chukwa等方式進(jìn)行交換處理[7];
(3) 對(duì) 于 實(shí)時(shí)流式類數(shù)據(jù),可通過分布式的海量日志系統(tǒng)Flume和高吞吐量的分布式發(fā)布訂閱消息系統(tǒng)Kafka進(jìn)行采集、聚合和傳輸;
(4)對(duì)于外部網(wǎng)頁(yè)數(shù)據(jù)可以采取網(wǎng)絡(luò)爬蟲方式進(jìn)行爬取。該方法可按照一定規(guī)則,自動(dòng)地抓取網(wǎng)頁(yè)非結(jié)構(gòu)化數(shù)據(jù),并將其存儲(chǔ)為結(jié)構(gòu)化數(shù)據(jù)文件,同時(shí)支持圖片、視頻等文件的采集并進(jìn)行自動(dòng)關(guān)聯(lián)。
表1 數(shù)據(jù)采集工具
2.1.3 數(shù)據(jù)采集方案
針對(duì)不同數(shù)據(jù)源以及不同應(yīng)用的分析要求,需要制定不同的采集方案,其中包括:
(1)采集頻次。數(shù)據(jù)采集方案在采集頻次方面采用批量或?qū)崟r(shí)方式。需要根據(jù)數(shù)據(jù)實(shí)時(shí)性要求、數(shù)據(jù)所處生命周期的不同進(jìn)行規(guī)劃[8]。對(duì)于需要提供實(shí)時(shí)處理的數(shù)據(jù)和在數(shù)據(jù)生命周期中處于活躍期的數(shù)據(jù),采用實(shí)時(shí)采集;對(duì)于用來支撐未來分析決策和趨勢(shì)預(yù)測(cè)的數(shù)據(jù)、或歷史數(shù)據(jù)等實(shí)時(shí)性要求不高的數(shù)據(jù),可進(jìn)行批量采集或準(zhǔn)實(shí)時(shí)采集。
(2)采集方式。 采用前置機(jī)的方式,可由既有業(yè)務(wù)系統(tǒng)主動(dòng)將數(shù)據(jù)放入前置機(jī),也可以由數(shù)據(jù)獲取層主動(dòng)發(fā)起采集任務(wù);采用數(shù)據(jù)接口方式,通過雙方協(xié)定的接口服務(wù)進(jìn)行數(shù)據(jù)采集;企業(yè)服務(wù)總線方式,以服務(wù)的方式進(jìn)行實(shí)時(shí)數(shù)據(jù)采集。數(shù)據(jù)采集無論以何種方式進(jìn)行,采集數(shù)據(jù)的任務(wù)都不能夠?qū)扔邢到y(tǒng)的生產(chǎn)庫(kù)和系統(tǒng)運(yùn)行產(chǎn)生影響。
(3)其他。匯集方案中還需要包括匯集的周期、網(wǎng)絡(luò)通道、主要負(fù)責(zé)人等,嚴(yán)格按照數(shù)據(jù)匯集計(jì)劃執(zhí)行數(shù)據(jù)的上傳或下載,尤其是實(shí)時(shí)采集數(shù)據(jù),需要通過制度和技術(shù)手段保證數(shù)據(jù)的及時(shí)性[9]。
2.2.1 數(shù)據(jù)預(yù)處理
數(shù)據(jù)預(yù)處理是將數(shù)據(jù)源的數(shù)據(jù)進(jìn)行整合,在這個(gè)過程中,需要完成以下幾項(xiàng)工作。
(1)數(shù)據(jù)區(qū)分結(jié)構(gòu)化與非結(jié)構(gòu)化,由于結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù)處理過程完全不同,所以在數(shù)據(jù)整合的過程中,首先需要對(duì)數(shù)據(jù)進(jìn)行歸類。
(2)結(jié)構(gòu)化數(shù)據(jù)進(jìn)行數(shù)據(jù)ETL(Extract-Transform-Load,數(shù)據(jù)抽?。╡xtract)、交互轉(zhuǎn)換(transform)、加載(load)),去掉空數(shù)據(jù)、重復(fù)數(shù)據(jù)和錯(cuò)誤數(shù)據(jù),去掉與數(shù)據(jù)分析、挖掘無關(guān)的數(shù)據(jù),調(diào)整數(shù)據(jù)格式,對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)換和加載等工作,提高數(shù)據(jù)的正確和有效性。
(3)非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行歸類,結(jié)構(gòu)化等工作。
(4)數(shù)據(jù)分類,從鐵路信息化總體規(guī)劃的角度出發(fā),對(duì)鐵路數(shù)據(jù)進(jìn)行分類,形成鐵路統(tǒng)一的數(shù)據(jù)視圖,便于數(shù)據(jù)的共享與分析應(yīng)用。
(5)數(shù)據(jù)建模,將數(shù)據(jù)進(jìn)行細(xì)粒度劃分,減少數(shù)據(jù)冗余。
2.2.2 數(shù)據(jù)存儲(chǔ)與計(jì)算
在鐵路大數(shù)據(jù)平臺(tái)的架構(gòu)設(shè)計(jì)中,數(shù)據(jù)的存儲(chǔ)與計(jì)算需要同時(shí)具備3種模式,即:基于關(guān)系型數(shù)據(jù)庫(kù)的數(shù)據(jù)存儲(chǔ)與計(jì)算、基于大規(guī)模并行處理架構(gòu)模式的數(shù)倉(cāng)和基于Hadoop的大數(shù)據(jù)處理架構(gòu)。
(1)關(guān)系型數(shù)據(jù)庫(kù)
關(guān)系數(shù)據(jù)庫(kù)部分,適用于存儲(chǔ)實(shí)時(shí)性要求較高,經(jīng)常需要進(jìn)行寫入的數(shù)據(jù),適用于響應(yīng)速度快、準(zhǔn)確性較高、規(guī)模較小的數(shù)據(jù)。在鐵路大數(shù)據(jù)平臺(tái)的架構(gòu)設(shè)計(jì)中,用來存儲(chǔ)實(shí)時(shí)數(shù)據(jù)、計(jì)算結(jié)果數(shù)據(jù)、衍生數(shù)據(jù)等,方便服務(wù)層隨時(shí)調(diào)用。
(2)基于大規(guī)模并行處理架構(gòu)模式的數(shù)據(jù)倉(cāng)庫(kù)
在大規(guī)模并行處理架構(gòu)模式的數(shù)據(jù)倉(cāng)庫(kù)中,每個(gè)節(jié)點(diǎn)都有獨(dú)立的存儲(chǔ)系統(tǒng)和內(nèi)存系統(tǒng),業(yè)務(wù)數(shù)據(jù)根據(jù)數(shù)據(jù)模型和應(yīng)用特點(diǎn)劃分到各個(gè)節(jié)點(diǎn)上,彼此協(xié)同計(jì)算,作為整體提供數(shù)據(jù)庫(kù)服務(wù)。其特點(diǎn)是數(shù)據(jù)準(zhǔn)確性較高,易于擴(kuò)展,用來存放較大量結(jié)構(gòu)化歷史數(shù)據(jù)。將數(shù)據(jù)批量導(dǎo)出后執(zhí)行數(shù)據(jù)分批計(jì)算任務(wù)。數(shù)據(jù)倉(cāng)庫(kù)中還包括數(shù)據(jù)管控模塊,提供數(shù)據(jù)處理過程中的數(shù)據(jù)質(zhì)量管理、數(shù)據(jù)稽查、主數(shù)據(jù)管理等。
(3) Hadoop架構(gòu)
Hadoop是一個(gè)開源的編程架構(gòu),采用分布式存儲(chǔ)系統(tǒng),能夠清洗、存儲(chǔ)和處理海量數(shù)據(jù)。在Hadoop架構(gòu)區(qū)域,數(shù)據(jù)存儲(chǔ)在Hive、HDFS或者Hbase中,通過分布式系統(tǒng)在成千上萬的節(jié)點(diǎn)中讀取數(shù)據(jù)。由于大數(shù)據(jù)的分析計(jì)算非常復(fù)雜,因此在Hadoop架構(gòu)中需要包括數(shù)據(jù)挖掘的專用工具、算法庫(kù)和流式計(jì)算引擎等,用以支撐大量復(fù)雜數(shù)據(jù)的計(jì)算和分析。Hadoop架構(gòu)易于擴(kuò)展,具有無限的可伸縮性,適合于用存儲(chǔ)數(shù)據(jù)量增長(zhǎng)較快,但準(zhǔn)確性要求相對(duì)不高的非結(jié)構(gòu)化數(shù)據(jù)和部分結(jié)構(gòu)化數(shù)據(jù)。
以上3種模式不存在互相取代的關(guān)系,而是彼此互為另外兩部分的有益補(bǔ)充和促進(jìn),在數(shù)據(jù)處理層扮演著不同的角色,相互之間存在大量的數(shù)據(jù)流轉(zhuǎn)。
數(shù)據(jù)處理層根據(jù)不同的應(yīng)用場(chǎng)景,將大數(shù)據(jù)平臺(tái)的數(shù)據(jù)處理能力以服務(wù)的形式提供給用戶,主要包括以下幾種服務(wù):
(1)可視化分析。對(duì)數(shù)據(jù)進(jìn)行智能分析,并將結(jié)果以可視化報(bào)表的形式展示,以直觀的圖表形式支持用戶決策分析[10]。
(2)數(shù)據(jù)挖掘算法。大數(shù)據(jù)分析的核心就是數(shù)據(jù)挖掘算法,數(shù)據(jù)服務(wù)層為用戶提供包括數(shù)據(jù)多維分析算法、決策樹算法和聚類分析算法等算法服務(wù)。
(3)預(yù)測(cè)分析模型。數(shù)據(jù)服務(wù)層將數(shù)據(jù)挖掘過程中發(fā)現(xiàn)的數(shù)據(jù)特點(diǎn)和規(guī)律,形成預(yù)測(cè)分析模型,支持將用戶數(shù)據(jù)帶入模型,對(duì)未來結(jié)果進(jìn)行預(yù)測(cè)分析。
(4)業(yè)務(wù)應(yīng)用。各業(yè)務(wù)系統(tǒng)可利用數(shù)據(jù)服務(wù)層的大數(shù)據(jù)處理能力進(jìn)行業(yè)務(wù)數(shù)據(jù)的計(jì)算和處理,支撐業(yè)務(wù)系統(tǒng)需要。
(1)數(shù)據(jù)采集功能。完成數(shù)據(jù)采集任務(wù),匯集全路各業(yè)務(wù)系統(tǒng)數(shù)據(jù)、與數(shù)據(jù)分析相關(guān)的路外數(shù)據(jù)和其他來源數(shù)據(jù),滿足各類型數(shù)據(jù)采集需求。
(2)數(shù)據(jù)處理功能。通過數(shù)據(jù)處理工具將采集后的數(shù)據(jù)進(jìn)行分類,進(jìn)行數(shù)據(jù)的清洗、轉(zhuǎn)換等工作。
(3)數(shù)據(jù)目錄功能。為平臺(tái)數(shù)據(jù)建立數(shù)據(jù)的分級(jí)分類目錄,形成企業(yè)數(shù)據(jù)視圖,集成數(shù)據(jù)使用的申請(qǐng)、審批和開放權(quán)限等功能。
(4)大數(shù)據(jù)存儲(chǔ)與分析功能。主要提供統(tǒng)計(jì)分析、數(shù)據(jù)模型算法、數(shù)據(jù)挖掘服務(wù)和可視化服務(wù)等功能。
(5)數(shù)據(jù)治理。實(shí)現(xiàn)對(duì)基礎(chǔ)數(shù)據(jù)的管理和數(shù)據(jù)質(zhì)量的管控,使平臺(tái)數(shù)據(jù)質(zhì)量不斷提高。
本文通過對(duì)鐵路大數(shù)據(jù)的研究,設(shè)計(jì)了一種鐵路大數(shù)據(jù)架構(gòu)模式,希望能夠以更為合理的數(shù)據(jù)架構(gòu)進(jìn)行數(shù)據(jù)的組織,達(dá)到鐵路數(shù)據(jù)集中管理與綜合利用的要求。隨著大數(shù)據(jù)技術(shù)的不斷發(fā)展與完善,未來對(duì)于鐵路數(shù)據(jù)資產(chǎn)的應(yīng)用將朝著更加高效、安全、智能的方向發(fā)展。通過對(duì)鐵路數(shù)據(jù)資產(chǎn)的合理利用,鐵路行業(yè)將會(huì)更高效地管理數(shù)據(jù)、應(yīng)用數(shù)據(jù)、發(fā)揮數(shù)據(jù)應(yīng)有的價(jià)值,進(jìn)一步提升鐵路的核心競(jìng)爭(zhēng)力,更好地服務(wù)于社會(huì)。