国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

軌道交通線網(wǎng)大數(shù)據(jù)的建模和存儲方案

2018-12-13 09:07陳莉莉張賽橋
關(guān)鍵詞:線網(wǎng)時(shí)序結(jié)構(gòu)化

陳莉莉 張賽橋 胡 波

(南瑞集團(tuán)(國網(wǎng)電力科學(xué)研究院)有限公司 江蘇 南京 210032)

0 引 言

隨著城市軌道交通建設(shè)的加快,各個(gè)城市的地鐵線路逐漸向線網(wǎng)化發(fā)展,軌道交通的線網(wǎng)數(shù)據(jù)類型越來越多,數(shù)據(jù)量也越來越大,海量的數(shù)據(jù)匯集到軌道交通指揮中心。在軌道交通領(lǐng)域,如何有效地收集、整理、存儲、處理和分析這些結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù),進(jìn)行深度的數(shù)據(jù)挖掘和數(shù)據(jù)分析,挖掘其中有價(jià)值的信息,從而提高軌道交通的運(yùn)營水平,提升科學(xué)決策、信息服務(wù)和安全保障能力,增加效益降低成本,已日益成為業(yè)界關(guān)注的重點(diǎn)。

目前軌道交通指揮中心的已有數(shù)據(jù)倉庫建設(shè)案例還比較少,而且都采用MPP架構(gòu)的數(shù)據(jù)倉庫進(jìn)行結(jié)構(gòu)化數(shù)據(jù)存儲。但是隨著數(shù)據(jù)量的增大和數(shù)據(jù)類型的增多,MPP的價(jià)格高昂、擴(kuò)展成本太高、不能存儲非結(jié)構(gòu)化數(shù)據(jù)、不能進(jìn)行流處理的弱點(diǎn)暴露出來。Hadoop平臺有著不同于MPP的架構(gòu)和數(shù)據(jù)處理方式,它的結(jié)構(gòu)更靈活,存儲的數(shù)據(jù)量級更大,支持高并發(fā)和實(shí)時(shí)處理,易于擴(kuò)展,而且實(shí)現(xiàn)成本相對較低。但是Hadoop的數(shù)據(jù)存儲中沒有索引,底層數(shù)據(jù)塊比MPP大很多,所以數(shù)據(jù)精準(zhǔn)查詢、表與表相組合查詢的速度比MPP要慢。以往在軌道交通線網(wǎng)中心的MPP數(shù)倉,采用比較多的是基于三范式建模的數(shù)據(jù)建模方法。Hadoop平臺的特點(diǎn)是相對廉價(jià),適合做批量數(shù)據(jù)查詢,但少量精準(zhǔn)查詢和復(fù)雜的多表聯(lián)合查詢效率低,所以三范式建模不能照搬到Hadoop平臺。因此要針對Hadoop平臺的特點(diǎn),選用合適的組件,對軌道交通的線網(wǎng)大數(shù)據(jù)中的結(jié)構(gòu)化數(shù)據(jù),設(shè)計(jì)以維度建模為主的數(shù)據(jù)建模方法,規(guī)避Hadoop平臺的缺點(diǎn)并最大限度發(fā)揮其優(yōu)點(diǎn),從而實(shí)現(xiàn)線網(wǎng)大數(shù)據(jù)的安全和高效的存儲和訪問。針對此特點(diǎn),星形模型得到了比較多的應(yīng)用。

對于以往的軌道交通指揮中心的非結(jié)構(gòu)化數(shù)據(jù),比如視頻、圖像、語音、日志文件、頁面抓取等,都采用磁盤陣列,只實(shí)現(xiàn)存儲備份功能,無法實(shí)現(xiàn)全文檢索以至于進(jìn)一步的分析。在軌道交通運(yùn)營中,需要分析非結(jié)構(gòu)化數(shù)據(jù),即進(jìn)行數(shù)據(jù)的內(nèi)容檢索和處理,本文引入了Hadoop平臺取代磁盤陣列的存儲模式。

本文描述了一種軌道交通指揮中心的海量線網(wǎng)大數(shù)據(jù)的數(shù)據(jù)建模和存儲方法,實(shí)現(xiàn)高效的軌道交通指揮中心的線網(wǎng)大數(shù)據(jù)的數(shù)據(jù)存儲和即席檢索,以及進(jìn)一步的數(shù)據(jù)挖掘和數(shù)據(jù)分析,進(jìn)而指導(dǎo)軌道交通運(yùn)營的功能。

1 結(jié)構(gòu)化數(shù)據(jù)模型

