<listing id="vjp15"></listing><menuitem id="vjp15"></menuitem><var id="vjp15"></var><cite id="vjp15"></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><menuitem id="vjp15"></menuitem></video></cite>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<menuitem id="vjp15"><strike id="vjp15"></strike></menuitem>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"></strike></var>
<var id="vjp15"></var>
<var id="vjp15"></var>
<var id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></var>
<menuitem id="vjp15"></menuitem><cite id="vjp15"><video id="vjp15"></video></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></cite>
<var id="vjp15"></var>
<var id="vjp15"></var>
<menuitem id="vjp15"><span id="vjp15"><thead id="vjp15"></thead></span></menuitem>
<cite id="vjp15"><video id="vjp15"></video></cite>
<menuitem id="vjp15"></menuitem>

一種分布式hlr內存數據庫的實現方法

文檔序號:6651946閱讀:578來源:國知局
專利名稱:一種分布式hlr內存數據庫的實現方法
技術領域
本發明涉及PHS、GSM以及3G移動通信系統,尤其涉及歸屬位置寄存器HLR的數據庫采用分布式HLR內存數據庫、進行用戶數據管理的實現方法。
背景技術
在PHS、GSM以及3G移動通信系統中,用戶基本屬性、各種簽約數據以及位置信息全部保存在其歸屬位置寄存器HLR中,隨著PHS、GSM、CDMA和3G網絡不斷地融合,作為用戶數據中心的HLR的用戶數據容量迅速增長,同時對系統的處理能力也提出了很高的要求。出于性能上的考慮,目前HLR逐漸采用內存數據庫作為用戶的實時數據管理,商用數據庫作為用戶數據存儲的備份。
為描述簡單起見,本文約定相對于機架和單板,將計算機節點統一稱為后臺節點,將主處理機Hlr MP統一稱為前臺。
目前在整個核心網CN領域,采用內存數據庫的系統,大多數采用前臺單板級的內存數據庫模式,商用數據庫存儲用戶的簽約信息和動態數據的非時實備份,少部分系統沒有商用數據庫,直接采用數據文件加內存數據庫方式。圖1描述了WCDMA核心網CN中HLR前臺內存數據庫結構;前臺單板的內存數據庫采用簡單的數據按號段分割,具備了數據分布存儲功能;在現有的應用狀況下,前臺單板支持的內存數據庫有很大的局限性1.前臺單板的內存是目前前臺內存數據庫的最大限制,隨著用戶數據不斷上移核心網,HLR的用戶數據容量要求增長迅速,前臺單板存儲方式的內存數據庫將受單板數量擴展以及單板處理能力限制;2.前臺單板級的內存數據庫在數據存在訪問效率問題,目前內存數據庫訪問中存在前臺數據庫數據源二次定位的問題,首先在任意個單板上查詢數據所在單板,再將業務請求轉發往數據所在的單板,在數據歸屬的單板上將業務處理完成后再返回上一個轉發消息的單板,再由響應業務請求。導致業務消息轉發的次數增加。
整個核心網CN領域也存在少量后臺集中式內存數據庫的應用。圖2所示為WCDMA核心網CN中HLR后臺集中式內存數據庫結構;后臺節點配置為高端服務器,業務請求消息對內存數據庫的訪問集中在后臺服務器;這樣的架構好處是系統實現簡單,同時后臺服務器內存可以在較大范圍內擴充;但缺點是容量不能無限擴充,對于網絡融合、區域數據不斷融合帶來的容量激增無法滿足,同時單一服務器越來越顯示出性能上的瓶頸。
綜上,隨著用戶數據的融合和網絡側數據的不斷上移,目前的HLR用戶容量不斷增加,從原來的幾十萬用戶容量向百萬、千萬數量級增長,目前前臺內存數據庫將面臨容量問題,后臺集中式內存數據庫服務器將面臨著容量和性能兩方面問題。

