999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于大數據技術的鐵路工務檢測數據平臺方案研究

2023-06-25 23:37:59許丹亞歐陽慎齊晨虹朱志尹文志
電腦知識與技術 2023年13期
關鍵詞:大數據鐵路

許丹亞 歐陽慎 齊晨虹 朱志 尹文志

摘要:當前,普速鐵路故障點檢測手段多樣,各種檢測數據的類型多樣,數據量大,查詢分析邏輯復雜。不同于以往基于關系型數據庫的數據處理,方案基于Hadoop大數據集群,采用低代碼的形式和多種數據處理工具,設計實現工務數據同步、存儲、查詢、共享流程,降低了數據存儲成本,提高了數據查詢效率。同時,有助于后續其他業務系統的海量數據開發流程優化,為鐵路各項業務提供穩定、高效數據處理方案。

關鍵詞:大數據;Phoenix;DataX;鐵路;Hadoop

中圖分類號:TP391? ? ? ? 文獻標識碼:A

文章編號:1009-3044(2023)13-0076-03

開放科學(資源服務)標識碼(OSID)

1 引言

我國鐵路系統正在進入大數據的時代,每天多個業務系統將產生海量數據,且數據量逐年增加[1-3]。近年來,中國鐵路鄭州局集團公司普速鐵路故障點檢測手段多樣,包括晃車儀、軌檢小車、人工添乘等。工務各種監測數據體量龐大,數據類型復雜,業務查詢頻繁,對后續海量數據的深度挖掘帶來了一定困難。特別是,晃車儀數據主要依靠人工分析,鄭州局全局192臺晃車儀設備,每天產生幾萬條數據。因此,急需建立工務數據平臺,優化工務各種檢測監測數據的存儲、分析、共享流程。

當前,有不少學者對鐵路業務的大數據應用進行研究。衛錚錚等人,研究了客運大數據平臺的鐵路客流預測系統,集成了各類客流預測算法模型,為各類客運業務分析人員提供定制化客流預測數據[4]。王沛然等人,研究了鐵路數據服務平臺存儲架構設計與應用[5]。王萬齊等人,研究了京張高鐵運營安全大數據平臺設計及關鍵技術,對京張高鐵安全數據共享共用、安全管理和安全預警能力提升,具有參考意義[6]。廉小親等人,研究了面向建設期鐵路大數據的分級存儲方法,有效地對鐵路建設期大數據進行存儲級別判定,實現了面向建設期鐵路大數據的分級存儲[7]。

面對工務檢測數據的數據量大、數據接入復雜、數據查詢分析復雜等問題,常用的數據流程設計方案通常以軟件代碼開發的形式接入數據,采用關系型數據庫實現對多種數據的存儲和查詢。但這種方案在應對超過千萬級數據量時,往往會出現查詢效率低下、存儲成本高等問題。因此,本文以低代碼的形式,基于Hadoop大數據集群和多種數據同步工具,設計并實現了工務大數據平臺,打通數據同步與清洗、數據存儲與查詢、數據共享等數據處理流程,優化了數據處理手段,降低了數據存儲成本,提高了數據查詢效率。

2 總體方案設計

當前工務車載分析系統可接入的數據源,種類多、總量大、查詢需求復雜,具體數據如下:

1) 數據種類多,同步情況不同

工務檢測數據種類多,當前可接入的數據包括,晃車數據、軌檢超限大值、便攜添乘、軌檢小車、人工添乘主表、人工添乘從表等。晃車數據,即晃車儀產生的數據,目前以每月幾十萬條的速度增加,同步頻率為每半小時。軌檢超限大值、便攜添乘、軌檢小車、人工添乘主表、人工添乘從表等其他檢測監測數據,同步頻率為每天,每天增量從幾十到幾百不等。

2) 數據查詢需求復雜

針對各種檢測監測數據,當前查詢內容主要以檢測時間、線別、行別、里程范圍、垂直加速度、水平加速度等為主。在查詢的形式上,大多是針對單一數據內容查詢,也有少許聯表查詢的需求,這些聯表查詢往往業務邏輯復雜。

3) 數據量大

晃車數據的數據量為千萬級別,其他數據的總量在幾萬到幾百萬之間。隨著時間增加,各監測數據量在不斷增大,也增加了服務器存儲壓力。

根據以上數據特征,按照數據的處理流程,本文設計和實現了基于大數據技術的鐵路工務檢測數據平臺,主要包括數據同步、數據存儲與查詢、數據共享三部分,如圖1所示。

3 數據同步與清洗

通過DataX、Sqoop等數據同步工具,從物理和邏輯層次上,把各種監測數據集中匯聚,完成數據同步與清洗,為后續大數據應用開發提供數據支持。由于數據內容中單位名稱、線路名、里程值等存在不規范的現象,所以需要額外的數據清洗工作,規范數據內容。

