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

?

內(nèi)存數(shù)據(jù)庫在海事衛(wèi)星系統(tǒng)中的應(yīng)用研究

2016-11-30 01:51:00王建勛占開金
數(shù)字通信世界 2016年5期
關(guān)鍵詞:計(jì)費(fèi)日志海事

王建勛,占開金

(中國交通通信信息中心,北京 100011)

技術(shù)研究

內(nèi)存數(shù)據(jù)庫在海事衛(wèi)星系統(tǒng)中的應(yīng)用研究

王建勛,占開金

(中國交通通信信息中心,北京 100011)

本文探討研究了內(nèi)存數(shù)據(jù)庫的系統(tǒng)架構(gòu)、索引算法、日志管理、并發(fā)管理、事務(wù)處理、故障恢復(fù)等,說明了內(nèi)存數(shù)據(jù)庫如何在海事衛(wèi)星運(yùn)營系統(tǒng)中發(fā)揮作用。

內(nèi)存數(shù)據(jù)庫;索引;事務(wù);海事衛(wèi)星

1 引言

海事衛(wèi)星業(yè)務(wù)進(jìn)入高速發(fā)展時期,市場需求驅(qū)動市場部推出新的業(yè)務(wù)。本文針對海事衛(wèi)星系統(tǒng)面對的挑戰(zhàn),實(shí)時處理的要求,研究探討內(nèi)存數(shù)據(jù)庫(MDB)在該系統(tǒng)中的應(yīng)用,內(nèi)存數(shù)據(jù)庫應(yīng)該如何設(shè)計(jì)及其實(shí)際應(yīng)用和技術(shù)創(chuàng)新。內(nèi)存數(shù)據(jù)庫把數(shù)據(jù)全部或者當(dāng)前工作部分駐留在內(nèi)存中,消除了傳統(tǒng)磁盤數(shù)據(jù)庫系統(tǒng)中I/O瓶頸,極大地提高了系統(tǒng)的性能和吞吐量,從而滿足目前和將來系統(tǒng)面臨的業(yè)務(wù)數(shù)據(jù)挑戰(zhàn)。

2 內(nèi)存數(shù)據(jù)庫服務(wù)設(shè)計(jì)實(shí)現(xiàn)

2.1 系統(tǒng)架構(gòu)

MDB分為MDB框架和MDB業(yè)務(wù)庫,系統(tǒng)架構(gòu)如圖1所示。

圖1 MDB內(nèi)存數(shù)據(jù)庫系統(tǒng)架構(gòu)

框架獨(dú)立于業(yè)務(wù)邏輯,增加其復(fù)用性,通過接口能適配任何符合接口的MDB業(yè)務(wù)庫,并提供動態(tài)加載和卸載MDB業(yè)務(wù)庫的功能,能實(shí)現(xiàn)無縫加載和卸載。同時業(yè)務(wù)庫開發(fā)也將不再關(guān)心MDB基礎(chǔ)部分的實(shí)現(xiàn),能將主要開發(fā)放在業(yè)務(wù)相關(guān)的實(shí)現(xiàn)上。

2.1.1 框架

實(shí)現(xiàn)基礎(chǔ)的和業(yè)務(wù)無關(guān)的部分,管理系統(tǒng)資源,提供接口給MDB業(yè)務(wù)庫。

⊙ 管理MDB表、打開MDB、關(guān)閉MDB。

⊙ 理與客戶端通信的socket、共享內(nèi)存、信號等。

⊙ 響應(yīng)客戶端消息處理邏輯。

⊙ 管理MDB業(yè)務(wù)庫,支持動態(tài)的加載業(yè)務(wù)庫,卸載業(yè)務(wù)庫等。

⊙ 為MDB業(yè)務(wù)庫提供基本的數(shù)據(jù),并對數(shù)據(jù)做初始化,提供接口給業(yè)務(wù)庫查詢和更新這些數(shù)據(jù)。

⊙ 提供用戶鎖和進(jìn)程鎖資源,提供鎖操作接口,并監(jiān)控用戶鎖的超時信息,在線程退出時自動清除此線程占用的鎖。

2.1.2 業(yè)務(wù)庫