發明內容
本發明的目的是提供一種分布式HLR內存數據庫的實現方法,用于提高HLR內存數據庫的容量和整體性能。
為了解決上述技術問題,本發明提供一種對分布式HLR內存數據庫的實現方法,它包括以下步驟(a)對HLR內存數據庫的數據按類型劃分為不同的類型,并按類型定義不同的內存數據庫服務器;(b)將數據庫服務器組分布在節點上;(c)為每一個類型的內存數據庫服務器定義各自的數據字典;(d)創建內存數據庫,內存數據庫表創建采用預先配置的表容量方式;內存數據庫表空間建立在共享內存上,支持多進程的訪問;不同進程通過內存數據庫的接口訪問內存數據庫服務器,內存數據庫接口通過共享內存ID來得到內存數據庫表空間的入口;(e)內存數據庫服務器根據相應的數據字典加載相關數據到內存表中;(f)為內存數據庫服務器建立表的本地訪問接口和遠程訪問接口;本地訪問接口用于訪問本節點上的內存數據庫服務器的表,遠程接口用于訪問主服務器上的表;如果本節點為要訪問的內存數據庫服務器主節點,遠程訪問接口就相當于本地訪問接口;(g)內存數據庫表的修改由該內存數據庫主服務器分發到其他備份節點同步更新。
上述方法與現有技術相比較,其特點在于,1.將整個內存數據庫按事先定義的類型拆分為多個內存數據庫服務器,這樣可以將一個大型內存數據庫拆分為多個規模相對較小的內存數據庫服務器來實現;2.內存數據庫服務器物理存放位置可以配置在子網任意節點上,通過這樣的處理便可以達到內存數據庫分布在不同節點的目的;3.多個內存數據庫服務器可以配置在一個節點上,這樣可以在特定情況下實現整個內存數據庫的集中處理;4.同一個內存數據庫服務器可以同時分布在不同節點上,這樣處理可以保證內存數據庫服務器有一個或多個備份服務器;5.內存數據庫采用數據字典動態生成數據庫表,同時可以在線修改內存數據庫表結構,通過對該表在線重新加載可以實現內存數據庫在線升級;6.內存數據庫服務器創建在共享內存上,可以實現不同進程對內存數據庫的互訪;7.內存數據庫接口采用本地訪問接口和遠程訪問接口兩種接口,對于內存數據庫服務器部在本地的訪問,可以在用遠程數據庫接口,實現在一個節點上訪問到完整的用戶數據,可以大大減少整個HLR系統中業務消息的分發;8.內存數據庫在后臺計算機節點上實現在操作系統上較單板實時操作系統相比可以采用多線程的訪問,對內存數據庫的訪問性能有很大的提高。