首先,定時從遠端Oracle服務器采集監測數據。之后,根據數據的種類、同步頻率和查詢需求,將采集后的數據分為晃車儀數據和其他檢測數據。

對于軌檢超限大值、便攜添乘、人工添乘主表、人工添乘從表、軌檢小車等數據,數據總量最大約為百萬級,增量數據較小。采用現有數據同步工具DataX,將遠端Oracle數據庫同步到本地MySQL中,并設置定時增量數據導入任務[8]。DataX是阿里巴巴集團內被廣泛使用的離線數據同步工具/平臺,可實現包括MySQL、Oracle、HDFS、Hive等各種異構數據源之間高效的數據同步功能。同時可集成插件,對同步的數據進行定制化開發,完成數據清洗功能。

對于晃車儀數據,總量較大,為千萬級,且隨時在增加。所以,數據同步分為全量同步和增量同步。全量同步,是將過去五年內所有數據一次性導入。這種操作較為耗時,且校驗數據完整性復雜。增量同步是隨著時間變化,將新增數據同步到本地數據服務器中。同時,需要做到實時同步,頻率較高,而遠端數據庫中新增數據的時間和數量不固定。另外,數據內容中存在單位名稱、線路名稱等不規范情況,需要在接入時進行數據清洗操作。

根據晃車數據的數據量大和查詢復雜的特點,方便設計后續存儲和查詢方案,即將晃車數據存儲至Hadoop大數據平臺,使用HBase上層查詢引擎Phoenix提升查詢速度。故,在接入全量晃車數據時,使用Phoenix組件自帶lib庫的現有數據導入工具CsvBulkLoadTool,底層執行分布式MapReduce任務并行導入,并同時對Phoenix二級索引進行更新。經測試,Phoenix MR方式導入一千七百萬數據耗時10min左右,可快速導入大量數據,并保證數據的完整性。對于增量的晃車數據導入,采用數據同步工具DataX,定時獲取某個時間段內增量數據插入到大數據集群中,并且在插入到集群之前,集成數據清洗插件Transformer,定制化轉換數據內容。

4 數據存儲與查詢

對于軌檢超限大值、便攜添乘、人工添乘主表、人工添乘從表、軌檢小車等檢測數據,數據本身總量約為百萬級,增量數據較小,采用MySQL存儲,提供查詢服務。

對于晃車數據,總量為千萬級,增量相對較大。傳統的關系型數據庫MySQL難以支持數據的存儲,后期維護也越來越復雜,急需能夠存儲大量數據且查詢速度快的數據庫。因此,適合采用分布式大數據集群存儲。HBase底層應用分布式文件系統,在處理龐大表上十分有優勢。由于HBase是分布式存儲,為了優化存儲性能和后續查詢性能,防止數據傾斜問題,本文采用預分區HexStringSplit算法,根據Rowkey編碼,HBase也會通過算法將其分到不同的Region,實現均勻分布,避免熱點問題。

HBase本身是列存儲,僅能查詢單個字段值,不能滿足業務系統對一條數據所有字段的詳細查詢需求,而Phoenix可將多列數據聚合為行,同時查詢出多個字段值,使用體驗上和關系型數據庫類似。Phoenix是一個開源的HBase SQL層,支持二級索引、事務以及多種SQL層優化。二級索引可大幅度提升數據查詢速度。

在創建索引時,根據業務查詢需求,將常用的查詢字段,包括檢測時間、線編號、行別等,加入索引列中。同時,需要使用include語法,將其他未在索引中的字段包含[9]。之后,在查詢過程中即可包含所有字段,滿足對詳細數據的查詢需求。隨著Phoenix表中數據持續增加,創建新的索引往往耗費大量時間。索引的底層原理仍是通過HBase特性,建立數據表,表的key由多個索引字段構成,value是對應數據的rowkey。因此,隨著數據量的增加,索引的存儲量也會增加。如果創建索引的時間超過Phoenix客戶端的固定時間,將出現創建超時的問題。在后續使用中,如果需要創建其他業務相關的索引時,可以通過Phoenix的lib庫中IndexTool工具,執行Mapreduce任務,創建異步索引。另外,在使用Phoenix提高查詢效率時,需要注意時間類型的時區問題。Phoenix的數據類型默認時區是UTC,而日常多用GMT+8時區。在具體使用時,需要進行時區的轉換操作。

為了進一步提升查詢性能,根據HBase運行原理,進行修改HBase部分配置。對于HBase的Master,最大內存設置為當前機器內存的60%左右,最小設置為2G即可滿足運行需求。對于HBase的RegionServer,內存設置為服務器內存的50%~70%。對于HBase的HFile,設置hfile.block.cache.size為0.5甚至0.6。同時參考hbase.regionserver.global.memstore.upperlimit,如果兩值加起來超過80%~90%,會有內存溢出的風險。