如圖1所示,線網(wǎng)指揮平臺把從數(shù)據(jù)源采集的結(jié)構(gòu)化數(shù)據(jù),其中大部分為時(shí)序數(shù)據(jù),先作為臨時(shí)數(shù)據(jù)存入HBase;再經(jīng)過數(shù)據(jù)清洗轉(zhuǎn)換,存入基礎(chǔ)數(shù)據(jù)區(qū);公共層數(shù)據(jù)存在Hive里;面向應(yīng)用的數(shù)據(jù)集市層,比如指標(biāo)分析、客流分析、設(shè)備維護(hù)等,存在Hive里。

圖1 線網(wǎng)大數(shù)據(jù)的數(shù)據(jù)組織和存儲結(jié)構(gòu)

在數(shù)據(jù)的概念建模階段,Hadoop和MPP并沒有不同。從線網(wǎng)數(shù)據(jù)中抽象出來的主題和關(guān)聯(lián)方式都相似。我們列出軌道交通的各個(gè)主題:路網(wǎng)、設(shè)備、行車、票務(wù)、渠道、事件、OD、當(dāng)事人等。

1.1 HBase的RowKey組織型式

把軌道交通各個(gè)線路采集來的各個(gè)子系統(tǒng)的結(jié)構(gòu)化的時(shí)序數(shù)據(jù),匯集到線網(wǎng)指揮中心的大數(shù)據(jù)平臺,平臺采用Hadoop架構(gòu)。對輸入數(shù)據(jù)以小文件的方式組織起來,采用Avro格式存入HBase中的臨時(shí)數(shù)據(jù)區(qū)。

臨時(shí)數(shù)據(jù)區(qū)的小文件是不同的線路集成商送上來的每條線路的數(shù)據(jù)。先要對臨時(shí)數(shù)據(jù)進(jìn)行格式規(guī)整,以統(tǒng)一格式存入歷史數(shù)據(jù)區(qū)。對歷史數(shù)據(jù),參照它的具體應(yīng)用,采用范式建模的方法,以近源的格式存儲到HBase中。

線網(wǎng)大數(shù)據(jù)中的結(jié)構(gòu)化數(shù)據(jù)有兩類:一類是設(shè)備點(diǎn)變化的時(shí)序數(shù)據(jù),另一類是客流進(jìn)出站的OD時(shí)序數(shù)據(jù)。

對于設(shè)備點(diǎn)變化的時(shí)序數(shù)據(jù),HBase的RowKey以輸入數(shù)據(jù)點(diǎn)的全線網(wǎng)唯一性索引和該數(shù)據(jù)點(diǎn)的數(shù)據(jù)變化時(shí)間組合而成。對于前者是以字符串作為關(guān)鍵字建模,RowKey的組織形式為:

線路車站應(yīng)用設(shè)備點(diǎn)類型點(diǎn)變化時(shí)間

前面6個(gè)區(qū)拼成的字符串是每個(gè)數(shù)據(jù)點(diǎn)的索引值,最后一個(gè)區(qū)是點(diǎn)變化時(shí)間。這樣的分級組成方式,易于理解又實(shí)現(xiàn)了全線網(wǎng)的統(tǒng)一,方便進(jìn)行數(shù)據(jù)擴(kuò)展和新線接入。而且變化時(shí)間在長期上會(huì)呈現(xiàn)均勻分布的形式,容易實(shí)現(xiàn)把數(shù)據(jù)平均分布存儲于不同的數(shù)據(jù)節(jié)點(diǎn),保證各數(shù)據(jù)節(jié)點(diǎn)間的壓力平衡。

軌道交通指揮中心的指標(biāo)分析中有大量的對點(diǎn)的一段時(shí)間內(nèi)變化進(jìn)行批量讀入的需求,這種存儲格式可以一次性讀入時(shí)間序列在一段時(shí)間內(nèi)的變化數(shù)據(jù),實(shí)現(xiàn)高效的數(shù)據(jù)訪問。

類似的情況,對于客流進(jìn)出站的OD時(shí)序數(shù)據(jù),RowKey的組織形式為:

卡號進(jìn)出站時(shí)間

1.2 Hive建表型式

歷史數(shù)據(jù)經(jīng)過數(shù)據(jù)治理后,根據(jù)軌道交通指揮中心的具體數(shù)據(jù)應(yīng)用,設(shè)計(jì)各自的數(shù)據(jù)集市,這些數(shù)據(jù)集市的表存儲到Hive中。對這些數(shù)據(jù)集市提煉出共同的通用數(shù)據(jù)作為中間層,這些數(shù)據(jù)也存入Hive中。Hive中表的數(shù)據(jù)模型按照Hadoop本身的特點(diǎn)設(shè)計(jì),采用維度建模方法設(shè)計(jì),對數(shù)據(jù)進(jìn)行降范式處理;在線網(wǎng)中,把原有線路數(shù)據(jù)模型中分小表存儲的不同的屬性的數(shù)據(jù),根據(jù)具體需求整合到一張大表中重復(fù)存儲,以增大數(shù)據(jù)存儲空間換取有效縮短讀取時(shí)間。采取的方法有:

1) 對于ISCS數(shù)據(jù),把線路中以點(diǎn)為中心的建表方式改為線網(wǎng)中以設(shè)備為中心的建表方式,即把每個(gè)設(shè)備的所有點(diǎn)都集中存在一張表里。

2) 對于客流數(shù)據(jù),把OD和相關(guān)列車運(yùn)行時(shí)刻表組合存儲為一張表。

3) 對于行車數(shù)據(jù),把列車實(shí)際運(yùn)行圖和計(jì)劃運(yùn)行圖、司機(jī)信息、列車狀態(tài)信息、滿載率等相關(guān)信息組合存儲為一張表。

2 結(jié)構(gòu)化數(shù)據(jù)實(shí)施方案

軌道交通各線路采集的各子系統(tǒng)的采樣數(shù)據(jù),其實(shí)是一種結(jié)構(gòu)化的時(shí)序數(shù)據(jù),匯集到線網(wǎng)指揮中心的大數(shù)據(jù)平臺。圖2中,線網(wǎng)指揮中心的Hadoop平臺通過Kafka總線獲取線路端的數(shù)據(jù),作為實(shí)時(shí)流處理的輸入,通過Spark Streaming在線處理后,直接輸出到展示平臺。

圖2 Hadoop平臺的流處理方案

對于輸入的數(shù)據(jù),可以分為以FTP方式上傳的批量數(shù)據(jù),或從Kafka總線接收實(shí)時(shí)流數(shù)據(jù),實(shí)時(shí)流數(shù)據(jù)經(jīng)過整理后和FTP方式上傳的數(shù)據(jù)存入臨時(shí)數(shù)據(jù)區(qū)。每一條時(shí)序數(shù)據(jù)用Json串的方式存儲每個(gè)數(shù)據(jù)點(diǎn)的索引、變化時(shí)間、值和狀態(tài),一段時(shí)間內(nèi)的數(shù)據(jù)變化組成一個(gè)文件。輸入數(shù)據(jù)以小文件的組織方式存入HBase中的臨時(shí)數(shù)據(jù)區(qū)。

臨時(shí)數(shù)據(jù)區(qū)存儲的數(shù)據(jù)來源是城市軌道交通的不同線路,而線路集成商不相同造成數(shù)據(jù)格式的不同。因此首先要對這些數(shù)據(jù)進(jìn)行格式規(guī)整,再存入基礎(chǔ)數(shù)據(jù)區(qū)長期保存。HBase的RowKey以輸入數(shù)據(jù)點(diǎn)的線網(wǎng)唯一性索引和數(shù)據(jù)變化時(shí)間的組合。各個(gè)輸入點(diǎn)是以字符串作為關(guān)鍵字的線網(wǎng)級統(tǒng)一的數(shù)據(jù)模型,比如:南京三號線浮橋站BAS應(yīng)用的1號風(fēng)機(jī),它的轉(zhuǎn)速是個(gè)數(shù)字量類型的點(diǎn),在2017年7月18日12∶35∶55的236 ms這個(gè)時(shí)間發(fā)生了一次變化,于是RowKey就記為:

njl3.fq.bas.fj1.dig.zs#20170718123555236。

這樣的存儲方式充分考慮線網(wǎng)數(shù)據(jù)的擴(kuò)展性,支持線網(wǎng)全數(shù)據(jù)接入。

經(jīng)過數(shù)據(jù)治理后的歷史數(shù)據(jù),針對軌道交通指揮中心的數(shù)據(jù)應(yīng)用,對每個(gè)應(yīng)用設(shè)計(jì)各自的數(shù)據(jù)集市,存儲到Hive中。再提取出每個(gè)數(shù)據(jù)集市的通用數(shù)據(jù),建表存入Hive中。

按照Hadoop本身的特點(diǎn)設(shè)計(jì)存儲表,對數(shù)據(jù)進(jìn)行降范式處理,采用大寬表的方法,避免表與表之間的Join操作。通常一個(gè)設(shè)備有幾十個(gè)采集點(diǎn),將這些不同數(shù)據(jù)點(diǎn)聚合到一張大表中存儲,每個(gè)點(diǎn)的不同屬性以結(jié)構(gòu)體的方式組織到大表中。對客流數(shù)據(jù)的OD分析的中間結(jié)果,每一張地鐵卡對應(yīng)卡號為索引的進(jìn)出站記錄,以及和列車時(shí)刻表結(jié)合時(shí)計(jì)算出的這位乘客于某個(gè)時(shí)間從某個(gè)閘機(jī)進(jìn)入某站,然后于某個(gè)時(shí)間乘某趟列車,在某個(gè)換乘站轉(zhuǎn)車,轉(zhuǎn)了幾次車后到達(dá)終點(diǎn)站,到達(dá)時(shí)間,從某個(gè)閘機(jī)出站,上述所有的信息,都聚合成一條記錄存儲。