實(shí)現(xiàn)業(yè)務(wù)相關(guān)的部分,注冊支持的消息和業(yè)務(wù)類型,接受客戶端的應(yīng)答請求,對請求包做校驗(yàn),響應(yīng)業(yè)務(wù)庫的業(yè)務(wù)請求,并做應(yīng)答。一個業(yè)務(wù)庫在物理實(shí)現(xiàn)上是一個動態(tài)庫。

2.2 索引算法

主流的存儲引擎索引算法主要有btree和hash兩種。

(1)Hash索引優(yōu)缺點(diǎn)。優(yōu)點(diǎn)是檢索效率非常高,索引的檢索可以一次定位;缺點(diǎn)是不能使用范圍查詢,只能“=”,“IN”和“〈=〉”查詢。

(2)Btree優(yōu)缺點(diǎn)。優(yōu)點(diǎn)是適合范圍查詢,所有葉節(jié)點(diǎn)具有相同的深度,等于樹高h(yuǎn),其查找節(jié)點(diǎn)個數(shù)的漸進(jìn)復(fù)雜度為O(logdN),N為節(jié)點(diǎn)數(shù),d為出度;缺點(diǎn)是存儲空間過大,插入刪除平衡帶來性能的損耗。

Hash索引結(jié)構(gòu)的特殊性,其檢索效率非常高,索引的檢索可以一次定位,Hash索引的查詢效率要遠(yuǎn)高于BTree索引。由于海事衛(wèi)星運(yùn)營系統(tǒng)是針對用戶來說的,業(yè)務(wù)數(shù)據(jù)基本上圍繞用戶產(chǎn)生的,數(shù)據(jù)比較分散,用戶之間關(guān)聯(lián)不多,所以選擇hash作為存儲的索引算法。

2.3 日志管理

日志分系統(tǒng)日志、redo日志、undo日志三種。

(1)系統(tǒng)日志。主要記錄系統(tǒng)運(yùn)行日志、如通信日志、錯誤日志、接口日志等。

(2)Redo日志。記錄DML操作的數(shù)據(jù)、操作對象、操作方法,用于在系統(tǒng)恢復(fù)過程中,重做已提交事務(wù)。

(3)Undo日志。記錄DML操作前的數(shù)據(jù),用于在事務(wù)Abort時回退事務(wù)。

系統(tǒng)維護(hù)全局Redo日志序列,而不維護(hù)Undo日志,由事務(wù)自身維護(hù)私有的Redo日志和Undo日志。在事務(wù)提交時,依照事務(wù)提交的先后順序,同步Redo日志數(shù)據(jù)到硬盤,釋放Undo日志。

2.4 并發(fā)管理

并發(fā)度的多少一般和鎖的類度有關(guān),所以把鎖分等級處理,不同的操作用不同的鎖,一般DML用記錄鎖,這樣可以提高并發(fā)度。

(1)MDB記錄鎖類似于行鎖,支持對MDB表中記錄的關(guān)鍵字加鎖,防止該關(guān)鍵字相關(guān)的記錄進(jìn)行并發(fā)操作,提高程序的準(zhǔn)確性和安全性。

(2)進(jìn)程鎖是控制MDB整個進(jìn)程的鎖,在MDB作內(nèi)存數(shù)據(jù)備份點(diǎn)的時候,需要加上進(jìn)程鎖,阻止此時發(fā)生的業(yè)務(wù)交易。

(3)為了防止上面兩種鎖造成的死鎖,提供了鎖檢測工具,支持對記錄鎖和進(jìn)程鎖超時情況查詢,并提供解鎖服務(wù)。

2.5 事務(wù)處理

事務(wù)處理的隔離級別為ReadCommited,即讀提交,V為排他鎖,S為共享鎖,寫的時候?yàn)閂鎖,讀為S鎖。

SELECT的時候無法重復(fù)讀,即同一個事務(wù)中兩次執(zhí)行同樣的查詢語句,若在第一次與第二次查詢之間時間段,其他事務(wù)又剛好修改了其查詢的數(shù)據(jù)且提交了,則兩次讀到的數(shù)據(jù)不一致。