5 數據共享

對于軌檢超限大值、便攜添乘、人工添乘主表、人工添乘從表、軌檢小車等檢測數據,數據存儲在MySQL中,直接通過MySQL查詢,使用JDBC連接共享至下游工務車載數據分析業務系統即可。

對于晃車數據,存儲于大數據集群中,并通過HBase上層組件Phoenix優化查詢。在數據共享時,雖然Phoenix提供通過JDBC連接的形式訪問數據,但是,這種方式功能不夠全面,多個系統之間集成交互困難,也不具備權限驗證功能。因此,采用HTTP接口形式,可以較好地解決不同系統之間的交互需求。在傳輸數據時,采用POST方法而不是GET方法,對傳輸數據內容的大小更寬容。

由于查詢條件不固定,如果根據不同的查詢請求開發不同的接口,接口不具有靈活性,開發周期長,后續擴展性差。所以,參考常用持久層框架MyBatis,將通用查詢功能總結為三種,查詢所有詳細信息list、查詢分頁信息page、和查詢數據總量count,并將這三種功能開放為3個訪問接口。

在傳遞查詢參數上,本文封裝了查詢參數。查詢參數內部包括查詢屬性和分頁屬性。查詢屬性中可包含多個查詢條件。每個查詢條件包括查詢字段、查詢關系、查詢數值。分頁屬性包括頁面大小和頁碼。因此,根據查詢參數,即可組合多種查詢條件,滿足不同需求。

針對具有復雜業務邏輯的聯表查詢,需要額外的設計方式。雖然Phoenix本身提供聯表查詢功能,但是,在實際使用時發現Phoenix在聯表查詢時的一些缺陷。比如,聯表查詢的聯查條件不能為大于或者小于,只能是等于。隨著聯表查詢的復雜度增加,查詢效率也會隨之下降。因此,結合Phoenix索引查詢效率高的優點和Java內存處理快的優點,本方案根據實際業務邏輯,先從大數據集群中,通過索引,以毫秒級速度獲取單一表結構數據到內存中,然后,以代碼的形式,根據聯查條件,從內存中使用stream流篩選合適的數據。

6 應用結果分析

傳統的業務系統存儲數據時常用關系型數據庫,例如MySQL、Oracle等。為了提高查詢效率和緩解存儲壓力,本方案通過Phoenix組件,數據進行存儲、查詢、共享等流程。本章從存儲壓力和查詢性能兩個方面,對MySQL和Phoenix方式進行對比。

在存儲層面上,對于存儲相同數據量的晃車數據,使用MySQL存儲容量為10.35GB,包含數據6.7GB,索引3.65GB。使用HBase存儲容量為10.2GB,包含數據5.4GB,索引4.79GB。其中,HBase中的數據存儲在HDFS中,副本為3。對于相同的數據,采用HBase存儲容量略小于MySQL存儲容量;采用HBase存儲數據三重備份,容災性更強。

在查詢性能上,使用4個測試用例,即根據里程范圍查詢、根據報警級別查詢、根據報警值范圍查詢、根據線路查詢,分別測試查詢所有明細數據list、查詢分頁數據page、查詢數據總量count的時間,如表1所示。對于MySQL,各個測試用例的查詢時間范圍在0到5秒。對于Phoenix二級索引,大部分測試用例的查詢時間在500毫秒內,可做到秒級響應。

另外,隨著數據量的增長,在MySQL中查詢數據的時間將逐漸增加,而在HBase中存儲的數據,借助Phoenix二級索引分布式查詢,查詢速度隨著數據量的增加仍然保持恒定。

可得出結論,相比MySQL,使用HBase分布式數據庫更適合存儲晃車數據,使用相同的存儲容量,HBase可存儲更多數據,同時三重備份,提高了數據容災性;使用Phoenix二級索引比MySQL索引平均提升查詢效率為5倍,最高提升18倍,最低提升1.14倍。

7 總結與展望

本文提出一種針對工務監測數據的數據同步與清洗、數據存儲與查詢、數據共享各流程的技術方案。在數據同步與清洗方面,采用數據集成工具DataX,將多種監測數據匯聚接入。對于軌檢超限大值、便攜添乘、人工添乘主表、人工添乘從表、軌檢小車表,使用關系型數據庫MySQL進行數據存儲和數據查詢。對于晃車數據,使用分布式存儲HDFS和HBase,使用Phoenix優化查詢效率,并針對查詢特點,設置數據共享HTTP接口。本文方案統一管理多種數據接入,降低了存儲壓力,提高了查詢效率。方案經驗證和試運行,使用便捷、性能出色,具有一定的應用和參考價值。