比如,圖3的BAS專業(yè)的廢水泵設(shè)備,表征這個(gè)設(shè)備屬性狀態(tài)的有一系列數(shù)字量和模擬量點(diǎn)。這些點(diǎn)在MPP的點(diǎn)表里逐行存儲,在Hadoop里把它合并進(jìn)一張?jiān)O(shè)備表里。

圖3 設(shè)備和點(diǎn)的對應(yīng)關(guān)系

數(shù)據(jù)存入Hive,可以利用Impala和Solr等組件,采用NOSQL技術(shù),加快對數(shù)據(jù)的訪問。

3 非結(jié)構(gòu)化數(shù)據(jù)存儲

針對軌道交通指揮中心的大量非結(jié)構(gòu)化數(shù)據(jù),其類型大致有視頻、音頻、圖片、檔案文件、日志文件、網(wǎng)頁抓取等。軌道交通領(lǐng)域的這些文件都不太大,即便是視頻文件,由于軌道交通指揮中心建設(shè)有線網(wǎng)CCTV中心存儲視頻,線網(wǎng)指揮中心的視頻都是小段,文件基本上均小于100 MB,因此,都可以存儲到HBase中,并在HBase中另外建表存儲元數(shù)據(jù),實(shí)現(xiàn)對非結(jié)構(gòu)化數(shù)據(jù)的進(jìn)一步檢索和內(nèi)容分析。

這些非結(jié)構(gòu)化數(shù)據(jù)和文件存儲,操作瓶頸不在CPU,而在磁盤IO和內(nèi)存,所以采用Snappy技術(shù)做文件壓縮,以CPU運(yùn)算減少內(nèi)存和磁盤IO操作。

由于文件數(shù)量多,所以存儲的分區(qū)目錄組織方式為文件來源應(yīng)用,分為五類:歷史檔案、應(yīng)急指揮、系統(tǒng)日志、報(bào)表、網(wǎng)絡(luò)抓取內(nèi)容,如表1所示。按照具體應(yīng)用分類,對后四種每半年為一期實(shí)現(xiàn)文件歸檔,用于對非結(jié)構(gòu)化數(shù)據(jù)的進(jìn)一步檢索和內(nèi)容分析。

表1 非結(jié)構(gòu)化數(shù)據(jù)分類方法

4 結(jié) 語

數(shù)據(jù)中心是線網(wǎng)指揮中心的重要組成部分,有效利用線網(wǎng)中生成的海量數(shù)據(jù),提高軌道交通的運(yùn)營管理水平,幫助地鐵企業(yè)充分發(fā)掘潛在的數(shù)據(jù)價(jià)值,是線網(wǎng)指揮中心的重要功能。

Hadoop平臺具有廉價(jià)、靈活、易擴(kuò)展等特點(diǎn),將在線網(wǎng)數(shù)據(jù)中心得到廣泛應(yīng)用。本文將Hadoop平臺應(yīng)用于軌道交通線網(wǎng)數(shù)據(jù)中心,在數(shù)據(jù)建模和數(shù)據(jù)存儲方面的獨(dú)特之處做了介紹。概括說來就是時(shí)序數(shù)據(jù)的標(biāo)準(zhǔn)化,以及以維度建模為主,采用空間換時(shí)間的方法,用寬表和冗余存儲方法來獲得高效的數(shù)據(jù)查詢和數(shù)據(jù)分析結(jié)果。本文描述的建模和存儲方法,在實(shí)際搭建軌道交通大數(shù)據(jù)中心平臺的驗(yàn)證過程中,滿足了實(shí)時(shí)性和大批量存儲的要求,取得了令人滿意的效果。

猜你喜歡
線網(wǎng)時(shí)序結(jié)構(gòu)化
顧及多種弛豫模型的GNSS坐標(biāo)時(shí)序分析軟件GTSA
清明
基于GEE平臺與Sentinel-NDVI時(shí)序數(shù)據(jù)江漢平原種植模式提取
改進(jìn)的非結(jié)構(gòu)化對等網(wǎng)絡(luò)動(dòng)態(tài)搜索算法
深度學(xué)習(xí)的單元結(jié)構(gòu)化教學(xué)實(shí)踐與思考
你不能把整個(gè)春天都搬到冬天來
結(jié)構(gòu)化面試方法在研究生復(fù)試中的應(yīng)用
左顧右盼 瞻前顧后 融會(huì)貫通——基于數(shù)學(xué)結(jié)構(gòu)化的深度學(xué)習(xí)
淺析珠海市現(xiàn)代有軌電車線網(wǎng)的規(guī)劃和研究
地鐵廣州南站七號線開通時(shí)客流組織