事務(wù)的ACID屬性只能通過限制數(shù)據(jù)庫的同步更改來實(shí)現(xiàn),從而通過對修改數(shù)據(jù)加鎖來實(shí)現(xiàn)。直到事務(wù)觸發(fā)COMMIT或ROLLBACK語句時鎖才釋放。缺點(diǎn)是后面的事務(wù)必須等前面的事務(wù)完成才能開始執(zhí)行,吞吐量隨著等待鎖釋放的時間增長而遞減,MDB通過行級鎖來最小化鎖競爭。這樣修改同一table里其他行的數(shù)據(jù)沒有限制,而且讀數(shù)據(jù)可以始終沒有等待。

事務(wù)設(shè)計(jì)原則是保證事務(wù)短??;鎖的行越少越好,時間越短越好。

2.6 故障恢復(fù)

故障恢復(fù)流程如圖2所示。

圖2 故障恢復(fù)

⊙ MDB(SLAVE)運(yùn)行為恢復(fù)模式。

⊙ 啟動MDB開始恢復(fù)。MDB在恢復(fù)時每次恢復(fù)完一批redo日志,redo目錄下面對應(yīng)的redo文件會被移動到back目錄。

⊙ MDB基礎(chǔ)庫redo目錄下的redo文件全部移到back目錄,同時查看基礎(chǔ)庫運(yùn)行的log日志,當(dāng)拋出讀取下一個redo日志文件不存在的異常時表明MDB已經(jīng)全部恢復(fù)完成。

⊙ 停止備MDB,自動將最新的MDB數(shù)據(jù)寫到磁盤文件。

⊙ 將備MDB產(chǎn)生的恢復(fù)后的MDB內(nèi)存映像文件拷貝到主MDB目錄,啟動既完成整個恢復(fù)過程。

3 海事衛(wèi)星業(yè)務(wù)運(yùn)營系統(tǒng)應(yīng)用

3.1 功能定位

海事衛(wèi)星業(yè)務(wù)運(yùn)營支撐系統(tǒng),主要有計(jì)費(fèi)、帳務(wù)處理、信用控制、帳務(wù)管理四個模塊,這幾個模塊都有很多數(shù)據(jù)操作,有實(shí)時的,有量大的,而這些數(shù)據(jù)基本上都是存儲在傳統(tǒng)數(shù)據(jù)庫里,嚴(yán)重影響運(yùn)營支撐系統(tǒng)的業(yè)務(wù)處理能力。所以會選擇部分比較重要的數(shù)據(jù)放在MDB里面,MDB會給這四個模塊提供增刪改查操作,MDB與四個模塊的交互結(jié)構(gòu)如圖3所示。

圖3 MDB功能定位

系統(tǒng)為計(jì)費(fèi)、帳務(wù)處理、帳務(wù)管理、信用管理模塊提供實(shí)時的數(shù)據(jù)操作。計(jì)費(fèi)從MDB中取用戶信息,實(shí)時更新帳單到MDB;帳務(wù)處理更新周期性費(fèi)用和一次性費(fèi)用;帳務(wù)管理查詢用戶實(shí)時帳單;信用管理也是查詢實(shí)時帳單。

(1)融合計(jì)費(fèi)本身實(shí)現(xiàn)了四個方面的融合:客戶的融合,即客戶品牌和付費(fèi)方式的融合;業(yè)務(wù)的融合,即實(shí)現(xiàn)跨業(yè)務(wù)、跨產(chǎn)品、跨客戶的產(chǎn)品捆綁、交叉優(yōu)惠,實(shí)現(xiàn)業(yè)務(wù)經(jīng)營與計(jì)費(fèi)策略的完整銜接;計(jì)費(fèi)模式的融合,即將計(jì)費(fèi)提速、OCS實(shí)現(xiàn)融合;最后則是計(jì)費(fèi)對象的融合,即預(yù)付費(fèi)和后付費(fèi)的融合統(tǒng)一。

(2)帳務(wù)處理是指根據(jù)三戶資料和訂購計(jì)劃計(jì)算出周期性費(fèi)用以及一次性費(fèi)用后,將其和批價費(fèi)用等費(fèi)用綜合優(yōu)惠后生成實(shí)時話費(fèi)和帳單的過程。

