技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動(dòng)網(wǎng) > 技術(shù)頻道 > 應(yīng)用方案 > 深圳地鐵AFC系統(tǒng)數(shù)據(jù)庫的應(yīng)用優(yōu)化

深圳地鐵AFC系統(tǒng)數(shù)據(jù)庫的應(yīng)用優(yōu)化

時(shí)間:2009-01-16 14:44:58來源:ronggang

導(dǎo)語:?根據(jù)深圳地鐵AFC系統(tǒng)數(shù)據(jù)岸選型、設(shè)計(jì)、應(yīng)用的實(shí)際經(jīng)驗(yàn),闡述了AFC系統(tǒng)數(shù)據(jù)庫維護(hù)的實(shí)現(xiàn)方法和優(yōu)化策略,以達(dá)到AFC系統(tǒng)數(shù)據(jù)庫技術(shù)性能及穩(wěn)定性不斷提高的目的
摘 要:根據(jù)深圳地鐵AFC系統(tǒng)數(shù)據(jù)岸選型、設(shè)計(jì)、應(yīng)用的實(shí)際經(jīng)驗(yàn),闡述了AFC系統(tǒng)數(shù)據(jù)庫維護(hù)的實(shí)現(xiàn)方法和優(yōu)化策略,以達(dá)到AFC系統(tǒng)數(shù)據(jù)庫技術(shù)性能及穩(wěn)定性不斷提高的目的。 關(guān)健詞:自動(dòng)售檢票系統(tǒng);數(shù)據(jù)庫;應(yīng)用;維護(hù);優(yōu)化   深圳地鐵AFC系統(tǒng)是以非接觸式IC卡為車票介質(zhì),采用Oracle數(shù)據(jù)庫平臺(tái)的自動(dòng)售檢票系統(tǒng)。該系統(tǒng)能夠完成地鐵運(yùn)營的車票制作、售票、檢票、財(cái)務(wù)、統(tǒng)計(jì)、分析等全過程業(yè)務(wù)的實(shí)時(shí)管理工作。鑒于AFC系統(tǒng)與地鐵運(yùn)營的財(cái)務(wù)收益密切相關(guān),因此,AFC系統(tǒng)數(shù)據(jù)的安全性、實(shí)時(shí)性、完整性等需要得到足夠的重視。 1 概況   1.1數(shù)據(jù)庫選型   深圳地鐵AFC系統(tǒng)從設(shè)計(jì)之初就充分考慮到了AFC系統(tǒng)數(shù)據(jù)量、性能要求、可靠性要求以及性價(jià)比等各方面因素,選擇了大型數(shù)據(jù)庫管理系統(tǒng)Oracle9. i。同時(shí)為保證AFC數(shù)據(jù)的完整性和一致性,中心和車站采用一致的數(shù)據(jù)庫系統(tǒng)。從增加票務(wù)收益和提高服務(wù)質(zhì)量的角度,深圳地鐵AFC管理中心從多方面采取措施,確保數(shù)據(jù)庫系統(tǒng)安全、可靠運(yùn)行,并經(jīng)歷了多次大客流考驗(yàn)。到目前為止,深圳地鐵AFC系統(tǒng)數(shù)據(jù)庫一直保持穩(wěn)定運(yùn)行。   1.2數(shù)據(jù)庫設(shè)計(jì)   從業(yè)務(wù)和管理角度來進(jìn)行數(shù)據(jù)庫設(shè)計(jì),將數(shù)據(jù)按其內(nèi)容、用途和業(yè)務(wù)范圍不同分類。從數(shù)據(jù)的一致性來說,車站和中心要保持一樣的數(shù)據(jù)定義類型。深圳地鐵的數(shù)據(jù)類型具體分為下列幾類。   交易信息類:交易業(yè)務(wù)處理產(chǎn)生的各種信息。   系統(tǒng)維護(hù)類:輔助系統(tǒng)運(yùn)行和維護(hù)的各種參數(shù)信息、基礎(chǔ)配置信息和用于非業(yè)務(wù)類控制管理的信息。   運(yùn)營管理類:設(shè)備管理、運(yùn)營監(jiān)控、運(yùn)營維護(hù)等方面的信息。   票務(wù)管理類:票卡類型、票價(jià)設(shè)定、運(yùn)營點(diǎn)管理等方面的信息。   結(jié)算管理類:描述結(jié)算匯總和帳戶處理方面的信息。   庫存管理類:車票庫存調(diào)人、調(diào)出,票卡分類等方面的信息。 2 數(shù)據(jù)庫的維護(hù)   為確保深圳地鐵AFC系統(tǒng)長期、穩(wěn)定、高效的運(yùn)作,數(shù)據(jù)庫的維護(hù)是一項(xiàng)例行的、不可缺少的工作。為此,需要通過日常監(jiān)控、日常維護(hù)、備份等環(huán)節(jié)保證AFC系統(tǒng)數(shù)據(jù)庫處在良好運(yùn)作狀態(tài)之下。   2.1日常監(jiān)控  ?。?)驗(yàn)證數(shù)據(jù)庫及連通性。定時(shí)對(duì)數(shù)據(jù)庫的連接情況進(jìn)行檢查,查看與數(shù)據(jù)庫建立的會(huì)話數(shù)目是不是正常,如果建立了過多的連接,會(huì)消耗數(shù)據(jù)庫的資源。同時(shí),對(duì)一些“掛死”的連接,則需要手工進(jìn)行清理。  ?。?)查看警告日志。每天驗(yàn)證數(shù)據(jù)庫正在運(yùn)行l(wèi)istener并可以訪問應(yīng)用程序后,就應(yīng)該開始檢查數(shù)據(jù)庫日志(alert .log ),在查看alert.log的內(nèi)容時(shí),文件中的許多信息都是常規(guī)的,比如數(shù)據(jù)庫的啟動(dòng)、檢查點(diǎn)和日志文件的開關(guān)。需監(jiān)控這些消息出現(xiàn)的頻率,驗(yàn)證數(shù)據(jù)庫是否按照設(shè)計(jì)方案運(yùn)行。正常情況下,數(shù)據(jù)庫在alert.lo g中沒有大量的錯(cuò)誤,如果看到類似ORA-1031這樣的錯(cuò)誤消息,就需要徹底地調(diào)查.   2.2日常維護(hù)  ?。?)表空間的管理。通過Oracle數(shù)據(jù)庫提供的Oracle En-terprise Manager Console,檢查數(shù)據(jù)庫表空間的使用情況。包括創(chuàng)建表空間,向表空間中添加數(shù)據(jù)文件。隨著數(shù)據(jù)表和索引的增長監(jiān)控空閑空間,當(dāng)表空間利用率超過85%以上時(shí),通過擴(kuò)充數(shù)據(jù)文件的方法擴(kuò)大數(shù)據(jù)庫相應(yīng)的表空間。   (2)表空間空閑塊的維護(hù)。數(shù)據(jù)庫運(yùn)行了一段時(shí)間后,由于不斷地在表空間上創(chuàng)建和刪除對(duì)象,會(huì)在表空間上產(chǎn)生大量的碎片,這時(shí)要檢查表空間的碎片和可用空間情況,決定是否要對(duì)碎片進(jìn)行整理或?yàn)楸砜臻g增加數(shù)據(jù)文件。   (3)共享池的維護(hù)。通過Oracle數(shù)據(jù)庫提供的Oracle En-terprise Manager Console,檢查可用共享池的使用情況,當(dāng)可用百分比小于6%,業(yè)務(wù)處理速度會(huì)變慢,如單程票初始化機(jī)的處理速度會(huì)下降,這時(shí)需要通過刷新共享池的方法提高可用率。   2.3數(shù)據(jù)庫備份   為確保AFC系統(tǒng)數(shù)據(jù)完整,深圳地鐵制定了相應(yīng)的備份策略,嚴(yán)格做好數(shù)據(jù)庫備份工作。備份的數(shù)據(jù)為中心數(shù)據(jù)庫信息、中心RMAN數(shù)據(jù)庫信息、TSM數(shù)據(jù)庫信息、車站數(shù)據(jù)庫信息。備份介質(zhì)有明確標(biāo)識(shí),分類保管。   中心數(shù)據(jù)庫采用Tivoli軟件自動(dòng)備份,備份介質(zhì)為IBM LTO磁帶,備份內(nèi)容為全備份、增量備份和歸檔日志備份,全備份每周進(jìn)行一次,增量備份和歸檔日志備份每天進(jìn)行1次。   中心RMAN數(shù)據(jù)庫采用UNIX腳本自動(dòng)備份,中心TSM數(shù)據(jù)庫采用Tivoli軟件自動(dòng)備份,將一周的備份文件刻錄至光盤保存。   車站數(shù)據(jù)庫備份采用ORACLE邏輯備份(通過EXP命令),在車站服務(wù)器和車站監(jiān)控機(jī)上雙機(jī)互備。 3 數(shù)據(jù)庫的優(yōu)化   Oracle數(shù)據(jù)庫的性能優(yōu)化一直是數(shù)據(jù)庫管理中的重要環(huán)節(jié),也是最復(fù)雜的內(nèi)容之一。從數(shù)據(jù)庫技術(shù)角度而言,數(shù)據(jù)庫建立起來后,主要的工作內(nèi)容有:優(yōu)化、恢復(fù)和備份。要實(shí)現(xiàn)高效地運(yùn)行Oracle數(shù)據(jù)庫,優(yōu)化性能至少占了70%的工作量,主要包括優(yōu)化工具、存儲(chǔ)優(yōu)化、內(nèi)存調(diào)整、SQL優(yōu)化等多個(gè)方面。主要工作包括如下幾個(gè)部分。  ?。?)調(diào)整數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)。主要針對(duì)Oracle數(shù)據(jù)庫的分區(qū)功能,對(duì)于經(jīng)常訪問的數(shù)據(jù)庫表建立索引等。在數(shù)據(jù)庫的表空間劃分上,每個(gè)月占用一個(gè)獨(dú)立的分區(qū),每個(gè)分區(qū)占用一個(gè)表空間,一個(gè)分區(qū)又由多個(gè)數(shù)據(jù)文件組成,對(duì)索引的建立也是按月來分配的。  ?。?)調(diào)整應(yīng)用程序結(jié)構(gòu)設(shè)計(jì)。這一部分也是在深圳地鐵AFC應(yīng)用系統(tǒng)設(shè)計(jì)之前完成,深圳地鐵AFC應(yīng)用系統(tǒng)采用Client/Server體系結(jié)構(gòu),由數(shù)據(jù)庫應(yīng)用程序快速開發(fā)工具PowerBulider8設(shè)計(jì)開發(fā)完成。   (3)調(diào)整數(shù)據(jù)庫SQL語句。我們使用Oracle語句優(yōu)化器(Oracle Optimizer)和行鎖管理器( Row-level Manager)來調(diào)整優(yōu)化SQL語句。  ?。?)調(diào)整AFC中央主機(jī)內(nèi)存分配。內(nèi)存分配是在主機(jī)運(yùn)行過程中優(yōu)化配置的,主機(jī)根據(jù)數(shù)據(jù)庫運(yùn)行狀況調(diào)整數(shù)據(jù)庫系統(tǒng)全局區(qū)(SGA)的數(shù)據(jù)緩沖區(qū)、日志緩沖區(qū)和共享池的大小,還可以調(diào)整程序全局區(qū)(PGA)的大小。系統(tǒng)全局區(qū)(SGA)是Oracle數(shù)據(jù)庫的心臟,需要注意的是,SGA區(qū)不是越大越好,SGA區(qū)過大會(huì)占用操作系統(tǒng)使用的內(nèi)存而引起虛擬內(nèi)存的頁面交換,這樣反而會(huì)降低系統(tǒng)性能。   (5)調(diào)整硬盤I/O。將組成同一個(gè)表空間的數(shù)據(jù)文件放在不同的硬盤上,做到硬盤之間I/O負(fù)載均衡。  ?。?)調(diào)整操作系統(tǒng)參數(shù).Oracle數(shù)據(jù)庫服務(wù)器是整個(gè)系統(tǒng)的核心,它的性能高低直接影響整個(gè)系統(tǒng)的性能。深圳地鐵AFC系統(tǒng)主機(jī)運(yùn)行在Unix操作系統(tǒng)之上,盡可能使Oracle使用資源最大化,需調(diào)整Unix數(shù)據(jù)緩沖池的大小、每個(gè)進(jìn)程所能使用的內(nèi)存大小等參數(shù)。   深圳地鐵AFC系統(tǒng)數(shù)據(jù)庫備份管理方面,除了做日常維護(hù)備份外,在數(shù)據(jù)庫運(yùn)作過程中,我們還通過調(diào)整分區(qū),對(duì)經(jīng)常訪問的數(shù)據(jù)庫表建立索引,以及對(duì)業(yè)務(wù)流程完成后不再變動(dòng)的數(shù)據(jù)采用歸檔的方法來優(yōu)化數(shù)據(jù)庫。 4 數(shù)據(jù)庫應(yīng)用探索  ?。?)應(yīng)用數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)應(yīng)充分考慮通用性和易用性。著眼于深圳軌道交通發(fā)展一體化的長遠(yuǎn)眼光,深圳地鐵AFC系統(tǒng)數(shù)據(jù)庫從設(shè)計(jì)之初,幾個(gè)基本的數(shù)據(jù)庫表就采用和深圳通公司(現(xiàn)為“深圳通結(jié)算中心”,將發(fā)展為深圳城市“一卡通”的清分和結(jié)算中心)數(shù)據(jù)庫相同的數(shù)據(jù)類型劃分和表的設(shè)計(jì)。就當(dāng)時(shí)的情況而言,滿足了地鐵與“深圳通”數(shù)據(jù)互通和結(jié)算的基本要求,為實(shí)現(xiàn)深圳“一卡通”奠定了根基?,F(xiàn)在,深圳地鐵AFC系統(tǒng)的數(shù)據(jù)已能夠通過和“深圳通”連接的幀中繼專線進(jìn)行數(shù)據(jù)交換,為“深圳通”在多家運(yùn)營商之間清分、結(jié)算提供數(shù)據(jù)保證。   (2)從數(shù)據(jù)庫系統(tǒng)主機(jī)的安全工作角度,提高數(shù)據(jù)庫的安全性和容災(zāi)性。AFC系統(tǒng)的“生命線”就是數(shù)據(jù)庫的安全和數(shù)據(jù)的完整。深圳地鐵AFC系統(tǒng)除了做好數(shù)據(jù)庫冷、熱備份外,在保證數(shù)據(jù)庫系統(tǒng)主機(jī)安全運(yùn)作,容災(zāi)備份方面,我們采用2臺(tái)IBM P650小型機(jī)做主機(jī)互備,以及RAIDS冗余磁盤陣列體系。除此之外,還新增1臺(tái)IBM P520小型機(jī),專門用做2臺(tái)AFC系統(tǒng)主機(jī)的備用機(jī)。在非常必要之時(shí),這臺(tái)小型機(jī)可頂替AFC系統(tǒng)主機(jī)工作。   (3)對(duì)表和索引做定期的維護(hù)優(yōu)化,大表建立分區(qū)功能。將大表的歷史數(shù)據(jù)按年份歸檔,以騰出足夠的空間供數(shù)據(jù)庫服務(wù)器連續(xù)使用?,F(xiàn)在,我們已成功完成了2005年數(shù)據(jù)的歸檔工作,將深圳地鐵AFC系統(tǒng)2005年全年的數(shù)據(jù)導(dǎo)出到AFC主機(jī)的備機(jī)之上,使AFC系統(tǒng)主機(jī)上的硬盤空間得以重用,提升了主機(jī)和數(shù)據(jù)庫系統(tǒng)性能。   當(dāng)數(shù)據(jù)庫建立索引后,增加數(shù)據(jù)時(shí),也會(huì)增加索引數(shù)據(jù),但是刪除數(shù)據(jù)時(shí),數(shù)據(jù)庫不會(huì)自動(dòng)刪除該記錄的索引數(shù)據(jù)。所以對(duì)于插人刪除比較頻繁的表,如果使用一段時(shí)間后,索引數(shù)據(jù)中存在著很多無效的數(shù)據(jù),這樣會(huì)影響系統(tǒng)的性能。對(duì)于這種類型的表,我們要定期重建索引,提高索引的利用率。   對(duì)交易數(shù)據(jù)、索引等大表建立分區(qū)表,按月進(jìn)行數(shù)據(jù)劃分。每個(gè)月數(shù)據(jù)庫自動(dòng)生成并調(diào)用一個(gè)分區(qū)表,整個(gè)月的數(shù)據(jù)占用獨(dú)立的分區(qū)表,這樣從優(yōu)化數(shù)據(jù)庫結(jié)構(gòu)、提高數(shù)據(jù)庫訪問速度、便于管理、方便維護(hù)等角度來看都是可圈可點(diǎn)的。  ?。?)充分利用數(shù)據(jù)庫具有的高級(jí)功能,如Oracle的數(shù)據(jù)庫鏈接、同義詞、高級(jí)復(fù)制等。在Oracle數(shù)據(jù)庫應(yīng)用系統(tǒng)中,常常需要在各個(gè)數(shù)據(jù)庫之前進(jìn)行數(shù)據(jù)的傳輸和同步,有時(shí)也需要對(duì)某些表的數(shù)據(jù)進(jìn)行集中管理。這樣我們就可以充分利用數(shù)據(jù)庫的一些功能。如果需要服務(wù)器間同步數(shù)據(jù)時(shí),可以利用數(shù)據(jù)庫的高級(jí)復(fù)制功能。如果需要將某些表進(jìn)行集中管理,則可以使用數(shù)據(jù)庫連接和同義詞,將表存儲(chǔ)到某一數(shù)據(jù)庫,其余數(shù)據(jù)庫利用同義詞遠(yuǎn)程訪問列表。   (5)定期分析數(shù)據(jù)庫負(fù)荷,優(yōu)化消耗系統(tǒng)資源大的SQL語句。隨著深圳地鐵客流量的不斷增多,數(shù)據(jù)庫數(shù)據(jù)量也同比增大,每天數(shù)據(jù)庫新增近46萬筆數(shù)據(jù),數(shù)據(jù)庫的負(fù)荷增加,數(shù)據(jù)庫系統(tǒng)的性能問題就越來越突出。為此,我們分析了數(shù)據(jù)庫的負(fù)荷情況,發(fā)現(xiàn)瓶頸出現(xiàn)在系統(tǒng)I/O上,而對(duì)系統(tǒng)I/O“貢獻(xiàn)’最大的當(dāng)屬SQL語句。我們對(duì)一些性能相對(duì)低下、消耗系統(tǒng)資源大的SQL語句作優(yōu)化調(diào)整,權(quán)衡響應(yīng)時(shí)間和吞吐量之間的關(guān)系,盡可能減少磁盤獲取所需要數(shù)據(jù)的時(shí)間,達(dá)到了降低系統(tǒng)I/O的目的。  ?。?)對(duì)于安裝RAC的數(shù)據(jù)庫系統(tǒng),應(yīng)充分利用負(fù)載均衡功能。深圳地鐵一期的18個(gè)車站計(jì)算機(jī)系統(tǒng)都安裝有Oracle服務(wù)器端。在這些服務(wù)器上,如果不配置RAC使用負(fù)載均衡,就有可能使某臺(tái)服務(wù)器處于繁忙狀態(tài),而另一臺(tái)則一直在空閑中。這樣不但影響系統(tǒng)性能,而且也是系統(tǒng)安全的一個(gè)隱患。我們通過RAC配置服務(wù)器自動(dòng)使用負(fù)載均衡,來解決服務(wù)器間忙與不忙的問題。另外,對(duì)于某些個(gè)別的連接也可以手工指定使用的服務(wù)器。 5 結(jié)束語   從深圳地鐵開通前AFC系統(tǒng)數(shù)據(jù)庫投人使用,到現(xiàn)在耐年多的時(shí)間里,AFC系統(tǒng)信息管理部門深入分析AFC系統(tǒng)的實(shí)際運(yùn)行情況和特點(diǎn),建立和健全規(guī)章制度和強(qiáng)化執(zhí)行力度,總結(jié)出一套行之有效的數(shù)據(jù)庫應(yīng)用和優(yōu)化的辦法,AFC系統(tǒng)數(shù)據(jù)庫系統(tǒng)一直穩(wěn)定運(yùn)行,保持“零”宕機(jī)的記錄。 參考文獻(xiàn)   1.簡煉.深川地鐵智能收費(fèi)承統(tǒng)國產(chǎn)化創(chuàng)新,現(xiàn)代城市軟道交通,2005 (5)   2.薩師煊.數(shù)據(jù)庫系統(tǒng)棍論.北京:高等教育出版社,2000   3.Hector Carcia-Molina, Jeffrey D.,Ullman Jennifer Widom.數(shù)據(jù)庫系統(tǒng)實(shí)現(xiàn),北京:機(jī)械工業(yè)出版社,2002   4.王倫文,鐘子發(fā),張炙.ORACLE數(shù)據(jù)庫設(shè)計(jì)優(yōu)化與實(shí)踐.電訊技術(shù),2001(1)   5.楊德仁,馬曉燕.大型數(shù)據(jù)庫優(yōu)化設(shè)計(jì)方案.計(jì)算機(jī)系統(tǒng)應(yīng)用,2001 (5)

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:快速原型法在深圳地鐵AFC系統(tǒng)...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動(dòng)網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來源“中國傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號(hào) | 營業(yè)執(zhí)照證書 | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)