朱嘉斌
(蘇州市軌道交通集團有限公司,215004,蘇州∥高級工程師)
城市軌道交通線網(wǎng)大數(shù)據(jù)中心統(tǒng)一收集、處理和儲存各類數(shù)據(jù),實現(xiàn)對線網(wǎng)內(nèi)各個生產(chǎn)系統(tǒng)的監(jiān)督、協(xié)調(diào)、監(jiān)控、統(tǒng)計、分析和管理等。城市軌道交通數(shù)據(jù)來源廣泛、數(shù)量龐大、類型多樣、更新快,具有異構、量多、類雜和自組織等的特點。
在城市軌道交通大數(shù)據(jù)中心建設過程中,面臨的主要挑戰(zhàn)為:①建設成本:數(shù)據(jù)中心處理的數(shù)據(jù)量大、處理要求高,且后續(xù)新建線路也需要接入數(shù)據(jù)中心,所以一次性建成數(shù)據(jù)中心的投資巨大,初期成本難以控制。②業(yè)務擴展:隨著新線不斷建設,以及技術不斷創(chuàng)新和發(fā)展,數(shù)據(jù)中心應用軟件系統(tǒng)也要不斷升級,導致業(yè)務形態(tài)有很大的不確定性。③數(shù)據(jù)分析:大數(shù)據(jù)中心的數(shù)據(jù)分析旨在提取、挖掘海量數(shù)據(jù)背后的各種規(guī)律。核心問題在于如何有效地對海量數(shù)據(jù)進行組織、學習、計算、表達。設計同時適用于結構化數(shù)據(jù)和非結構化數(shù)據(jù)的組織管理系統(tǒng)是巨大挑戰(zhàn)。④程序性能:如何構建高效自動化索引,如何優(yōu)化組織、管理數(shù)據(jù)的工作流程,以便盡可能自動化處理各類事務,減少額外的資源占用,提高效率,是面臨的重要挑戰(zhàn)。
大數(shù)據(jù)中心處理的數(shù)據(jù)類型多樣,業(yè)務廣泛,彼此有千絲萬縷聯(lián)系,數(shù)據(jù)中心需要結合各專業(yè)信息對多種維度數(shù)據(jù)進行綜合分析才能產(chǎn)生有價值的成果。本文針對以上挑戰(zhàn),結合大數(shù)據(jù)中心的現(xiàn)實需求,提出了基于Hadoop+MPP技術架構的大數(shù)據(jù)中心建設方案。
Hadoop(一種分布式系統(tǒng)基礎架構)是一個分布式系統(tǒng)基礎架構。Hadoop的整體優(yōu)勢是數(shù)據(jù)處理能力強、成本低、高可靠性和靈活的可擴充性。Hadoop核心內(nèi)容為:①HDFS(分布式文件系統(tǒng))——是一種新型分布式文件系統(tǒng),可提供高可靠、高擴展、高吞吐能力的海量文件存儲業(yè)務。 ②Map/Reduce(映射/化簡)模型——并行計算方式遵循Map/Reduce模型就可以實現(xiàn)分布式并行計算。③HBase數(shù)據(jù)庫——是非關系型數(shù)據(jù)庫,主要依靠橫向擴展,通過不斷增加PC服務器就可增加計算和存儲能力。
MPP(一種海量數(shù)據(jù)實時分析架構)是通過一定的互聯(lián)網(wǎng)節(jié)點連接多個SMP(對稱多處理)服務器協(xié)同完成工作任務。MPP數(shù)據(jù)庫將任務并行地分散到多個服務器和節(jié)點上,在每個節(jié)點計算完成后,將各自的結果匯總在一起從而得到最終結果。與傳統(tǒng)的關系型數(shù)據(jù)庫相比,MPP在數(shù)據(jù)處理方面的優(yōu)勢為:①分布式架構。②處理數(shù)據(jù)量大,能處理PB(千萬億)級數(shù)據(jù)。③更大的I/O(輸入/輸出)能力。因為采用完全無共享的并行處理架構,所以能充分利用資源。④擴展能力好。⑤采用列存儲,能節(jié)省更多的存儲空間。
考慮到Hadoop和MPP的特性,將兩者結合搭配使用是最佳方案。利用x86服務器搭建分布式數(shù)據(jù)庫,利用Hadoop+MPP架構管理處理匯總的各類數(shù)據(jù)。Hadoop+MPP架構的優(yōu)點是:初期投資低、硬件方便擴展、容錯性高、處理能力強;用戶可以在不了解分布式底層細節(jié)的情況下,開發(fā)分布式程序,充分利用集群功能進行高速運算和存儲;可以同時對結構化數(shù)據(jù)和非結構化數(shù)據(jù)進行在線交互處理。其缺點是:對系統(tǒng)及軟件開發(fā)人員的要求高。
選擇批量的x86服務器搭建分布式的數(shù)據(jù)中心硬件平臺,采用Hadoop+MPP架構交互處理各類實時和離線的結構化和非結構化數(shù)據(jù),能大大降低初始建設成本,控制預算,而且能夠較為貼切地解決城市軌道交通數(shù)據(jù)中心數(shù)據(jù)量大、關聯(lián)性強、非結構化數(shù)據(jù)多等痛點,能很好實現(xiàn)數(shù)據(jù)挖掘分析,并在后期的發(fā)展過程中能根據(jù)業(yè)務需要靈活擴展硬件和系統(tǒng)軟件以增加處理能力和升級業(yè)務。蘇州軌道交通大數(shù)據(jù)中心項目就采用了該方案。
根據(jù)城市軌道交通大數(shù)據(jù)中心的業(yè)務特點設計的大數(shù)據(jù)中心系統(tǒng)邏輯框架如圖1所示。
圖1 城市軌道交通大數(shù)據(jù)中心系統(tǒng)邏輯架構圖Fig.1 Logic architecture of urban rail transit big data center system
城市軌道交通大數(shù)據(jù)中心系統(tǒng)包含采集層、存儲層、處理層、分析層和輸出層,各層功能主要如下:
1) 采集層:系統(tǒng)通過接口服務器與ATS、ISCS、LC、通信集中告警、CCHS線網(wǎng)清分中心等業(yè)務系統(tǒng)進行通信,對數(shù)據(jù)進行抽取、轉(zhuǎn)換和校驗。
2) 數(shù)據(jù)處理層:是大數(shù)據(jù)中心系統(tǒng)的核心,可將業(yè)務系統(tǒng)各類數(shù)據(jù)進行有效集成,滿足海量數(shù)據(jù)管理需求。
3) 數(shù)據(jù)分析層:按照行車、設備、能耗、客流等專業(yè)劃分進行數(shù)據(jù)挖掘、智能分析,從數(shù)據(jù)中發(fā)現(xiàn)有價值的信息,以此作為預測、決策的數(shù)據(jù)支撐。
4) 數(shù)據(jù)輸出層:主要由各開源大數(shù)據(jù)查詢引擎構成,對外提供數(shù)據(jù)庫查詢服務。
在蘇州和青島的軌道交通項目中,根據(jù)數(shù)據(jù)的流向,將大數(shù)據(jù)中心的處理架構設計為帖源層、基礎層、匯總層和集市層。數(shù)據(jù)處理平臺主要采用模塊化、高可擴展的技術,如并行計算、并行裝載、MPP數(shù)據(jù)庫、分布式存儲等。應用平臺獲取大數(shù)據(jù)中心集市層的數(shù)據(jù),展現(xiàn)方式采用基于J2EE的多層客戶/服務器模型。通過靈活的集成框架,不同的第三方插件、產(chǎn)品能夠有效地集成到數(shù)據(jù)處理平臺。數(shù)據(jù)處理的核心區(qū)域為基礎層、匯總層和集市層,其在整個數(shù)據(jù)架構中處于數(shù)據(jù)服務層,如圖2所示。
圖2 城市軌道交通大數(shù)據(jù)中心系統(tǒng)數(shù)據(jù)架構圖Fig.2 Data architecture diagram of urban rail transit big data center system
1) 貼源層:實現(xiàn)采集到的文件數(shù)據(jù)到數(shù)據(jù)倉庫的映射,為基礎層數(shù)據(jù)的加工做好準備。
2) 基礎層:是數(shù)據(jù)服務層中最重要的一個區(qū)域,按照數(shù)據(jù)標準的要求對貼源層數(shù)據(jù)進行統(tǒng)一加工和整合,存儲明細粒度的歷史數(shù)據(jù)區(qū)域,可為各個業(yè)務部門的不同業(yè)務需求提供一致規(guī)范的數(shù)據(jù)。同時,基礎層數(shù)據(jù)可作為匯總層、集市層的數(shù)據(jù)源,并可直接向高級數(shù)據(jù)分析人員開放,進行深度靈活查詢、數(shù)據(jù)挖掘和數(shù)據(jù)分析。
3) 匯總層和集市層:其數(shù)據(jù)是提供面向需求應用的、提供共享數(shù)據(jù)訪問服務的公共數(shù)據(jù)。其數(shù)據(jù)流向是從基礎層抽取數(shù)據(jù),經(jīng)過有針對性匯總加工后,滿足上游應用的數(shù)據(jù)展示需求。
為優(yōu)化數(shù)據(jù)處理效率,將數(shù)據(jù)處理細分為實時數(shù)據(jù)流處理和離線數(shù)據(jù)流處理。對不同的數(shù)據(jù)流,根據(jù)其特點進行優(yōu)化設計,利用數(shù)據(jù)庫中不同的組件進行數(shù)據(jù)處理。如:對于實時數(shù)據(jù),是采用kafka的方式將數(shù)據(jù)發(fā)送到處理層,再存儲至Redis(一種數(shù)據(jù)庫)內(nèi)存庫;對于離線數(shù)據(jù),是先將數(shù)據(jù)存入HDFS,經(jīng)大數(shù)據(jù)處理程序處理后再存入MPP數(shù)據(jù)庫。
為提升任務管理的效率,考慮充分利用分布式系統(tǒng)的相關功能,如Hadoop中的Map/Reduce可以把一個任務分解為很多可以并行化處理的子任務,這些子任務被分配到不同服務器上進行并行計算,最后再把結果聚合到一起形成一個最終結果。
大數(shù)據(jù)分析的重點是對行車數(shù)據(jù)、客流數(shù)據(jù)、設備數(shù)據(jù)和能耗數(shù)據(jù)進行分析。
1) 行車大數(shù)據(jù)分析:主要功能是行車指標體系優(yōu)化分析、運輸計劃調(diào)整分析、分時開行對數(shù)表分析、首末班車開行銜接分析、行車交路方案分析和停車方案分析。
2) 客流大數(shù)據(jù)分析:該項數(shù)據(jù)分析主要用于降低人均運輸成本、引流提高運營收入、降低設備故障影響、大修計劃安全評估、事故搶修及綜合調(diào)度、應急故障方案、高峰集散方案、一日組織方案、特殊保障組織方案、降低建設成本、乘客行為分析與公共安全分析等方面。
3) 設備大數(shù)據(jù)分析:主要功能是可靠度分析、故障統(tǒng)計與回溯、智能維保、設備知識圖譜分析和故障原因挖掘。
4) 能耗大數(shù)據(jù)分析:主要功能是空調(diào)通風能耗分析、制冷系統(tǒng)能耗分析、牽引能耗分析、照明能耗分析、電梯能耗分析和能耗預測。
未來,大數(shù)據(jù)挖掘的可能發(fā)展方向為多專業(yè)相關性分析、客流預測、設備維修周期、狀態(tài)監(jiān)測和趨勢預測等。
1) 制定數(shù)據(jù)源接口標準。大數(shù)據(jù)中心的數(shù)據(jù)來源于各條線路的各專業(yè)系統(tǒng),連接、開發(fā)各專業(yè)間的接口和通信中間件十分重要。對于數(shù)據(jù)源的接口標準,建議在數(shù)據(jù)中心項目建設開始階段就制定完成。
2) 保證數(shù)據(jù)的安全性。大數(shù)據(jù)中心是城市軌道交通的上層系統(tǒng),有些城市甚至肩負著連接外部政府及互聯(lián)網(wǎng)的重任,大數(shù)據(jù)中心系統(tǒng)的安全性至關重要。建議符合信息網(wǎng)絡安全等保三級要求。在系統(tǒng)設計初期,建議請專業(yè)的信息安全咨詢單位評估系統(tǒng)安全性,并嚴格按信息安全標準進行建設。
本文分析了Hadoop+Mpp技術架構的優(yōu)缺點。基于蘇州軌道交通大數(shù)據(jù)中心項目的實踐經(jīng)驗,分析了大數(shù)據(jù)中心的技術方案。蘇州軌道交通的項目實踐表明,基于Hadoop+Mpp架構的大數(shù)據(jù)中心建設方案能夠達到預期效果。