(3)帳務(wù)管理子系統(tǒng)主要處理用戶帳單生成后,帳單相關(guān)的查詢、打印、繳費(fèi)、銷帳以及用戶預(yù)先交納預(yù)存、押金的使用和管理等相關(guān)業(yè)務(wù)功能。

(4)信控管理子系統(tǒng)實(shí)時運(yùn)行,檢測用戶的話單批價、帳戶的實(shí)時繳費(fèi)銷帳、帳戶的信用度調(diào)整。當(dāng)以上信息變動時,信控管理子系統(tǒng)接受觸發(fā)話單或工單,根據(jù)帳戶的歷史欠費(fèi)、當(dāng)月實(shí)時話費(fèi)、帳戶信用額度、帳戶內(nèi)余額進(jìn)行計(jì)算。根據(jù)信控規(guī)則進(jìn)行催繳、開機(jī)、提醒等動作。

3.2 分析與應(yīng)用

海事衛(wèi)星業(yè)務(wù)運(yùn)營系統(tǒng)分為BILLING計(jì)費(fèi)系統(tǒng)和CRM系統(tǒng),BILLING需要實(shí)時處理大量的數(shù)據(jù),而CRM一般面向運(yùn)營人員,操作量不會太大,所以BILLING系統(tǒng)需要高效實(shí)時的性能。批價是計(jì)費(fèi)系統(tǒng)的重中之重,需要實(shí)時處理大量的話單,這個過程涉及到查詢用戶資料,用戶套餐等用戶信息,更新免費(fèi)資源和累計(jì)量。如果用傳統(tǒng)的數(shù)據(jù)庫,則處理比較慢,很難做到數(shù)據(jù)的實(shí)時更新,因此用內(nèi)存數(shù)據(jù)庫來管理這些數(shù)據(jù)。下面從數(shù)據(jù)選型和部署方式進(jìn)行詳細(xì)分析。

3.2.1 數(shù)據(jù)選型

把最關(guān)鍵的數(shù)據(jù)放到內(nèi)存中,這些數(shù)據(jù)增刪改頻次高,頻繁的IO讀寫,嚴(yán)重影響性能。三戶資料和帳務(wù)相關(guān)數(shù)據(jù),三戶查詢量特別的高,帳戶相關(guān)數(shù)據(jù)特別的多。所以這些數(shù)據(jù)都放入內(nèi)存,避免了頻繁的IO處理,提高了效率,有選擇地選取數(shù)據(jù),又節(jié)省了內(nèi)存。

3.2.2 部署方式

采用雙機(jī)熱備部署方式,實(shí)現(xiàn)了高可用和負(fù)載均衡。雙機(jī)數(shù)據(jù)通過日志同步,外部查詢對數(shù)據(jù)實(shí)時性要求不高的操作可以放在備機(jī)上,更新操作放在主機(jī)上。

3.3 性能指標(biāo)

海事衛(wèi)星應(yīng)用mdb后,處理能力有很大的提升,以下是性能測試數(shù)據(jù)。

主機(jī)環(huán)境:

HP-UX rx66003 B.11.31 U ia64 3822239629 unlimited-user license CPU 2 cores,4 logical processors per socket;Memory:16G。

測試性能數(shù)據(jù):數(shù)據(jù)插入效率為10w/s;8w/s的數(shù)據(jù)更新效率;據(jù)裝載平均加載速度110Mb/s;恢復(fù)速度平均每秒7w次事務(wù)。

3.4 應(yīng)用效果

采用內(nèi)存數(shù)據(jù)庫后,運(yùn)營數(shù)據(jù)得到實(shí)時的處理,批價可以實(shí)時的更新累計(jì)量和帳單,信控可以直接取得內(nèi)存數(shù)據(jù)庫中的實(shí)時話費(fèi)累計(jì)表中的數(shù)據(jù),完全實(shí)現(xiàn)實(shí)時預(yù)警、停機(jī)。對防欺詐、收入保障系統(tǒng)也有相當(dāng)大的好處,這樣能夠充分保證海事衛(wèi)星運(yùn)營商的切身利益。

4 結(jié)束語

