鄧麗賢孫啟民胡莉麗
(1.北京全路通信信號研究設(shè)計院集團(tuán)有限公司,北京 100070;
2.北京市高速鐵路運(yùn)行控制系統(tǒng)工程技術(shù)研究中心,北京 100070)
Oracle分區(qū)技術(shù)在C3無線接口監(jiān)測系統(tǒng)中的應(yīng)用
鄧麗賢1,2孫啟民1,2胡莉麗1,2
(1.北京全路通信信號研究設(shè)計院集團(tuán)有限公司,北京 100070;
2.北京市高速鐵路運(yùn)行控制系統(tǒng)工程技術(shù)研究中心,北京 100070)
CTCS-3無線接口監(jiān)測系統(tǒng)是用于監(jiān)測CTCS-3列控?zé)o線通信網(wǎng)絡(luò)的大數(shù)據(jù)處理系統(tǒng),采用Oracle分區(qū)技術(shù)可大幅提高數(shù)據(jù)的存儲和讀取效率,同時可顯著降低數(shù)據(jù)庫維護(hù)工作的復(fù)雜度。
CTCS-3;GSM-R;接口監(jiān)測系統(tǒng);數(shù)據(jù)庫分區(qū)
我國鐵路的高速客運(yùn)專線主要使用CTCS-3級(以下簡稱C3)列車運(yùn)行控制系統(tǒng),該系統(tǒng)基于GSM-R無線通信網(wǎng)絡(luò)承載。隨著客運(yùn)專線的不斷增加,GSM-R網(wǎng)絡(luò)日益增大, C3無線接口監(jiān)測系統(tǒng)(以下簡稱“接口監(jiān)測系統(tǒng)”)逐漸成為解決列車運(yùn)行過程中無線通信問題的重要手段之一。
接口監(jiān)測系統(tǒng)實(shí)時采集列車運(yùn)行過程中的無線通信數(shù)據(jù),并對數(shù)據(jù)進(jìn)行解析、存儲、分析,可及時發(fā)現(xiàn)列車運(yùn)行中存在的無線通信問題。接口監(jiān)測系統(tǒng)有助于C3無線通信問題的快速發(fā)現(xiàn)、及時定位和盡早解決,能夠保障C3列控系統(tǒng)的安全穩(wěn)定運(yùn)行。列車運(yùn)行過程中會產(chǎn)生大量的網(wǎng)絡(luò)信令和C3業(yè)務(wù)數(shù)據(jù),隨著客專線路和列車數(shù)量的增加,接口監(jiān)測系統(tǒng)的整體數(shù)據(jù)量也快速增長,對數(shù)據(jù)存儲、數(shù)據(jù)查詢和分析處理的速度都提出很大的挑戰(zhàn),因此,接口監(jiān)測系統(tǒng)需采用有效的技術(shù)手段來提高自身的數(shù)據(jù)處理能力。
2.1 系統(tǒng)概述
接口監(jiān)測系統(tǒng)主要對C3列控?zé)o線通信網(wǎng)絡(luò)中Igsm-r、Um、Abis、A、PRI等接口進(jìn)行監(jiān)測,具備接口數(shù)據(jù)采集、解析、關(guān)聯(lián)、存儲、查詢、故障分析及網(wǎng)絡(luò)質(zhì)量分析等基本功能,是GSM-R無線網(wǎng)絡(luò)維護(hù)人員進(jìn)行C3無線超時問題分析的主要工具。
2.2 系統(tǒng)結(jié)構(gòu)
接口監(jiān)測系統(tǒng)包括存儲、系統(tǒng)同步、網(wǎng)關(guān)、網(wǎng)管、綜合分析和各單接口監(jiān)測子系統(tǒng),其中單接口處理部分又包括Igsm-r接口、Um接口、Abis接口、A接口和PRI接口子系統(tǒng)。系統(tǒng)結(jié)構(gòu)如圖1所示。
存儲子系統(tǒng)軟件采用Oracle 10g數(shù)據(jù)庫軟件實(shí)現(xiàn),Oracle的控制文件、日志文件和數(shù)據(jù)文件分別存放在不同的磁盤分區(qū)。為保證接口監(jiān)測系統(tǒng)的數(shù)據(jù)處理效率,采用Oracle分區(qū)技術(shù)進(jìn)行各接口的數(shù)據(jù)表和索引的設(shè)計。
3.1 分區(qū)技術(shù)特點(diǎn)
圖1 接口監(jiān)測系統(tǒng)結(jié)構(gòu)圖
分區(qū)技術(shù)是Oracle數(shù)據(jù)庫為簡化對數(shù)據(jù)庫大表的管理而推出的一項(xiàng)重要技術(shù)[1],它是Oracle數(shù)據(jù)庫最重要、最成功的功能之一,可以提高數(shù)以萬計應(yīng)用程序的性能、可管理性和可用性[2]。分區(qū)包括數(shù)據(jù)表及索引的分區(qū),通過鍵值將數(shù)據(jù)表及索引劃分為可管理的獨(dú)立小塊,可以提高維護(hù)、備份、恢復(fù)數(shù)據(jù)庫的效率以及讀寫數(shù)據(jù)庫的性能。
Oracle數(shù)據(jù)庫分區(qū)對應(yīng)用程序來說是透明的,應(yīng)用程序可以不知道數(shù)據(jù)表已經(jīng)被分區(qū),在數(shù)據(jù)訪問過程中,分區(qū)表的訪問和普通表的訪問沒有任何區(qū)別,Oracle的查詢優(yōu)化器將自動處理分區(qū)表[3]。
3.2 分區(qū)技術(shù)應(yīng)用場景
當(dāng)數(shù)據(jù)庫中的數(shù)據(jù)滿足以下一類或幾類場景條件時,應(yīng)考慮使用分區(qū)技術(shù)[4],如表1所示。
表1 Oracle數(shù)據(jù)庫分區(qū)技術(shù)應(yīng)用場景分類列表
3.3 表分區(qū)及索引分區(qū)類型
1) 表分區(qū)
Oracle 10g提供4種主要的分區(qū)類型[5],范圍分區(qū)、散列分區(qū)、列表分區(qū)和組合分區(qū)(也叫“復(fù)合分區(qū)”),如表2所示。
表2 數(shù)據(jù)表分區(qū)類型列表
2) 索引分區(qū)
索引分區(qū)的類型有2種,本地分區(qū)索引和全局分區(qū)索引[5],如表3所示。
3.4 分區(qū)維護(hù)技術(shù)
Oracle分區(qū)維護(hù)操作主要包括分區(qū)表的建立;表分區(qū)的添加、刪除、拆分、合并、截斷;分區(qū)索引的建立和重建。
表3 索引分區(qū)類型列表
在進(jìn)行表分區(qū)的刪除、拆分等維護(hù)操作時,務(wù)必通過附加update global indexes語句更新全局分區(qū)索引;否則,將導(dǎo)致全局分區(qū)索引失效。
在進(jìn)行表分區(qū)的添加操作時,若當(dāng)前表包含本地分區(qū)索引,則Oracle軟件將自動在新加表分區(qū)所在的表空間中添加對應(yīng)的索引分區(qū)。如需將索引分區(qū)和表分區(qū)存放在不同的表空間以提高讀寫性能,可通過alter...rebuild...語句重建索引分區(qū),將索引分區(qū)重建到獨(dú)立的表空間。
4.1 接口監(jiān)測系統(tǒng)數(shù)據(jù)特征分析
接口監(jiān)測系統(tǒng)是一個典型的大數(shù)據(jù)處理系統(tǒng),系統(tǒng)數(shù)據(jù)具有以下特征。
1) 數(shù)據(jù)量大:系統(tǒng)中部分?jǐn)?shù)據(jù)表單日記錄數(shù)在2 000萬條以上,部分?jǐn)?shù)據(jù)表單日數(shù)據(jù)量在15 G左右。接口監(jiān)測系統(tǒng)技術(shù)條件要求單接口的數(shù)據(jù)存儲期限不小于3個月[6],故部分?jǐn)?shù)據(jù)表的數(shù)據(jù)量將達(dá)到TB級別。
2) 存儲時延?。喊l(fā)生C3無線超時故障后,需要第一時間對故障進(jìn)行分析,因此存儲時延要求較高。
3) 歷史數(shù)據(jù)多:GSM-R網(wǎng)絡(luò)維護(hù)人員一般僅使用最近一周的接口監(jiān)測數(shù)據(jù),且接口監(jiān)測系統(tǒng)的軟件僅對當(dāng)日數(shù)據(jù)進(jìn)行更新操作,因此接口監(jiān)測系統(tǒng)中絕大部分?jǐn)?shù)據(jù)為使用頻率較低的歷史數(shù)據(jù)。
4) 表結(jié)構(gòu)維護(hù)頻繁:系統(tǒng)配備的存儲空間有限,為了保證新數(shù)據(jù)能夠完整寫入數(shù)據(jù)庫,需要對數(shù)據(jù)表結(jié)構(gòu)及存儲空間進(jìn)行頻繁的周期性維護(hù)。
5) 可用性要求高:接口監(jiān)測系統(tǒng)是C3無線超時分析的主要工具,因此對系統(tǒng)的可用性提出很高的要求。
對比接口監(jiān)測系統(tǒng)的數(shù)據(jù)特征及分區(qū)技術(shù)的應(yīng)用場景,為了保證接口監(jiān)測系統(tǒng)Oracle數(shù)據(jù)庫軟件的長期穩(wěn)定運(yùn)行,Oracle分區(qū)技術(shù)是接口監(jiān)測系統(tǒng)的必然選擇。
4.2 分區(qū)技術(shù)應(yīng)用方案
在接口監(jiān)測系統(tǒng)中使用Oracle分區(qū)技術(shù)時,研發(fā)人員首先確定需要分區(qū)的表和選用的分區(qū)類型,再對選定的數(shù)據(jù)表進(jìn)行分區(qū)管理工作。在進(jìn)行數(shù)據(jù)查詢及統(tǒng)計分析時,要利用Oracle分區(qū)表和分區(qū)索引分而治之的特性,提高數(shù)據(jù)統(tǒng)計分析的速度。具體應(yīng)用方案如下。
1) 明確分區(qū)范圍
接口監(jiān)測系統(tǒng)中單接口的信令、業(yè)務(wù)數(shù)據(jù)及呼叫信息、綜合分析子系統(tǒng)的故障分析結(jié)果和無線質(zhì)量統(tǒng)計結(jié)果、網(wǎng)管子系統(tǒng)的告警數(shù)據(jù)和性能數(shù)據(jù)等數(shù)據(jù)表的單表數(shù)據(jù)量都很大,這些表中的數(shù)據(jù)需要保存較長的期限,故表中都有大量的歷史數(shù)據(jù),所以需要對相關(guān)的數(shù)據(jù)表進(jìn)行分區(qū)。
2) 選定分區(qū)類型
鐵路各業(yè)務(wù)系統(tǒng)在日常維護(hù)管理中,需向上級提供日報、周報或者月報用于進(jìn)行問題分析或故障統(tǒng)計工作,接口監(jiān)測系統(tǒng)也需要生成故障分析日報和故障統(tǒng)計月報。
接口監(jiān)測系統(tǒng)的故障分析工作以日為單位進(jìn)行,對數(shù)據(jù)進(jìn)行查詢和分析操作時也都指定明確的時間范圍,因此,對選定的需要分區(qū)的單接口的信令、業(yè)務(wù)數(shù)據(jù)和呼叫信息等數(shù)據(jù)表采用按日范圍分區(qū)的方式進(jìn)行分區(qū),對故障分析結(jié)果、無線質(zhì)量統(tǒng)計結(jié)果等數(shù)據(jù)表采用按月范圍分區(qū)的方式進(jìn)行分區(qū)。同時,為了提高查詢分析的速度,還選用了本地分區(qū)索引。
3) 分區(qū)管理
明確分區(qū)表范圍且選定分區(qū)類型后,需要創(chuàng)建分區(qū)表,并根據(jù)需要對分區(qū)表進(jìn)行周期性維護(hù)。接口監(jiān)測系統(tǒng)數(shù)據(jù)庫分區(qū)管理流程如圖2所示。
4) 分區(qū)使用規(guī)則
在進(jìn)行數(shù)據(jù)查詢和統(tǒng)計分析操作時,應(yīng)明確指明時間范圍,確保數(shù)據(jù)能夠命中所在的分區(qū)。另外,通過使用Oracle提示(Hint)強(qiáng)制修改默認(rèn)執(zhí)行計劃,提高分區(qū)索引的利用率,從而進(jìn)一步提高數(shù)據(jù)查詢語句的執(zhí)行速度。
4.3 表分區(qū)及索引分區(qū)的維護(hù)策略
圖2 接口監(jiān)測系統(tǒng)分區(qū)管理流程圖
接口監(jiān)測系統(tǒng)網(wǎng)管服務(wù)器軟件負(fù)責(zé)Oracle數(shù)據(jù)庫表分區(qū)及索引分區(qū)的自動維護(hù)。為了不影響在列車運(yùn)行繁忙階段大量接口監(jiān)測數(shù)據(jù)入庫和數(shù)據(jù)讀取的速度,網(wǎng)管服務(wù)器軟件在每天夜里的非繁忙時期進(jìn)行分區(qū)的添加及刪除處理。
Oracle分區(qū)技術(shù)的使用,可大幅提高接口監(jiān)測系統(tǒng)數(shù)據(jù)的存儲和讀取效率,同時顯著降低數(shù)據(jù)庫維護(hù)工作的復(fù)雜度。今后,各路局需要監(jiān)測的C3線路將持續(xù)增加,接口監(jiān)測系統(tǒng)需要處理的數(shù)據(jù)量也會不斷擴(kuò)大,Oracle分區(qū)技術(shù)的使用方案也將根據(jù)實(shí)際情況進(jìn)行不斷的優(yōu)化調(diào)整。
[1]申紅雪,劉育熙.Oracle10g表分區(qū)技術(shù)管理[J].科技信息, 2008(20):44-98.
[2]孫奕鵬.Oracle分區(qū)技術(shù)[J].福建電腦,2009(6):70-84.
[3]楊志彬.Oracle表分區(qū)管理[J].福建電腦,2007(8):119-169.
[4]王時繪,李正君.Oracle分區(qū)技術(shù)研究及實(shí)現(xiàn)[J].科技廣場,2011(9):86-89.
[5] Edward Whalen.基于Linux平臺的Oracle Database 10g管理[M].陳曙暉,譯.北京:清華大學(xué)出版社,2007.
[6]中華人民共和國鐵路運(yùn)輸局.運(yùn)基通信[2010]637號GSM-R數(shù)字移動通信網(wǎng)Abis、A、PRI接口監(jiān)測系統(tǒng)技術(shù)條件(V1.0)[S].
The CTCS-3 radio interface monitoring system is a large data processing system used to monitor the radio communication network of CTCS-3 train control system. Using the Oracle partition technology can greatly improve the data storage and reading effi ciency, and signifi cantly reduce the complexity of database maintenance work.
Chinese Train Control System Level 3; Global System for Mobile communications-Railway; interface monitoring system; database partition
10.3969/j.issn.1673-4440.2016.06.003
2015-12-10)