圖1是WCDMA核心網CN中使用HLR前臺內存數據庫架構圖;圖2是WCDMA核心網CN中使用HLR后臺內存數據庫架構圖;圖3是本發明實現的分布式HLR后臺內存數據庫在WCDMA核心網CN中應用的架構圖;圖4是本發明的分布式HLR后臺內存數據庫內部實現結構圖;圖5是本發明實現的分布式HLR后臺內存數據庫實現流程圖。
圖中, 虛線表示轉發消息方向;HlrMP表示Hlr主處理機,位于單板上;MAP Req表示MAP請求消息;MAP Ack表示MAP響應消息; 內存數據庫內部消息;內存DB1[2、3…n][]表示其中的成員為可選; 函數接口; 消息接口。
具體實施例方式
下面結合附圖和實施例,對本發明做詳細說明。
本發明所描述的一種對HLR內存數據庫分布式實現方法,根據需要將HLR內存數據庫按數據類型劃分為多個內存數據庫服務器,實現內存數據庫的多個類型數據庫服務器在多個后臺節點上的靈活分布或集中;同時可以實現不同的內存數據庫服務器在同一個節點上的集中。本發明實現的分布式HLR后臺內存數據庫總體結構如圖3所示,圖中描述內存DB1[2、3…N],[]表示其中成員為可選,在一個計算機節點上可以同時存在多個類型的內存數據庫服務器;同時一種類型的內存數據庫可以在多個計算機節點上存在,其中一個為主服務器,其他節點上的內促數據庫服務器為主服務器的備份,在特定情況下,某一備份內存數據庫服務器可以切換為該類型內存數據庫服務器的主服務器,原來的主服務器變為備份服務器。本發明實現的分布式HLR內存數據庫,在數據庫訪問上與原來的在單板上的簡單按號段分割開來的前臺數據庫相比,最大的優點就是數據訪問實現了整個HLR內存數據庫數據訪問的統一,在任意一個節點上都可以訪問到用戶數據,不需要將業務請求在節點間遷移;同時內存數據庫的類型劃分靈活,可以適應更寬的應用領域。
圖4描述了內存數據庫接口訪問的實現流程,其遠程接口訪問通過消息訪問,本地接口訪問通過函數接口訪問。根據特定的業務訪問類型,內存數據庫接口可以分別使用本地接口和遠程接口,本地接口訪問本地內存數據庫服務器上的數據,通常以靜態數據為主;對于一些準確性要求比較高變化的數據需要從主服務器讀取數據的可以采用遠程接口;遠程接口的實現采用消息方式向主服務器發送請求,由主服務器的內存庫接口處理請求并返回相應的結果。
參照圖5,它從總體上描述了分布式內存數據庫的實現過程,包括如下步驟步驟101,定義系統中的網絡節點信息,包括節點IP、網絡狀態。
步驟102,定義內存數據庫服務器組,用于存放系統劃分的內存數據庫服務器;將服務器組域網絡節點信息關聯;表示內存數據庫服務器在節點上分布的配置信息、每個內存數據庫服務器在節點上的分布信息。
步驟103,定義HLR內存數據庫的數據字典組包括內存數據庫的數據庫服務器類型、表定義信息、表字段信息;數據庫服務器類型包括信息為服務器ID(ServerID)、服務器名(ServerName);表定義信息包括表ID(TblId)、內存表名(mTblName)、商用數據庫表名(SrcTblName)、表容量(TblCapacity);表字段信息包括字段ID(FieldID)、字段名(mFieldName)、商用數據庫表字段名(SrcFieldName)、字段類型(FieldType)、字段長度(FieldLen)。步驟104,配置內存數據庫數據字典信息,需要對每一個類型的內存數據庫服務器的數據字典每個信息逐一配置。為實現動態生成內存數據庫,這一步由配置工具動態配置。
步驟105,內存數據庫核心層支持重新加載數據的請求,在配置內存數據庫字典完成后,可以要求是否發起重新加載內存數據庫;這一過程中可以根據要求重新加載某一類型內存數據庫服務器的全部表或單個表;在線重新加載過程實現了內存數據庫動態配置的功能。
步驟106,內存數據庫創建在共享內存上;按服務器類型逐個創建,先創建內存數據庫服務器信息,接下來根據數據字典定義的表創建數據庫表信息,再下一步創建單個表的表空間,表容量按照數據字典定義來創建;內存數據庫表的存儲方式采用B+TREE,也可以沿襲原有集中數據庫模式的存儲方式。
步驟107,內存數據庫加載按服務器類型逐個加載,每個內存數據庫服務器加載根據數據字典定義,從商用數據庫讀取需要加載表的信息,根據數據字典定義從商用數據庫表的字段中選擇定義的字段,將對應的字段數值加載到內存數據庫表中;字段在表中存儲采用基本數據類型按數據類型對齊方法即BYTE按一字節對齊,WORD按兩字節對齊,DWORD按四字節對齊;字符串根據長度存儲。循環執行該表加載直至該內存數據庫服務器定義的表全部加載完成;再進行下一個內存數據庫服務器的加載;到此為止分布式內存數據庫便得到創建。
步驟108,對分布式HLR內存數據庫的訪問通常定義默認訪問的數據源為主服務器,數據準確性以內存數據庫主服務器為準。在讀取用戶的靜態數據以及一些實時性要求不高的數據時,可以采用本地內存數據庫接口訪問本節點的內存數據庫,優點是反應迅速,缺點是與主服務器數據有一定的同步時延;對于實時要求高的數據采用遠程接口從內存數據庫主服務器讀取,不需要轉發MAP請求消息,業務流程得到簡化,同時內存數據庫內部接口處理速度得到提高。
本發明方法可以實現HLR內存數據庫在后臺多個計算機節點上分布,同時可以實現其中某一類型的內存數據庫服務器在多個節點上備份,同時還支持多個內存數據庫服務器在同一節點上共存。在內存數據庫訪問上采用本地和遠程數據庫接口可以減少業務消息轉發,簡化了現有的業務處理流程訪問內存數據庫的流程。對于用戶靜態數據訪問,如果當前節點為該類型的內存數據庫備份服務器,則不需要訪問該用戶數據內存數據庫主服務器,可以直接使用本地內存數據庫接口,訪問本地備份內存數據庫服務器,減少處理環節,提高處理效率。
權利要求
1.一種分布式HLR內存數據庫的實現方法,其特征在于,它包括如下步驟(a)對HLR內存數據庫的數據按類型劃分為不同的類型,并按類型定義不同的內存數據庫服務器;(b)將數據庫服務器組分布在節點上;(c)為每一個類型的內存數據庫服務器定義各自的數據字典;(d)創建內存數據庫,內存數據庫表創建采用預先配置的表容量方式;內存數據庫表空間建立在共享內存上,支持多進程的訪問;(e)各內存數據庫服務器按各自的數據字典定義加載指定數據;(f)為內存數據庫服務器建立表的本地訪問接口和遠程訪問接口;(g)內存數據庫表的修改由該內存數據庫主服務器分發到其他備份節點同步更新。
2.根據權利要求1所述的分布式HLR內存數據庫的實現方法,其特征在于,步驟(a)中數據類型按照用戶號碼分段劃分,或按照應用類型劃分。
3.根據權利要求2所述的分布式HLR內存數據庫的實現方法,其特征在于,所述應用類型分為PHS、GSM、CDMA或3G用戶類型。
4.根據權利要求1所述的分布式HLR內存數據庫的實現方法,其特征在于,步驟(b)中包括如下步驟(b1)每一個內存數據庫服務器根據需要放在不同的節點上;(b2)同一個內存數據庫服務器分布在多個節點上,定義其中一個節點為主服務器節點,其他節點為該類型內存數據庫備份服務器節點。
5.根據權利要求1所述的分布式HLR內存數據庫的實現方法,其特征在于,步驟(c)中數據字典包括表和每個表的字段。
6.根據權利要求5所述的分布式HLR內存數據庫的實現方法,其特征在于,所述表的字段定義包括字段商用數據庫名稱、內存數據庫名稱、類型、長度,內存表的字段為商用數據庫中表字段的子集,可以在線修改,修改后重新加載該表,新的修改便生效。
7.根據權利要求1所述的分布式HLR內存數據庫的實現方法,其特征在于,步驟(e)為內存數據庫上電加載包括(e1)根據該內存數據庫服務器的數據字典從商用數據庫選擇性加載;選擇數據字典定義的表,表中字段也根據數據字典選擇加載;(e2)根據本節點承載的內存數據庫服務器來加載,如果該節點上承載多個內存數據庫服務器,則按不同的內存數據庫服務器各自獨立從商用數據庫加載數據到內存數據庫中。
8.根據權利要求1所述的分布式HLR內存數據庫的實現方法,其特征在于,步驟(f)根據特定的業務訪問類型,內存數據庫接口可以分別使用本地接口和遠程接口,對于靜態數據訪問可以采用本地接口直接訪問本地內存數據庫服務器,減少向內存數據庫主服務器查詢的流程。
全文摘要
本發明提供一種對分布式HLR內存數據庫的實現方法,它包括a對HLR內存數據庫的數據劃分為不同的類型,并定義不同的內存數據庫服務器;b將數據庫服務器組分布在節點上;c為每個類型的內存數據庫服務器定義數據字典;d創建內存數據庫;e內存數據庫服務器根據相應的數據字典加載相關數據到內存表中;f為內存數據庫服務器建立表的本地訪問接口和遠程訪問接口;本地訪問接口用于訪問本節點上的內存數據庫服務器的表,遠程接口用于訪問主服務器上的表;g內存數據庫表的修改由該內存數據庫主服務器分發到其他備份節點同步更新。本發明方法可用于提高HLR內存數據庫的容量和整體性能。
文檔編號G06F17/30GK1992953SQ200510137459
公開日2007年7月4日 申請日期2005年12月30日 優先權日2005年12月30日
發明者戚萬權 申請人:中興通訊股份有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
韩国伦理电影