內(nèi)存數(shù)據(jù)庫在海事衛(wèi)星的應(yīng)用,極大地提高海事衛(wèi)星運(yùn)營系統(tǒng)的處理能力,內(nèi)存數(shù)據(jù)庫,通過避開磁盤的耗時操作,內(nèi)存優(yōu)化的索引結(jié)構(gòu)快速的日志和恢復(fù),高并發(fā)的事務(wù)處理,達(dá)到了高性能的數(shù)據(jù)管理能力,低成本的基礎(chǔ)上大大提高系統(tǒng)的處理能力。大量的數(shù)據(jù)操作通過內(nèi)存數(shù)據(jù)庫集中管理,也增強(qiáng)了海事衛(wèi)星運(yùn)營系統(tǒng)的擴(kuò)展能,能夠滿足海事衛(wèi)星未來幾年的業(yè)務(wù)發(fā)展。

[1] 張曉偉.探討分布式內(nèi)存數(shù)據(jù)庫的設(shè)計(jì)與應(yīng)用[J].硅谷,2009(03)

[2] 王慧嬪.基于MMDB技術(shù)對電信計(jì)費(fèi)系統(tǒng)研究與實(shí)現(xiàn)的探討[J].科技資訊,2009(16)

[3] 王金華,江水,吳嫻,盧瑤,龍剛.輕量級內(nèi)存數(shù)據(jù)庫的研究[J].計(jì)算機(jī)工程,2008(S1)

[4] 王珊,肖艷芹,劉大為,覃雄派.內(nèi)存數(shù)據(jù)庫關(guān)鍵技術(shù)研究[J].計(jì)算機(jī)應(yīng)用,2007(10)

[5] 朱勇,張炯,沈軼.內(nèi)存數(shù)據(jù)庫在移動計(jì)費(fèi)系統(tǒng)中的應(yīng)用[J].現(xiàn)代機(jī)械,2007(05)

Reserch on the Application of RAM Database in the Inmarsat System

Wang Jianxun,Zhan Kaijin
(China Transport Telecommunications &Infomation Center,Beijing,100011)

System architecture,indexing algorithm,log management,concurrency management,transaction processing,fault recovery to explore other aspects of the study,and finally explain how to combine Inmarsat-memory database applications and operating systems in the role.

Memory Database;Index;Transaction;Maritime Satellite

10.3969/J.ISSN.1672-7274.2016.05.002

TN927+.2,TP392 文獻(xiàn)標(biāo)示碼:B

1672-7274(2016)05-0005-04

王建勛,男,1970年生,現(xiàn)任職于中國交通通信信息中心,研究方向?yàn)榻煌ㄐ畔⒒?/p>

占開金,男,1984年生,現(xiàn)任職于中國交通通信信息中心,研究方向?yàn)榻煌ㄐ畔⒒?/p>

猜你喜歡
計(jì)費(fèi)日志海事
出租車計(jì)費(fèi)的秘密
5G網(wǎng)絡(luò)獨(dú)立組網(wǎng)中融合計(jì)費(fèi)方案的研究
信息精要與海事掃描
水上消防(2021年5期)2022-01-18 05:33:42
一名老黨員的工作日志
華人時刊(2021年13期)2021-11-27 09:19:02
信息精要與海事掃描
水上消防(2021年3期)2021-08-21 03:12:22
信息精要與海事掃描
水上消防(2020年5期)2020-12-14 07:16:30
扶貧日志
心聲歌刊(2020年4期)2020-09-07 06:37:14
信息精要與海事掃描
水上消防(2020年3期)2020-07-25 02:36:32
生活中的分段計(jì)費(fèi)
游學(xué)日志
察隅县| 大石桥市| 乌拉特前旗| 塔河县| 西畴县| 新源县| 大竹县| 广元市| 井冈山市| 深水埗区| 瑞丽市| 海林市| 改则县| 西乌珠穆沁旗| 兴安县| 邛崃市| 寿宁县| 余庆县| 宣武区| 长宁区| 锦州市| 垣曲县| 钟祥市| 卢氏县| 瓮安县| 沙湾县| 清远市| 嵊泗县| 鹿泉市| 青铜峡市| 大埔区| 南乐县| 开鲁县| 永川市| 炉霍县| 扶余县| 白水县| 中宁县| 江川县| 清远市| 通城县|