參考文獻:

[1] 何欣玲,劉宇,趙天,等.鐵路數據中心基礎設施管理系統的研究[J].鐵路計算機應用,2020,29(10):21-25.

[2] 馬小寧,李平,史天運.鐵路大數據應用體系架構研究[J].鐵路計算機應用,2016,25(9):7-13.

[3] 宋一凡,張玉福.鐵路運輸清算系統運行實踐研究[J].鐵道運輸與經濟,2013,35(9):38-42.

[4] 衛錚錚,單杏花,王洪業,等. 基于客運大數據平臺的鐵路客流預測系統[J]. 鐵路計算機應用,2022,31(1):37-42.

[5] 王沛然,馬小寧,王喆,等. 鐵路數據服務平臺存儲架構設計與應用[J]. 鐵路計算機應用, 2021,30(5):5.

[6] 王萬齊,劉軍,李平,等.京張高鐵運營安全大數據平臺設計及關鍵技術[J].鐵路計算機應用,2021,30(7):61-65.

[7] 廉小親,楊凱,程智博,等.面向建設期鐵路大數據的分級存儲方法研究[J].鐵路計算機應用,2022,31(2):17-22.

[8] 陳宇收.基于Datax的數據同步方案研究[J].電腦編程技巧與維護,2018(9):97-98,13.

[9] 劉文東. 基于Phoenix平臺的空間數據索引與查詢技術研究[D].西安電子科技大學,2018.

【通聯編輯:王力】

猜你喜歡
大數據鐵路
鐵路是怎么發明的
沿著中老鐵路一路向南
云南畫報(2021年12期)2021-03-08 00:50:54
鐵路通信線路維護體制改革探索與實踐
大數據環境下基于移動客戶端的傳統媒體轉型思路
新聞世界(2016年10期)2016-10-11 20:13:53
基于大數據背景下的智慧城市建設研究
科技視界(2016年20期)2016-09-29 10:53:22
數據+輿情:南方報業創新轉型提高服務能力的探索
中國記者(2016年6期)2016-08-26 12:36:20
無人機在鐵路工程建設中的應用與思考
GSM-R在鐵路通信中的應用
夢想在鐵路人心中流淌
中國火炬(2015年7期)2015-07-31 17:40:05
主站蜘蛛池模板: 美女潮喷出白浆在线观看视频| 一级毛片在线播放免费| 欧美高清国产| 婷婷色一二三区波多野衣| 专干老肥熟女视频网站| 色欲色欲久久综合网| 国产特级毛片| 中文字幕无码av专区久久| 亚洲中文无码av永久伊人| 国模私拍一区二区| 欧美一区精品| 一级成人a毛片免费播放| 四虎永久在线精品国产免费| 欧美成人午夜视频| 日韩精品毛片| 99国产精品免费观看视频| 女同久久精品国产99国| 天天综合色天天综合网| 精品综合久久久久久97超人该| 这里只有精品在线播放| 九九视频在线免费观看| 男人天堂亚洲天堂| 综合社区亚洲熟妇p| 在线免费亚洲无码视频| 欧美一区二区丝袜高跟鞋| 玩两个丰满老熟女久久网| 无码专区国产精品第一页| av在线5g无码天天| 亚洲a免费| 久久福利片| 国产精品毛片一区| 色网站在线视频| 精久久久久无码区中文字幕| 日韩在线观看网站| 日韩国产综合精选| 国产精品999在线| 欧美日韩中文国产va另类| 成人亚洲天堂| 尤物成AV人片在线观看| 国产新AV天堂| 99re经典视频在线| 亚洲永久免费网站| 日韩欧美国产三级| 欧美va亚洲va香蕉在线| 91精品视频播放| 欧美日韩va| 激情视频综合网| 成人在线综合| 97国产在线播放| 国产va欧美va在线观看| 亚洲一区第一页| 亚洲第一色网站| AV网站中文| 黄色三级毛片网站| 日韩中文欧美| 任我操在线视频| 亚洲三级a| 国产精品九九视频| 欧美日韩在线国产| 一区二区理伦视频| 亚洲天堂成人| 国产麻豆精品在线观看| 久久精品中文无码资源站| 欧美高清三区| 国产va在线观看| 久久99这里精品8国产| 欧美成人午夜在线全部免费| 免费人成网站在线观看欧美| 日韩免费毛片| 亚洲成人在线网| 人妻精品全国免费视频| 国产精品美人久久久久久AV| 色久综合在线| 精品国产欧美精品v| 色精品视频| 香蕉视频国产精品人| 欧美综合成人| 99热免费在线| 91破解版在线亚洲| www中文字幕在线观看| 久久黄色小视频| 日韩欧美中文字幕一本|