一種集群配置裝置、一種更新數(shù)據(jù)的方法及裝置的制造方法
【專利摘要】本發(fā)明實施例公開了一種集群配置裝置、一種更新數(shù)據(jù)的方法及裝置,涉及通信技術領域,用以降低集群配置的成本,該集群配置裝置應用于智能網功能實體,所述智能網功能實體包括N個業(yè)務數(shù)據(jù)單元SDU,N為正整數(shù),該集群配置裝置包括配置單元;所述配置單元,用于配置多個智能業(yè)務中的每個智能業(yè)務對應的集群,一個智能業(yè)務對應的集群包括該智能業(yè)務對應的集群的集群方式以及該智能業(yè)務對應的集群中的SDU,其中,一個集群包括至少一個SDU,SDU與數(shù)據(jù)庫一一對應,所述N個SDU中的每個SDU屬于一個或多個集群。該裝置可以用于配置集群。
【專利說明】
一種集群配置裝置、一種更新數(shù)據(jù)的方法及裝置
技術領域
[0001] 本發(fā)明涉及通信技術領域,尤其涉及一種集群配置裝置、一種更新數(shù)據(jù)的方法及 裝置。
【背景技術】
[0002] 目前,下一代智能網(Next Generation Intelligent Network,簡稱NGIN)業(yè)務通 過對Oracle數(shù)據(jù)庫進行劃分可以實現(xiàn)2種方式的集群場景,一種是多個數(shù)據(jù)庫中的數(shù)據(jù)冗 余存放的高可用性集群;另一種是多個數(shù)據(jù)庫中的數(shù)據(jù)互補存放的負載均衡集群。
[0003]在實現(xiàn)2種方式的集群場景時,可以直接使用Oracle公司本身提供的Oracle cl us terware HA和Oracle LoadBa lance實現(xiàn)對數(shù)據(jù)庫的集群。但是,必須要購買Oracle clusterware HA和Oracle LoadBalance,增加了成本。并且,在使用Oracle clusterware HA或Oracle LoadBalance時,同一Oracle數(shù)據(jù)庫只能位于一個集群中,這樣會導致Oracle 數(shù)據(jù)庫的資源利用不充分。
【發(fā)明內容】
[0004] 本發(fā)明的實施例提供一種集群配置裝置、一種更新數(shù)據(jù)的方法及裝置,用以降低 集群配置的成本。
[0005] 為達到上述目的,本發(fā)明的實施例采用如下技術方案:
[0006] 第一方面,提供一種集群配置裝置,應用于智能網功能實體,所述智能網功能實體 包括N個SDU,N為正整數(shù),所述裝置包括:配置單元;所述配置單元,用于配置多個智能業(yè)務 中的每個智能業(yè)務對應的集群,一個智能業(yè)務對應的集群包括該智能業(yè)務對應的集群的集 群方式以及該智能業(yè)務對應的集群中的SDU,其中,一個集群包括至少一個SDU,SDU與數(shù)據(jù) 庫一一對應,所述N個SDU中的每個SDU屬于一個或多個集群。
[0007] 其中,SEE用于運行智能業(yè)務,同時負責解析呼叫消息,SDU為NGIN的一個組件,用 于處理有關智能業(yè)務的數(shù)據(jù)存儲,數(shù)據(jù)查詢,數(shù)據(jù)修改以及數(shù)據(jù)刪除的請求,并在該SDU對 應的數(shù)據(jù)庫中存儲數(shù)據(jù)、查詢數(shù)據(jù)、修改數(shù)據(jù)以及刪除數(shù)據(jù)。Oracle數(shù)據(jù)庫是一種關系型數(shù) 據(jù)庫,為客戶提供數(shù)據(jù)存儲和數(shù)據(jù)管理服務。
[0008] 本發(fā)明實施例提供的裝置,根據(jù)SDU與數(shù)據(jù)庫的對應關系,通過對SDU進行集群配 置,實現(xiàn)對數(shù)據(jù)庫的集群配置,這種方式不需要使用Oracle clusterware HA和Oracle LoadBalance,因此,可以節(jié)約Oracle軟件,降低集群配置的成本。同時,本發(fā)明實施例中的 SDU可以屬于多個集群,即該SDU對應的Oracle數(shù)據(jù)庫可以屬于多個集群,該情況下,同一數(shù) 據(jù)庫中可以存儲不同集群對應的智能業(yè)務的數(shù)據(jù),可以使得數(shù)據(jù)庫的資源利用更加充分。
[0009] 結合第一方面,在第一種可能的實現(xiàn)方式中,所述配置單元具體用于:確定所述多 個智能業(yè)務中的每個智能業(yè)務的可靠性要求,所述可靠性要求包括有高可靠性要求和無高 可靠性要求;當一個智能業(yè)務的可靠性要求為有高可靠性要求時,確定該智能業(yè)務對應的 集群的集群方式為高可用性,確定該智能業(yè)務對應的集群包括P個SDU,P大于該智能業(yè)務的 每秒試呼次數(shù)與數(shù)據(jù)庫每秒能夠承載的最高呼叫次數(shù)的比值向上取整后的值,P為正整數(shù); 當一個智能業(yè)務的可靠性要求為無高可靠性要求時,確定該智能業(yè)務對應的集群的集群方 式為負載均衡,確定Q個SDU,Q為該智能業(yè)務的每秒試呼次數(shù)與數(shù)據(jù)庫每秒能夠承載的最高 呼叫次數(shù)的比值向上取整后的值;根據(jù)該智能業(yè)務的用戶數(shù)為Q個SDU中的每個SDU分配用 戶數(shù),為Q個SDU分配的用戶數(shù)的總和為該智能業(yè)務的用戶數(shù),判斷所述Q個SDU中的每個SDU 對應的數(shù)據(jù)庫的每秒試呼次數(shù)是否均滿足預設條件,若是,確定所述Q個SDU為組成該智能 業(yè)務對應的集群的SDU,若否,令Q = Q+1,繼續(xù)根據(jù)該智能業(yè)務的用戶數(shù)為Q個SDU中的每個 SDU分配用戶數(shù),直至Q個SDU中的每個SDU對應的數(shù)據(jù)庫的每秒試呼次數(shù)均滿足預設條件, 一個數(shù)據(jù)庫的每秒試呼次數(shù)是指根據(jù)為該數(shù)據(jù)庫對應的SDU分配的用戶計算得到的試呼次 數(shù),一個數(shù)據(jù)庫的每秒試呼次數(shù)滿足預設條件是指一個數(shù)據(jù)庫的每秒試呼次數(shù)小于該數(shù)據(jù) 庫每秒能夠承載的最高呼叫次數(shù),Q為正整數(shù)。
[0010] 結合第一方面,在第二種可能的實現(xiàn)方式中,所述裝置還包括:獲取單元,用于獲 取配置信息,所述配置信息為所述多個智能業(yè)務中的每個智能業(yè)務對應的集群的配置信 息;所述配置單元,具體用于根據(jù)所述配置信息配置所述多個智能業(yè)務中的每個智能業(yè)務 對應的集群。
[0011] 結合第一方面、第一方面的第一種可能的實現(xiàn)方式或第二種可能的實現(xiàn)方式,在 第三種可能的實現(xiàn)方式中,所述配置單元還用于:當一個智能業(yè)務對應的集群為負載均衡 集群時,為該負載均衡集群中的預設的SDU配置預設的號段,所述預設的SDU對應的數(shù)據(jù)庫 用于存儲使用所述預設的號段的用戶的該智能業(yè)務的數(shù)據(jù)。
[0012] 第二方面,提供一種更新數(shù)據(jù)的方法,應用于智能網功能實體,所述智能網功能實 體包括N個SDU和Μ個SEE,所述N個SDU組成多個集群,一個集群包括至少一個SDU,SDU與數(shù)據(jù) 庫--對應,所述N個SDU中的每個SDU屬于一個或多個集群,N、M均為正整數(shù),所述方法包 括:所述SEE接收用戶發(fā)送的智能業(yè)務的業(yè)務請求;所述SEE根據(jù)所述業(yè)務請求中攜帶的所 述智能業(yè)務的業(yè)務標識確定所述智能業(yè)務對應的集群,所述智能業(yè)務對應的集群包括所述 智能業(yè)務對應的集群的集群方式以及所述智能業(yè)務對應的集群中的SDU;所述SEE根據(jù)所述 智能業(yè)務對應的集群的集群方式在所述智能業(yè)務對應的集群中的SDU對應的數(shù)據(jù)庫中更新 與所述智能業(yè)務相關的數(shù)據(jù)。
[0013] 其中,SEE用于運行智能業(yè)務,同時負責解析呼叫消息,SDU為NGIN的一個組件,用 于處理有關智能業(yè)務的數(shù)據(jù)存儲,數(shù)據(jù)查詢,數(shù)據(jù)修改以及數(shù)據(jù)刪除的請求,并在該SDU對 應的數(shù)據(jù)庫中存儲數(shù)據(jù)、查詢數(shù)據(jù)、修改數(shù)據(jù)以及刪除數(shù)據(jù)。Oracle數(shù)據(jù)庫是一種關系型數(shù) 據(jù)庫,為客戶提供數(shù)據(jù)存儲和數(shù)據(jù)管理服務。
[0014] 本發(fā)明實施例提供的方法中,由于SDU與數(shù)據(jù)庫的對應關系,對SDU進行集群配置, 實現(xiàn)了對數(shù)據(jù)庫的集群配置,這種方式不需要使用Oracle clusterware HA和Oracle LoadBalance,因此,可以節(jié)約Oracle軟件。同時,本發(fā)明實施例中的SDU可以屬于多個集群, 即該SDU對應的Oracle數(shù)據(jù)庫可以屬于多個集群,該情況下,同一數(shù)據(jù)庫中可以存儲不同集 群對應的智能業(yè)務的數(shù)據(jù),可以使得數(shù)據(jù)庫的資源利用更加充分。
[0015] 結合第二方面,在第一種可能的實現(xiàn)方式中,所述SEE根據(jù)所述智能業(yè)務對應的集 群的集群方式在所述智能業(yè)務對應的集群中的SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相 關的數(shù)據(jù),包括:當所述智能業(yè)務對應的集群為負載均衡集群時,所述SEE在所述智能業(yè)務 對應的集群中的第一目標SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù),所述第一 目標SDU對應的數(shù)據(jù)庫為所述智能業(yè)務對應的集群中的用于存儲所述用戶的所述智能業(yè)務 的數(shù)據(jù)的數(shù)據(jù)庫;當所述智能業(yè)務對應的集群為高可用性集群時,所述SEE在所述智能業(yè)務 對應的集群中的全部SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù)。
[0016] 結合第二方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,當所述集 群為負載均衡集群時,所述集群中的預設的SDU對應預設的號段,所述預設的SDU對應的數(shù) 據(jù)庫用于存儲使用所述預設的號段的用戶的所述智能業(yè)務的數(shù)據(jù)。
[0017] 結合第二方面的第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,當所述智 能業(yè)務對應的集群為負載均衡集群時,所述SEE在所述智能業(yè)務對應的集群中的第一目標 SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù),包括:當所述智能業(yè)務對應的集群為 負載均衡集群時,所述SEE確定所述用戶對應的號碼所屬的預設的號段;所述SEE將所述用 戶對應的號碼所屬的預設的號段對應的預設的SDU確定為第一目標SDU;所述SEE向所述第 一目標SDU發(fā)送寫入請求;所述第一目標SDU接收所述寫入請求,并在所述第一目標SDU對應 的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù)。
[0018] 結合第二方面的第一種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,當所述智 能業(yè)務對應的集群為高可用性集群時,所述SEE在所述智能業(yè)務對應的集群中的全部SDU對 應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù),包括:所述SEE向所述智能業(yè)務對應的集群 中的第二目標SDU發(fā)送多寫請求,所述第二目標SDU為所述智能業(yè)務對應的集群中的任意一 個SDU;所述第二目標SDU接收所述SEE發(fā)送的多寫請求,并根據(jù)所述多寫請求將與所述智能 業(yè)務相關的數(shù)據(jù)更新到所述智能業(yè)務對應的集群中的全部SDU對應的數(shù)據(jù)庫中。
[0019] 結合第二方面、第二方面的第一種可能的實現(xiàn)方式至第三種可能的實現(xiàn)方式任一 種,在第四種可能的實現(xiàn)方式中,所述方法還包括:當所述智能業(yè)務對應的集群為負載均衡 集群時,所述SEE在所述第一目標SDU對應的數(shù)據(jù)庫中查詢所述用戶的所述智能業(yè)務的業(yè)務 數(shù)據(jù)和用戶數(shù)據(jù),并根據(jù)所述業(yè)務數(shù)據(jù)和用戶數(shù)據(jù)判斷發(fā)起所述智能業(yè)務的用戶是否合 法;當所述智能業(yè)務對應的集群為高可用性集群時,所述SEE在所述智能業(yè)務對應的集群中 的任意一個SDU對應的數(shù)據(jù)庫中查詢所述用戶的所述智能業(yè)務的業(yè)務數(shù)據(jù)和用戶數(shù)據(jù),并 根據(jù)所述業(yè)務數(shù)據(jù)和用戶數(shù)據(jù)判斷發(fā)起所述智能業(yè)務的用戶是否合法。
[0020] 第三方面,提供一種更新數(shù)據(jù)的裝置,所述裝置包括N個SDU和Μ個SEE,所述N個SDU 組成多個集群,一個集群包括至少一個SDU,SDU與數(shù)據(jù)庫--對應,所述N個SDU中的每個 SDU屬于一個或多個集群,N、M均為正整數(shù);其中,所述SEE,用于接收用戶發(fā)送的智能業(yè)務的 業(yè)務請求;所述SEE,還用于根據(jù)所述業(yè)務請求中攜帶的所述智能業(yè)務的業(yè)務標識確定所述 智能業(yè)務對應的集群,所述智能業(yè)務對應的集群包括所述智能業(yè)務對應的集群的集群方式 以及所述智能業(yè)務對應的集群中的SDU;所述SEE,還用于根據(jù)所述智能業(yè)務對應的集群的 集群方式在所述智能業(yè)務對應的集群中的SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的 數(shù)據(jù)。
[0021] 關于SDU、SEE以及Oracle數(shù)據(jù)庫的描述可參見上述方法部分,由于該裝置用于執(zhí) 行上述方法,該裝置的有益效果可參見方法部分的有益效果。
[0022]結合第三方面,在第一種可能的實現(xiàn)方式中,所述SEE具體用于:當所述智能業(yè)務 對應的集群為負載均衡集群時,在所述智能業(yè)務對應的集群中的第一目標SDU對應的數(shù)據(jù) 庫中更新與所述智能業(yè)務相關的數(shù)據(jù),所述第一目標SDU對應的數(shù)據(jù)庫為所述智能業(yè)務對 應的集群中的用于存儲所述用戶的所述智能業(yè)務的數(shù)據(jù)的數(shù)據(jù)庫;當所述智能業(yè)務對應的 集群為高可用性集群時,在所述智能業(yè)務對應的集群中的全部SDU對應的數(shù)據(jù)庫中更新與 所述智能業(yè)務相關的數(shù)據(jù)。
[0023]結合第三方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,當所述集 群為負載均衡集群時,所述集群中的預設的SDU對應預設的號段,所述預設的SDU對應的數(shù) 據(jù)庫用于存儲使用所述預設的號段的用戶的所述智能業(yè)務的數(shù)據(jù)。
[0024]結合第三方面的第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述SEE具 體用于:當所述智能業(yè)務對應的集群為負載均衡集群時,確定所述用戶對應的號碼所屬的 預設的號段;將所述用戶對應的號碼所屬的預設的號段對應的預設的SDU確定為第一目標 SDU;向所述第一目標SDU發(fā)送寫入請求;所述第一目標SDU,用于接收所述寫入請求,并在所 述第一目標SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù)。
[0025]結合第三方面的第一種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述SEE具 體用于:當所述智能業(yè)務對應的集群為高可用性集群時,向所述智能業(yè)務對應的集群中的 第二目標SDU發(fā)送多寫請求,所述第二目標SDU為所述智能業(yè)務對應的集群中的任意一個 SDU;所述第二目標SDU,用于接收所述SEE發(fā)送的多寫請求,并根據(jù)所述多寫請求將與所述 智能業(yè)務相關的數(shù)據(jù)更新到所述智能業(yè)務對應的集群中的全部SDU對應的數(shù)據(jù)庫中。
[0026]結合第三方面、第三方面的第一種可能的實現(xiàn)方式至第三種可能的實現(xiàn)方式任一 種,在第四種可能的實現(xiàn)方式中,所述SEE還用于:當所述智能業(yè)務對應的集群為負載均衡 集群時,在所述第一目標SDU對應的數(shù)據(jù)庫中查詢所述用戶的所述智能業(yè)務的業(yè)務數(shù)據(jù)和 用戶數(shù)據(jù),并根據(jù)所述業(yè)務數(shù)據(jù)和用戶數(shù)據(jù)判斷發(fā)起所述智能業(yè)務的用戶是否合法;當所 述智能業(yè)務對應的集群為高可用性集群時,在所述智能業(yè)務對應的集群中的任意一個SDU 對應的數(shù)據(jù)庫中查詢所述用戶的所述智能業(yè)務的業(yè)務數(shù)據(jù)和用戶數(shù)據(jù),并根據(jù)所述業(yè)務數(shù) 據(jù)和用戶數(shù)據(jù)判斷發(fā)起所述智能業(yè)務的用戶是否合法。
[0027]第四方面,提供一種更新數(shù)據(jù)的裝置,包括存儲器和處理器,所述存儲器中用于存 儲代碼,以便處理器執(zhí)行與該代碼相應的動作,所述處理器運行N個SDU和Μ個SEE,所述N個 SDU組成多個集群,一個集群包括至少一個SDU,SDU與數(shù)據(jù)庫一一對應,所述N個SDU中的每 個SDU屬于一個或多個集群,N、M均為正整數(shù);所述裝置用于執(zhí)行第二方面提供的任意一種 方法。
[0028] 關于SDU、SEE以及Oracle數(shù)據(jù)庫的描述可參見上述方法部分,由于該裝置用于執(zhí) 行上述方法,該裝置的有益效果可參見方法部分的有益效果。
【附圖說明】
[0029] 為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn) 有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以 根據(jù)這些附圖獲得其他的附圖。
[0030] 圖1為現(xiàn)有技術中的業(yè)務請求處理流程的示意圖;
[0031] 圖2為本發(fā)明實施例提供的一種智能網功能實體的架構示意圖;
[0032] 圖3為本發(fā)明實施例提供的一種集群配置裝置的組成示意圖;
[0033] 圖4為本發(fā)明實施例提供的兩個集群中的SDU的示意圖;
[0034] 圖5為本發(fā)明實施例提供的一種更新數(shù)據(jù)的方法的流程圖;
[0035] 圖6為本發(fā)明實施例提供的一種在SDU對應的數(shù)據(jù)庫中更新數(shù)據(jù)的示意圖;
[0036] 圖7為本發(fā)明實施例提供的又一種在SDU對應的數(shù)據(jù)庫中更新數(shù)據(jù)的示意圖;
[0037] 圖8為本發(fā)明實施例提供的又一種更新數(shù)據(jù)的方法的流程圖;
[0038] 圖9為本發(fā)明實施例提供的一種更新數(shù)據(jù)的裝置的組成示意圖;
[0039] 圖10為本發(fā)明實施例提供的又一種更新數(shù)據(jù)的裝置的組成示意圖。
【具體實施方式】
[0040] 下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完 整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于 本發(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他 實施例,都屬于本發(fā)明保護的范圍。
[0041] 移動智能網是指在移動網絡中引入智能網功能實體,實現(xiàn)對移動智能呼叫控制的 一種網絡。如圖1所示,若用戶A開通了智能業(yè)務,在用戶A呼叫用戶B的場景中,基站在接收 到用戶A發(fā)送的業(yè)務請求時,將該業(yè)務請求通過交換機發(fā)送至智能網功能實體,智能網功能 實體根據(jù)該業(yè)務請求確定用戶簽約的智能業(yè)務并對智能業(yè)務進行處理后,將處理后的消息 發(fā)送給交換機,交換機建立與用戶B的呼叫連接(呼叫請求有可能經過多個交換機后才到達 處理功能實體之前的交換機,圖1中示出的交換機即處理功能實體之前的交換機,其余交換 機未示出,圖中的數(shù)字序號代表呼叫請求處理的先后順序)。
[0042]其中,如圖2所示,智能網功能實體包括M(M為正整數(shù))個業(yè)務運行環(huán)境(Service Execution Environment,SEE)和N(N為正整數(shù))個業(yè)務數(shù)據(jù)單元(Service Data Unit,簡稱 SDU),SEE用于運行智能業(yè)務,同時負責解析呼叫消息,SDU用于處理有關智能業(yè)務的數(shù)據(jù)存 儲,數(shù)據(jù)查詢,數(shù)據(jù)修改以及數(shù)據(jù)刪除的請求,并在該SDU對應的數(shù)據(jù)庫中存儲數(shù)據(jù)、查詢數(shù) 據(jù)、修改數(shù)據(jù)以及刪除數(shù)據(jù)。SDU為NGIN的一個組件,與數(shù)據(jù)庫一一對應,SDU和其對應的數(shù) 據(jù)庫可以安裝在一起,也可以不安裝在一起。本文中均以SDU和其對應的數(shù)據(jù)庫安裝在一起 為例進行說明。圖2中以M=3、N=4、且SDU與其對應的數(shù)據(jù)庫安裝在一塊物理單板上為例進 行說明。本發(fā)明實施例中的數(shù)據(jù)庫可以為〇rac 1 e數(shù)據(jù)庫。
[0043] Oracle數(shù)據(jù)庫是一種關系型數(shù)據(jù)庫,為客戶提供數(shù)據(jù)存儲和數(shù)據(jù)管理服務, Oracle數(shù)據(jù)庫的數(shù)據(jù)庫語言為結構化查詢語言(Structured Query Language,簡稱SQL)。 SDU和Oracle數(shù)據(jù)庫均可以安裝在物理單板上,在物理單板上安裝操作系統(tǒng)后便可以安裝 Oracle數(shù)據(jù)庫的軟件,安裝Oracle數(shù)據(jù)庫的軟件后就可以存儲數(shù)據(jù),外部程序通過Oracle 實例和Orac 1 e數(shù)據(jù)庫進行交互,訪問和操作Orac 1 e數(shù)據(jù)庫中的數(shù)據(jù),Orac 1 e實例是用于和 操作系統(tǒng)進行聯(lián)系的標識,也就是說Oracle數(shù)據(jù)庫和操作系統(tǒng)之間的交互使用的是Oracle 實例。
[0044] 本發(fā)明實施例提供一種集群配置裝置30,應用于智能網功能實體,所述智能網功 能實體包括N個SDU,如圖3所示,所述裝置30包括:配置單元301;
[0045] 所述配置單元301,用于配置多個智能業(yè)務中的每個智能業(yè)務對應的集群,一個智 能業(yè)務對應的集群包括該智能業(yè)務對應的集群的集群方式以及該智能業(yè)務對應的集群中 的SDU,其中,一個集群包括至少一個SDU,SDU與數(shù)據(jù)庫--對應,所述N個SDU中的每個SDU 屬于一個或多個集群。
[0046] 具體的,裝置30可以以硬件或軟件的形式設置在智能網功能實體的SEE中,具體 的,配置單元301可以為SEE中的配置中心(Configuration Center,簡稱CC)的一部分。
[0047] 其中,集群的集群方式可以為高可用性或負載均衡,集群可以為高可用性集群或 負載均衡集群。在本發(fā)明實施例中,一個SDU可以屬于多個集群,示例性的,如圖4所示,在本 發(fā)明實施例中,集群1和集群2可以包含相同的SDU(即圖中的SDU3)。
[0048]可選的,所述配置單元301具體用于:確定所述多個智能業(yè)務中的每個智能業(yè)務的 可靠性要求,所述可靠性要求包括有高可靠性要求和無高可靠性要求;
[0049] 當一個智能業(yè)務的可靠性要求為有高可靠性要求時,確定該智能業(yè)務對應的集群 的集群方式為高可用性,確定該智能業(yè)務對應的集群包括P個SDU,P大于該智能業(yè)務的每秒 試呼次數(shù)與數(shù)據(jù)庫每秒能夠承載的最高呼叫次數(shù)的比值向上取整后的值,P為正整數(shù);
[0050] 當一個智能業(yè)務的可靠性要求為無高可靠性要求時,確定該智能業(yè)務對應的集群 的集群方式為負載均衡,確定Q個SDU,Q為該智能業(yè)務的每秒試呼次數(shù)與數(shù)據(jù)庫每秒能夠承 載的最高呼叫次數(shù)的比值向上取整后的值;根據(jù)該智能業(yè)務的用戶數(shù)為Q個SDU中的每個 SDU分配用戶數(shù),為Q個SDU分配的用戶數(shù)的總和為該智能業(yè)務的用戶數(shù),判斷所述Q個SDU中 的每個SDU對應的數(shù)據(jù)庫的每秒試呼次數(shù)是否均滿足預設條件,若是,確定所述Q個SDU為組 成該智能業(yè)務對應的集群的SDU,若否,令Q = Q+1,繼續(xù)根據(jù)該智能業(yè)務的用戶數(shù)為Q個SDU 中的每個SDU分配用戶數(shù),直至Q個SDU中的每個SDU對應的數(shù)據(jù)庫的每秒試呼次數(shù)均滿足預 設條件,一個數(shù)據(jù)庫的每秒試呼次數(shù)是指根據(jù)為該數(shù)據(jù)庫對應的SDU分配的用戶計算得到 的試呼次數(shù),一個數(shù)據(jù)庫的每秒試呼次數(shù)滿足預設條件是指一個數(shù)據(jù)庫的每秒試呼次數(shù)小 于該數(shù)據(jù)庫每秒能夠承載的最高呼叫次數(shù),Q為正整數(shù)。
[0051] 具體的,智能網功能實體中可以存儲不同的智能業(yè)務與可靠性要求之間的對應關 系,也可以配置預設的條件供配置單元301判斷智能業(yè)務的可靠性要求,例如,根據(jù)簽約不 同智能業(yè)務的用戶群的服務優(yōu)先級確定智能業(yè)務的可靠性要求,服務優(yōu)先級大于某個值的 用戶群對應的智能業(yè)務有高可靠性要求,服務優(yōu)先級低于某個值的用戶群對應的智能業(yè)務 無高可靠性要求。
[0052]其中,確定集群中的SDU的個數(shù)時,假設智能業(yè)務的每秒試呼次數(shù)(Call Attempts Per Second,簡稱CAPS)為Y,數(shù)據(jù)庫每秒能夠承載的最高呼叫次數(shù)為X3的值可以根據(jù)該智 能業(yè)務所支持的用戶數(shù)(假設為1000的話)計算出來,具體的,Y=用戶數(shù)(1000)*每用戶話 務量/平均呼叫時長,話務量的單位為 ERL(愛爾蘭ΚΧ的值可以根據(jù)智能業(yè)務在處理一次呼 叫的過程中需要讀的次數(shù)和寫的次數(shù)計算得到,具體的,假設數(shù)據(jù)庫的每呼叫事物數(shù) (Transactions Per Service Request,簡稱TPSR)為m,每次呼叫的讀的次數(shù)為a,寫的次數(shù) 為b,一次寫消耗的資源為讀的η倍,則X = m/(a+b*n)。其中,每用戶話務量和平均呼叫時長 可以根據(jù)1000個用戶的歷史業(yè)務數(shù)據(jù)統(tǒng)計并計算得到。
[0053]則當一個智能業(yè)務對應的集群的集群方式為高可用性時,該智能業(yè)務對應的集群 中的SDU的個數(shù)大于對Y/X向上取整后的值,例如,當Y/X = 3.1時,該智能業(yè)務對應的集群中 的SDU的個數(shù)大于4,當Υ/Χ = 4.5時,該智能業(yè)務對應的集群中的SDU的個數(shù)大于5。
[0054] 當一個智能業(yè)務對應的集群的集群方式為負載均衡時,SDU對應的數(shù)據(jù)庫的每秒 試呼次數(shù)的計算方法如下:用戶數(shù)(為該SDU分配的用戶數(shù))*每用戶話務量/平均呼叫時長。 其中,每個數(shù)據(jù)庫計算時使用的每用戶話務量和平均呼叫時長可以根據(jù)為該數(shù)據(jù)庫對應的 SDU分配的用戶的歷史業(yè)務數(shù)據(jù)統(tǒng)計并計算得到。
[0055] 其中,一個智能業(yè)務對應一個集群,但是一個集群中可以運行多個智能業(yè)務。當一 個高可用性集群對應多個智能業(yè)務時,該集群中的SDU個數(shù)大于該多個智能業(yè)務中的全部 智能業(yè)務的每秒試呼次數(shù)之和與數(shù)據(jù)庫每秒能夠承載的最高呼叫次數(shù)的比值向上取整后 的值;當一個負載均衡集群對應多個智能業(yè)務時,該集群中的SDU個數(shù)大于或等于根據(jù)該多 個智能業(yè)務中的每個智能業(yè)務計算得到的集群中的SDU個數(shù)之和。
[0056]可選的,如圖3所示,所述裝置30還包括:獲取單元302,用于獲取配置信息,所述配 置信息為所述多個智能業(yè)務中的每個智能業(yè)務對應的集群的配置信息;所述配置單元301, 具體用于根據(jù)所述配置信息配置所述多個智能業(yè)務中的每個智能業(yè)務對應的集群。
[0057] 其中,配置信息可以由用戶輸入,獲取單元獲取。
[0058] 具體的,配置單元301在對智能業(yè)務中的每個智能業(yè)務對應的集群進行配置之后, 可以建立每個智能業(yè)務的業(yè)務標識與該智能業(yè)務對應集群的對應關系,以便后續(xù)根據(jù)該對 應關系處理智能業(yè)務的數(shù)據(jù)。
[0059]示例性的,基于圖2所示的智能網功能實體,若智能網功能實體中僅包括SDU1、 SDU2、SDU3和SDU4,智能業(yè)務與業(yè)務標識之間--對應,則智能業(yè)務1對應集群1,智能業(yè)務1 的業(yè)務標識為Μ,智能業(yè)務2對應集群2,智能業(yè)務2的業(yè)務標識為A 2,智能業(yè)務3對應集群3, 智能業(yè)務3的業(yè)務標識為A3,其中,集群1為高可用性集群,包括SDU1和SDU2,集群2為負載均 衡集群,包括SDU3和SDU4,集群3為高可用性集群,包括SDU2和SDU3。具體可參見表1。
[0060] 表 1
[0061]
L0062」當集群為高可用性集群時,該集群中數(shù)據(jù)冗余存儲,可靠性高,當集群為負載均衡 集群時,該集群中數(shù)據(jù)互補存儲,資源利用率高,性能高。例如,基于表1所述的示例,智能業(yè) 務1使用高可用性集群,則SDU1和SDU2里智能業(yè)務1的業(yè)務數(shù)據(jù)冗余存放,智能業(yè)務2使用負 載均衡集群,則SDU3和SDU4里智能業(yè)務2的業(yè)務數(shù)據(jù)互補存儲。
[0063] 可選的,所述配置單元還用于:當一個智能業(yè)務對應的集群為負載均衡集群時,為 該負載均衡集群中的預設的SDU配置預設的號段,所述預設的SDU對應的數(shù)據(jù)庫用于存儲使 用所述預設的號段的用戶的該智能業(yè)務的數(shù)據(jù)。
[0064] 需要說明的是,號段可以為用戶使用的電話號碼的號段,也可以為預設的ID號的 號段,預設的ID號可以為為不同企業(yè)設置的編號,也可以為為不同的群體設備的編號,本發(fā) 明實施例對此不作具體限定。
[0065] 示例性的,基于表1所述的示例,若智能業(yè)務2的用戶群使用的號段為130、134、139 和180,其中,使用號段130和134的用戶的數(shù)據(jù)存儲在SDU3中,使用號段139和180的用戶的 數(shù)據(jù)存儲在SDU4中。具體可參見表2。
[0066] 表 2
[0067]
[0068」本發(fā)明實施例提供的裝置,根據(jù)SDU與數(shù)據(jù)厙的對應夫糸,通過對SDU進行集群配 置,實現(xiàn)對數(shù)據(jù)庫的集群配置,這種方式不需要使用Oracle clusterware HA和Oracle LoadBalance,因此,可以節(jié)約Oracle軟件,降低集群配置的成本。同時,本發(fā)明實施例中的 SDU可以屬于多個集群,即該SDU對應的Oracle數(shù)據(jù)庫可以屬于多個集群,該情況下,同一數(shù) 據(jù)庫中可以存儲不同集群對應的智能業(yè)務的數(shù)據(jù),可以使得數(shù)據(jù)庫的資源利用更加充分。 另外,在本發(fā)明實施例中,若SDU和其對應的Oracle數(shù)據(jù)庫安裝在一塊物理單板上,由于數(shù) 據(jù)庫可以屬于多個集群,因此,與現(xiàn)有技術相比,本發(fā)明實施例中還可以節(jié)約單板數(shù)量。
[0069] 基于如圖2所示的智能網功能實體,本發(fā)明實施例提供一種更新數(shù)據(jù)的方法,如圖 5所示,包括:
[0070] 501、SEE接收用戶發(fā)送的智能業(yè)務的業(yè)務請求。
[0071] 本發(fā)明實施例提供的方法可以應用于移動智能網中,具體可以應用于智能網功能 實體。智能網功能實體包括N個SDU和Μ個SEE,N個SDU組成多個集群,一個集群包括至少一個 SDU,SDU與數(shù)據(jù)庫--對應,N個SDU中的每個SDU屬于一個或多個集群,N、M均為正整數(shù),具 體可參見圖2。
[0072] 其中,用戶發(fā)送的智能業(yè)務的業(yè)務請求中包括用戶對應的號碼、智能業(yè)務的業(yè)務 標識、用戶的位置信息以及用戶撥打的號碼等信息。
[0073] SEE可以為智能網功能實體中的任意一個SEE,由于智能網功能實體中包括多個 SEE,因此,在SEE接收用戶發(fā)送的智能業(yè)務的業(yè)務請求之前,交換機會對接收到的多個智能 業(yè)務的業(yè)務請求進行分配,并向相應的SEE發(fā)送。
[0074] 502、所述SEE根據(jù)所述業(yè)務請求中攜帶的所述智能業(yè)務的業(yè)務標識確定所述智能 業(yè)務對應的集群,所述智能業(yè)務對應的集群包括所述智能業(yè)務對應的集群的集群方式以及 所述智能業(yè)務對應的集群中的SDU。
[0075]具體的,SEE可以根據(jù)存儲的業(yè)務標識與集群的對應關系表(例如上文中的表1), 在接收到智能業(yè)務的業(yè)務請求時,查詢智能業(yè)務對應的集群。
[0076] 其中,智能業(yè)務與業(yè)務標識之間一一對應,一個智能業(yè)務對應一個集群,但是一個 集群中可以運行多個智能業(yè)務,集群的集群方式為高可用性或負載均衡,集群可以為高可 用性集群或負載均衡集群。
[0077]當集群為高可用性集群時,該集群中數(shù)據(jù)冗余存儲,可靠性高,當集群為負載均衡 集群時,該集群中數(shù)據(jù)互補存儲,資源利用率高,性能高。例如,基于表1所述的示例,智能業(yè) 務1使用高可用性集群,則SDU1和SDU2里智能業(yè)務1的業(yè)務數(shù)據(jù)冗余存放,智能業(yè)務2使用負 載均衡集群,則SDU3和SDU4里智能業(yè)務2的業(yè)務數(shù)據(jù)互補存儲。
[0078]具體的,智能業(yè)務與集群的對應關系的示例可以參見表1。
[0079] 503、所述SEE根據(jù)所述智能業(yè)務對應的集群的集群方式在所述智能業(yè)務對應的集 群中的SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù)。
[0080] 其中,更新與所述智能業(yè)務相關的數(shù)據(jù)包括增加、刪除或修改與所述智能業(yè)務相 關的數(shù)據(jù)。
[0081] 可選的,當集群的集群方式不同時,步驟503的具體實現(xiàn)方式也不同,其中,方式一 是指當智能業(yè)務對應的集群為負載均衡集群時步驟503的具體實現(xiàn),方式二是指當所述智 能業(yè)務對應的集群為高可用性集群時步驟503的具體實現(xiàn),方式一和方式二分別包括:
[0082]方式一、所述SEE在所述智能業(yè)務對應的集群中的第一目標SDU對應的數(shù)據(jù)庫中更 新與所述智能業(yè)務相關的數(shù)據(jù),所述第一目標SDU對應的數(shù)據(jù)庫為所述智能業(yè)務對應的集 群中的用于存儲所述用戶的所述智能業(yè)務的數(shù)據(jù)的數(shù)據(jù)庫。
[0083]方式二、所述SEE在所述智能業(yè)務對應的集群中的全部SDU對應的數(shù)據(jù)庫中更新與 所述智能業(yè)務相關的數(shù)據(jù)。
[0084] 在方式一中,智能業(yè)務對應的集群中的第一目標SDU用于存儲所述用戶的所述智 能業(yè)務的數(shù)據(jù)。
[0085] 可選的,當所述集群為負載均衡集群時,所述集群中的預設的SDU對應預設的號 段,所述預設的SDU對應的數(shù)據(jù)庫用于存儲使用所述預設的號段的用戶的所述智能業(yè)務的 數(shù)據(jù)。
[0086] 關于該可選的方法的示例可參見表2。需要說明的是,號段可以為用戶使用的電話 號碼的號段,也可以為預設的ID號的號段,預設的ID號可以為為不同企業(yè)設置的編號,也可 以為為不同的用戶群體的設置的編號,本發(fā)明實施例對此不作具體限定。
[0087]當集群的類型為負載均衡集群時,SEE采用智能業(yè)務和號段的訪問規(guī)則訪問SDU, 例如,智能業(yè)務2對應的集群為負載均衡集群時,則SDU3和SDU4里的智能業(yè)務2的數(shù)據(jù)采用 號段模式存放,數(shù)據(jù)不冗余(智能業(yè)務2的業(yè)務數(shù)據(jù)備份此處不敘述)。
[0088] 可選的,方式一在具體實現(xiàn)時包括:當所述智能業(yè)務對應的集群為負載均衡集群 時,所述SEE確定所述用戶對應的號碼所屬的預設的號段;所述SEE將所述用戶對應的號碼 所屬的預設的號段對應的預設的SDU確定為第一目標SDU;所述SEE向所述第一目標SDU發(fā)送 寫入請求;所述第一目標SDU接收所述寫入請求,并在所述第一目標SDU對應的數(shù)據(jù)庫中更 新與所述智能業(yè)務相關的數(shù)據(jù)。
[0089] 示例性的,基于表2所述的示例,如圖6所示,當SEE確定智能業(yè)務2對應的集群為負 載均衡集群、且用戶使用的號碼為134開頭的號碼時,SEE通過查詢表2確定用戶使用的號碼 屬于預設的134號段,SEE將用于存儲134號段的該智能業(yè)務的數(shù)據(jù)的SDU3確定為第一目標 SDU,并向SDU3發(fā)送寫入請求,SDU3接收寫入請求并在SDU3對應的數(shù)據(jù)庫3中更新數(shù)據(jù)。
[0090] 具體的,SEE在接收到用戶發(fā)送的智能業(yè)務的業(yè)務請求后,首先可以根據(jù)業(yè)務請求 中包含的業(yè)務標識確定智能業(yè)務對應的集群,若集群為負載均衡集群時,SEE可以根據(jù)業(yè)務 請求中包含的用戶對應的號碼確定第一目標SDU。
[0091] 方式二在具體實現(xiàn)時包括:所述SEE向所述智能業(yè)務對應的集群中的第二目標SDU 發(fā)送多寫請求,所述第二目標SDU為所述智能業(yè)務對應的集群中的任意一個SDU;所述第二 目標SDU接收所述SEE發(fā)送的多寫請求,并根據(jù)所述多寫請求將與所述智能業(yè)務相關的數(shù)據(jù) 更新到所述智能業(yè)務對應的集群中的全部SDU對應的數(shù)據(jù)庫中。
[0092]示例性的,基于表1所述的示例,如圖7所示,當SEE確定智能業(yè)務1對應的集群為高 可用性集群時,SEE向第二目標SDU(假設為SDU1)發(fā)送多寫請求,第二目標SDU接收SEE發(fā)送 的多寫請求,并根據(jù)多寫請求將與智能業(yè)務相關的數(shù)據(jù)更新到智能業(yè)務對應的集群中的全 部SDU對應的數(shù)據(jù)庫中。
[0093]可選的,第二目標SDU接收所述SEE發(fā)送的多寫請求,并根據(jù)所述多寫請求將與所 述智能業(yè)務相關的數(shù)據(jù)寫入所述智能業(yè)務對應的集群中的全部SDU對應的數(shù)據(jù)庫中,包括: 第二目標SDU接收所述SEE發(fā)送的多寫請求,第二目標SDU向所述全部SDU對應的數(shù)據(jù)庫發(fā)送 預提交命令,所述全部SDU中的每個SDU對應的數(shù)據(jù)庫進行預執(zhí)行,預執(zhí)行成功后向所述第 二目標SDU返回預執(zhí)行成功信息,若第二目標SDU接收到所述全部SDU對應的數(shù)據(jù)庫發(fā)送的 預執(zhí)行成功信息,所述第二目標SDU向所述全部SDU對應的數(shù)據(jù)庫發(fā)送提交命令,所述全部 SDU中的每個SDU對應的數(shù)據(jù)庫根據(jù)該提交命令更新與所述智能業(yè)務相關的數(shù)據(jù)。其中,數(shù) 據(jù)庫進行預執(zhí)行的目的是檢查多寫請求是否合法。
[0094] 需要說明的是,當智能業(yè)務對應的集群的集群類型為高可用性集群時,需要保證 該集群中的該智能業(yè)務的業(yè)務數(shù)據(jù)高度的一致性,可選的,SEE可以采用時間戳機制和有效 標識保證操作有效性,采用虛擬事務保證操作過程中數(shù)據(jù)一致性,采用自動比較機制保證 操作結果的一致性。
[0095] 其中,時間戳機制即數(shù)據(jù)庫寫入數(shù)據(jù)或修改數(shù)據(jù)時,記錄該數(shù)據(jù)的最近一次更新 的系統(tǒng)時間;有效標識機制即數(shù)據(jù)庫需要刪除數(shù)據(jù)時,不是執(zhí)行刪除數(shù)據(jù)的操作,而是使用 有效標識記錄該數(shù)據(jù)無效。
[0096] 虛擬事務機制即所有提交命令組成一個虛擬事務;當所有數(shù)據(jù)庫根據(jù)該提交命令 成功寫入與所述智能業(yè)務相關的數(shù)據(jù),并向第二目標SDU返回代表操作成功的標識符時,虛 擬事務才記錄成功,否則虛擬事務執(zhí)行失敗。當虛擬事務執(zhí)行失敗時,第二目標SDU--回 滾每個SDU對應的數(shù)據(jù)庫上的數(shù)據(jù)。
[0097]自動比較機制即:在智能網功能實體的空閑時段,SEE向SDU發(fā)送比較命令,SDU獲 取每個數(shù)據(jù)庫上的數(shù)據(jù)的更新時間,一旦某個數(shù)據(jù)庫上的數(shù)據(jù)的更新時間與其他數(shù)據(jù)庫上 的數(shù)據(jù)的更新時間不一致,便認為時間戳較早的數(shù)據(jù)已經過時,取數(shù)據(jù)庫上的距當前最近 的時間戳的數(shù)據(jù)為同步依據(jù),更新其他數(shù)據(jù)庫上的數(shù)據(jù);當數(shù)據(jù)被標記有效標識的時間超 過預設時間時,則將該數(shù)據(jù)清除。
[0098] 可選的,上述方法還包括:
[0099]當所述智能業(yè)務對應的集群為負載均衡集群時,所述SEE在所述第一目標SDU對應 的數(shù)據(jù)庫中查詢所述用戶的所述智能業(yè)務的業(yè)務數(shù)據(jù)和用戶數(shù)據(jù),并根據(jù)所述業(yè)務數(shù)據(jù)和 用戶數(shù)據(jù)判斷發(fā)起所述智能業(yè)務的用戶是否合法;
[0100]當所述智能業(yè)務對應的集群為高可用性集群時,所述SEE在所述智能業(yè)務對應的 集群中的任意一個SDU對應的數(shù)據(jù)庫中查詢所述用戶的所述智能業(yè)務的業(yè)務數(shù)據(jù)和用戶數(shù) 據(jù),并根據(jù)所述業(yè)務數(shù)據(jù)和用戶數(shù)據(jù)判斷發(fā)起所述智能業(yè)務的用戶是否合法。
[0101]當SEE接收到智能業(yè)務的業(yè)務請求時,SEE查詢該智能業(yè)務對應的集群,當確定該 集群的集群類型為高可用性集群時,SEE將用于查詢用戶的業(yè)務數(shù)據(jù)和用戶數(shù)據(jù)的查詢請 求向該集群中的任意一個SDU發(fā)送,該SDU根據(jù)查詢請求中攜帶的用戶對應的號碼在SDU中 的數(shù)據(jù)庫中查詢該用戶的用戶數(shù)據(jù)和業(yè)務數(shù)據(jù),并向SEE反饋。當確定該集群的集群類型為 負載均衡集群時,SEE確定用戶對應的號碼所屬的號段,根據(jù)用戶對應的號碼所屬的號段對 應的SDU,將用于查詢用戶的業(yè)務數(shù)據(jù)和用戶數(shù)據(jù)的查詢請求向該SDU發(fā)送,該SDU根據(jù)查詢 請求中攜帶的用戶的號碼查詢該用戶的用戶數(shù)據(jù)和業(yè)務數(shù)據(jù),并向SEE反饋。例如,當智能 業(yè)務為智能業(yè)務2時,SEE確定集群為集群2,該集群對應的集群類型為負載均衡集群,集群2 中包括SDU3和SDU4,其中,SDU3對應的號段為130和134,SDU4對應的號段139和180,若SEE確 定用戶對應的號碼所屬的號段為134號段時,SEE向SDU3發(fā)送查詢請求。
[0102] 在本發(fā)明實施例中,當某個智能業(yè)務需要擴容(或調整)時,可以在智能業(yè)務與集 群的對應關系表中增加(或調整)SDU。例如,若智能業(yè)務2需要擴容時,可以通過配置單元 301在集群2中增加 SDU5和SDU6,然后配置增加的號段。具體的,號段與增加的SDU的對應關 系可以參見表3。
[0103] 表3
[0104]
[0105]在本發(fā)明實施例中,可以通過配置單元301簡單方便的對集群進行擴容或調整。 [0106]本發(fā)明實施例提供的方法中,由于SDU與數(shù)據(jù)庫的對應關系,對SDU進行集群配置, 實現(xiàn)了對數(shù)據(jù)庫的集群配置,這種方式不需要使用Oracle clusterware HA和Oracle LoadBalance,因此,可以節(jié)約Oracle軟件。同時,本發(fā)明實施例中的SDU可以屬于多個集群, 即該SDU對應的Oracle數(shù)據(jù)庫可以屬于多個集群,該情況下,同一數(shù)據(jù)庫中可以存儲不同集 群對應的智能業(yè)務的數(shù)據(jù),可以使得數(shù)據(jù)庫的資源利用更加充分。
[0107] 本發(fā)明實施例中還提供了一種更新和查詢數(shù)據(jù)的方法,以呼叫場景為例對上述方 法進行示例性說明。
[0108] 該場景下,用戶A呼叫用戶B,用戶A剛發(fā)起呼叫時,用戶A發(fā)送的呼叫請求,經過基 站和交換機后到達運行用戶A簽約的智能業(yè)務的SEE,該SEE需要在數(shù)據(jù)庫中查詢用戶A的權 限數(shù)據(jù)(例如,是否允許撥打用戶B、撥打用戶B的通話時長是否在套餐內是免費的),以便根 據(jù)用戶A的權限執(zhí)行后續(xù)的業(yè)務邏輯,其中,假設用戶A簽約了智能業(yè)務1,如圖8所示,該方 法包括:
[0109] 801、交換機接收用戶A發(fā)送的呼叫請求,并根據(jù)所述呼叫請求確定用戶A簽約的智 能業(yè)務為智能業(yè)務1。
[0110] 呼叫請求中包含用戶A的電話號碼,交換機根據(jù)用戶A的電話號碼確定用戶A簽約 的智能業(yè)務。
[0111] 802、交換機將所述呼叫請求分配到運行智能業(yè)務1的SEE。
[0112] 該實施例中以運行智能業(yè)務1的SEE為SEE1為例進行說明
[0113] 803、SEE1接收交換機發(fā)送的呼叫請求,并對所述呼叫請求進行解析,得到所述用 戶A的電話號碼和用戶A簽約的智能業(yè)務1的業(yè)務標識。
[0114] 804、SEE1根據(jù)智能業(yè)務1的業(yè)務標識查詢CC確定智能業(yè)務1對應的集群。
[0115] 該實施例中,基于表1所述的示例,智能業(yè)務1對應的集群為集群1。
[0116] 805、SEE1將查詢請求發(fā)送到集群1中的第二目標SDU。
[0117] 第二目標SDU為集群中的任意一個SDU。
[0118] 806、第二目標SDU接收查詢請求,并將查詢請求轉發(fā)給第二目標SDU對應的數(shù)據(jù) 庫。
[0119] 807、第二目標SDU對應的數(shù)據(jù)庫接收來自第二目標SDU的查詢請求,并根據(jù)查詢請 求查詢數(shù)據(jù)并向第二目標SDU返回查詢結果。
[0120] 808、第二目標SDU接收第二目標SDU對應的數(shù)據(jù)庫返回的查詢結果,并將查詢結果 上報SEE1。
[0121] SEE1接收到第二目標SDU上報的查詢結果后,根據(jù)查詢結果執(zhí)行后續(xù)的業(yè)務流程。
[0122] 在用戶A呼叫用戶B結束之后,SEE1需要對智能業(yè)務1的業(yè)務數(shù)據(jù)進行更新,更新的 數(shù)據(jù)包括通話時長以及通話產生的費用等,該情況下,該方法還包括步驟809和步驟810。
[0123] 809、SEE1根據(jù)本次呼叫時長和本次呼叫產生的費用發(fā)送寫入請求至第二目標 SDU〇
[0124] 810、第二目標SDU接收該寫入請求,并根據(jù)該寫入請求在集群1中的全部SDU對應 的全部數(shù)據(jù)庫中寫入本次呼叫時長和本次呼叫產生的費用。
[0125] 本發(fā)明實施例提供的方法,由于SDU與數(shù)據(jù)庫的對應關系,對SDU進行集群配置,實 現(xiàn)了對數(shù)據(jù)庫的集群配置,這種方式不需要使用Oracle clusterware HA和Oracle LoadBalance,因此,可以節(jié)約Oracle軟件。同時,本發(fā)明實施例中的SDU可以屬于多個集群, 即該SDU對應的Oracle數(shù)據(jù)庫可以屬于多個集群,該情況下,同一數(shù)據(jù)庫中可以存儲不同集 群對應的智能業(yè)務的數(shù)據(jù),可以使得數(shù)據(jù)庫的資源利用更加充分。
[0126] 本發(fā)明實施例還提供了一種更新數(shù)據(jù)的裝置90,如圖9所示,所述裝置90包括N個 SDU和Μ個SEE,所述N個SDU組成多個集群,一個集群包括至少一個SDU,SDU與數(shù)據(jù)庫--對 應,所述N個SDU中的每個SDU屬于一個或多個集群,N、M均為正整數(shù);其中,
[0127] 所述SEE,用于接收用戶發(fā)送的智能業(yè)務的業(yè)務請求;
[0128] 所述SEE,還用于根據(jù)所述業(yè)務請求中攜帶的所述智能業(yè)務的業(yè)務標識確定所述 智能業(yè)務對應的集群,所述智能業(yè)務對應的集群包括所述智能業(yè)務對應的集群的集群方式 以及所述智能業(yè)務對應的集群中的SDU;
[0129] 所述SEE,還用于根據(jù)所述智能業(yè)務對應的集群的集群方式在所述智能業(yè)務對應 的集群中的SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù)。
[0130]可選的,所述SEE具體用于:
[0131]當所述智能業(yè)務對應的集群為負載均衡集群時,在所述智能業(yè)務對應的集群中的 第一目標SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù),所述第一目標SDU對應的數(shù) 據(jù)庫為所述智能業(yè)務對應的集群中的用于存儲所述用戶的所述智能業(yè)務的數(shù)據(jù)的數(shù)據(jù)庫;
[0132] 當所述智能業(yè)務對應的集群為高可用性集群時,在所述智能業(yè)務對應的集群中的 全部SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù)。
[0133] 可選的,當所述集群為負載均衡集群時,所述集群中的預設的SDU對應預設的號 段,所述預設的SDU對應的數(shù)據(jù)庫用于存儲使用所述預設的號段的用戶的所述智能業(yè)務的 數(shù)據(jù)。
[0134] 可選的,所述SEE具體用于:
[0135] 當所述智能業(yè)務對應的集群為負載均衡集群時,確定所述用戶對應的號碼所屬的 預設的號段;
[0136] 將所述用戶對應的號碼所屬的預設的號段對應的預設的SDU確定為第一目標SDU;
[0137] 向所述第一目標SDU發(fā)送寫入請求;
[0138] 所述第一目標SDU,用于接收所述寫入請求,并在所述第一目標SDU對應的數(shù)據(jù)庫 中更新與所述智能業(yè)務相關的數(shù)據(jù)。
[0139] 可選的,所述SEE具體用于:
[0140] 當所述智能業(yè)務對應的集群為高可用性集群時,向所述智能業(yè)務對應的集群中的 第二目標SDU發(fā)送多寫請求,所述第二目標SDU為所述智能業(yè)務對應的集群中的任意一個 SDU;
[0141]所述第二目標SDU,用于接收所述SEE發(fā)送的多寫請求,并根據(jù)所述多寫請求將與 所述智能業(yè)務相關的數(shù)據(jù)更新到所述智能業(yè)務對應的集群中的全部SDU對應的數(shù)據(jù)庫中。
[0142] 可選的,所述SEE還用于:
[0143] 當所述智能業(yè)務對應的集群為負載均衡集群時,在所述第一目標SDU對應的數(shù)據(jù) 庫中查詢所述用戶的所述智能業(yè)務的業(yè)務數(shù)據(jù)和用戶數(shù)據(jù),并根據(jù)所述業(yè)務數(shù)據(jù)和用戶數(shù) 據(jù)判斷發(fā)起所述智能業(yè)務的用戶是否合法;
[0144] 當所述智能業(yè)務對應的集群為高可用性集群時,在所述智能業(yè)務對應的集群中的 任意一個SDU對應的數(shù)據(jù)庫中查詢所述用戶的所述智能業(yè)務的業(yè)務數(shù)據(jù)和用戶數(shù)據(jù),并根 據(jù)所述業(yè)務數(shù)據(jù)和用戶數(shù)據(jù)判斷發(fā)起所述智能業(yè)務的用戶是否合法。
[0145] 由于該裝置用于執(zhí)行上述方法,該裝置的有益效果可參見方法部分的有益效果, 在此不再贅述。
[0146] 本發(fā)明實施例還提供了一種更新數(shù)據(jù)的裝置100,包括存儲器1001和處理器1002, 所述存儲器1001中用于存儲代碼,以便處理器1002執(zhí)行與該代碼相應的動作,所述處理器 1002運行N個SDU和Μ個SEE,所述N個SDU組成多個集群,一個集群包括至少一個SDU,SDU與數(shù) 據(jù)庫一一對應,所述N個SDU中的每個SDU屬于一個或多個集群,N、M均為正整數(shù);所述裝置 100用于執(zhí)行上述方法。
[0147] 如圖10所示,裝置100包括軟件層和硬件層,其中,軟件層包括N個SDU和Μ個SEE,硬 件層包括存儲器1001和處理器1002。
[0148] 由于該裝置用于執(zhí)行上述方法,該裝置的有益效果可參見方法部分的有益效果。
[0149] 所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述裝置的 具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。
[0150] 上述以軟件功能單元的形式實現(xiàn)的集成的單元,可以存儲在一個計算機可讀取存 儲介質中。上述軟件功能單元存儲在一個存儲介質中,包括若干指令用以使得一臺計算機 設備(可以是個人計算機,服務器,或者網絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的部 分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(Read-Only Memory,簡稱 ROM)、隨機存取存儲器(Random Access Memory,簡稱RAM)、磁碟或者光盤等各種可以存儲 程序代碼的介質。
[0151]最后應說明的是:以上實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管 參照前述實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可 以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換; 而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明各實施例技術方案的精神和 范圍。
【主權項】
1. 一種集群配置裝置,其特征在于,應用于智能網功能實體,所述智能網功能實體包括 N個業(yè)務數(shù)據(jù)單元SDU,N為正整數(shù),所述裝置包括:配置單元; 所述配置單元,用于配置多個智能業(yè)務中的每個智能業(yè)務對應的集群,一個智能業(yè)務 對應的集群包括該智能業(yè)務對應的集群的集群方式以及該智能業(yè)務對應的集群中的SDU, 其中,一個集群包括至少一個SDU,SDU與數(shù)據(jù)庫--對應,所述N個SDU中的每個SDU屬于一 個或多個集群。2. 根據(jù)權利要求1所述的裝置,其特征在于,所述配置單元具體用于: 確定所述多個智能業(yè)務中的每個智能業(yè)務的可靠性要求,所述可靠性要求包括有高可 靠性要求和無高可靠性要求; 當一個智能業(yè)務的可靠性要求為有高可靠性要求時,確定該智能業(yè)務對應的集群的集 群方式為高可用性,確定該智能業(yè)務對應的集群包括P個SDU,P大于該智能業(yè)務的每秒試呼 次數(shù)與數(shù)據(jù)庫每秒能夠承載的最高呼叫次數(shù)的比值向上取整后的值,P為正整數(shù); 當一個智能業(yè)務的可靠性要求為無高可靠性要求時,確定該智能業(yè)務對應的集群的集 群方式為負載均衡,確定Q個SDU,Q為該智能業(yè)務的每秒試呼次數(shù)與數(shù)據(jù)庫每秒能夠承載的 最高呼叫次數(shù)的比值向上取整后的值;根據(jù)該智能業(yè)務的用戶數(shù)為Q個SDU中的每個SDU分 配用戶數(shù),為Q個SDU分配的用戶數(shù)的總和為該智能業(yè)務的用戶數(shù),判斷所述Q個SDU中的每 個SDU對應的數(shù)據(jù)庫的每秒試呼次數(shù)是否均滿足預設條件,若是,確定所述Q個SDU為組成該 智能業(yè)務對應的集群的SDU,若否,令Q = Q+1,繼續(xù)根據(jù)該智能業(yè)務的用戶數(shù)為Q個SDU中的 每個SDU分配用戶數(shù),直至Q個SDU中的每個SDU對應的數(shù)據(jù)庫的每秒試呼次數(shù)均滿足預設條 件,一個數(shù)據(jù)庫的每秒試呼次數(shù)是指根據(jù)為該數(shù)據(jù)庫對應的SDU分配的用戶計算得到的試 呼次數(shù),一個數(shù)據(jù)庫的每秒試呼次數(shù)滿足預設條件是指一個數(shù)據(jù)庫的每秒試呼次數(shù)小于該 數(shù)據(jù)庫每秒能夠承載的最高呼叫次數(shù),Q為正整數(shù)。3. 根據(jù)權利要求1所述的裝置,其特征在于,所述裝置還包括: 獲取單元,用于獲取配置信息,所述配置信息為所述多個智能業(yè)務中的每個智能業(yè)務 對應的集群的配置信息; 所述配置單元,具體用于根據(jù)所述配置信息配置所述多個智能業(yè)務中的每個智能業(yè)務 對應的集群。4. 根據(jù)權利要求1-3任一項所述的裝置,其特征在于,所述配置單元還用于: 當一個智能業(yè)務對應的集群為負載均衡集群時,為該負載均衡集群中的預設的SDU配 置預設的號段,所述預設的SDU對應的數(shù)據(jù)庫用于存儲使用所述預設的號段的用戶的該智 能業(yè)務的數(shù)據(jù)。5. -種更新數(shù)據(jù)的方法,其特征在于,應用于智能網功能實體,所述智能網功能實體包 括N個業(yè)務數(shù)據(jù)單元SDU和Μ個業(yè)務運行環(huán)境SEE,所述N個SDU組成多個集群,一個集群包括 至少一個SDU,SDU與數(shù)據(jù)庫--對應,所述N個SDU中的每個SDU屬于一個或多個集群,N、M均 為正整數(shù),所述方法包括: SEE接收用戶發(fā)送的智能業(yè)務的業(yè)務請求; 所述SEE根據(jù)所述業(yè)務請求中攜帶的所述智能業(yè)務的業(yè)務標識確定所述智能業(yè)務對應 的集群,所述智能業(yè)務對應的集群包括所述智能業(yè)務對應的集群的集群方式以及所述智能 業(yè)務對應的集群中的SDU; 所述SEE根據(jù)所述智能業(yè)務對應的集群的集群方式在所述智能業(yè)務對應的集群中的 SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù)。6. 根據(jù)權利要求5所述的方法,其特征在于,所述SEE根據(jù)所述智能業(yè)務對應的集群的 集群方式在所述智能業(yè)務對應的集群中的SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的 數(shù)據(jù),包括: 當所述智能業(yè)務對應的集群為負載均衡集群時,所述SEE在所述智能業(yè)務對應的集群 中的第一目標SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù),所述第一目標SDU對應 的數(shù)據(jù)庫為所述智能業(yè)務對應的集群中的用于存儲所述用戶的所述智能業(yè)務的數(shù)據(jù)的數(shù) 據(jù)庫; 當所述智能業(yè)務對應的集群為高可用性集群時,所述SEE在所述智能業(yè)務對應的集群 中的全部SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù)。7. 根據(jù)權利要求6所述的方法,其特征在于,當所述集群為負載均衡集群時,所述集群 中的預設的SDU對應預設的號段,所述預設的SDU對應的數(shù)據(jù)庫用于存儲使用所述預設的號 段的用戶的所述智能業(yè)務的數(shù)據(jù)。8. 根據(jù)權利要求7所述的方法,其特征在于,當所述智能業(yè)務對應的集群為負載均衡集 群時,所述SEE在所述智能業(yè)務對應的集群中的第一目標SDU對應的數(shù)據(jù)庫中更新與所述智 能業(yè)務相關的數(shù)據(jù),包括: 當所述智能業(yè)務對應的集群為負載均衡集群時,所述SEE確定所述用戶對應的號碼所 屬的預設的號段; 所述SEE將所述用戶對應的號碼所屬的預設的號段對應的預設的SDU確定為第一目標 SDU; 所述SEE向所述第一目標SDU發(fā)送寫入請求; 所述第一目標SDU接收所述寫入請求,并在所述第一目標SDU對應的數(shù)據(jù)庫中更新與所 述智能業(yè)務相關的數(shù)據(jù)。9. 根據(jù)權利要求6所述的方法,其特征在于,當所述智能業(yè)務對應的集群為高可用性集 群時,所述SEE在所述智能業(yè)務對應的集群中的全部SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè) 務相關的數(shù)據(jù),包括: 所述SEE向所述智能業(yè)務對應的集群中的第二目標SDU發(fā)送多寫請求,所述第二目標 SDU為所述智能業(yè)務對應的集群中的任意一個SDU; 所述第二目標SDU接收所述SEE發(fā)送的多寫請求,并根據(jù)所述多寫請求將與所述智能業(yè) 務相關的數(shù)據(jù)更新到所述智能業(yè)務對應的集群中的全部SDU對應的數(shù)據(jù)庫中。10. 根據(jù)權利要求5-8任一項所述的方法,其特征在于,所述方法還包括: 當所述智能業(yè)務對應的集群為負載均衡集群時,所述SEE在所述第一目標SDU對應的數(shù) 據(jù)庫中查詢所述用戶的所述智能業(yè)務的業(yè)務數(shù)據(jù)和用戶數(shù)據(jù),并根據(jù)所述業(yè)務數(shù)據(jù)和用戶 數(shù)據(jù)判斷發(fā)起所述智能業(yè)務的用戶是否合法; 當所述智能業(yè)務對應的集群為高可用性集群時,所述SEE在所述智能業(yè)務對應的集群 中的任意一個SDU對應的數(shù)據(jù)庫中查詢所述用戶的所述智能業(yè)務的業(yè)務數(shù)據(jù)和用戶數(shù)據(jù), 并根據(jù)所述業(yè)務數(shù)據(jù)和用戶數(shù)據(jù)判斷發(fā)起所述智能業(yè)務的用戶是否合法。11. 一種更新數(shù)據(jù)的裝置,其特征在于,所述裝置包括N個業(yè)務數(shù)據(jù)單元SDU和Μ個業(yè)務 運行環(huán)境SEE,所述N個SDU組成多個集群,一個集群包括至少一個SDU,SDU與數(shù)據(jù)庫一一對 應,所述N個SDU中的每個SDU屬于一個或多個集群,N、M均為正整數(shù);其中, SEE,用于接收用戶發(fā)送的智能業(yè)務的業(yè)務請求; 所述SEE,還用于根據(jù)所述業(yè)務請求中攜帶的所述智能業(yè)務的業(yè)務標識確定所述智能 業(yè)務對應的集群,所述智能業(yè)務對應的集群包括所述智能業(yè)務對應的集群的集群方式以及 所述智能業(yè)務對應的集群中的SDU; 所述SEE,還用于根據(jù)所述智能業(yè)務對應的集群的集群方式在所述智能業(yè)務對應的集 群中的SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù)。12. 根據(jù)權利要求11所述的裝置,其特征在于,所述SEE具體用于: 當所述智能業(yè)務對應的集群為負載均衡集群時,在所述智能業(yè)務對應的集群中的第一 目標SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù),所述第一目標SDU對應的數(shù)據(jù)庫 為所述智能業(yè)務對應的集群中的用于存儲所述用戶的所述智能業(yè)務的數(shù)據(jù)的數(shù)據(jù)庫; 當所述智能業(yè)務對應的集群為高可用性集群時,在所述智能業(yè)務對應的集群中的全部 SDU對應的數(shù)據(jù)庫中更新與所述智能業(yè)務相關的數(shù)據(jù)。13. 根據(jù)權利要求12所述的裝置,其特征在于,當所述集群為負載均衡集群時,所述集 群中的預設的SDU對應預設的號段,所述預設的SDU對應的數(shù)據(jù)庫用于存儲使用所述預設的 號段的用戶的所述智能業(yè)務的數(shù)據(jù)。14. 根據(jù)權利要求13所述的裝置,其特征在于,所述SEE具體用于: 當所述智能業(yè)務對應的集群為負載均衡集群時,確定所述用戶對應的號碼所屬的預設 的號段; 將所述用戶對應的號碼所屬的預設的號段對應的預設的SDU確定為第一目標SDU; 向所述第一目標SDU發(fā)送寫入請求; 所述第一目標SDU,用于接收所述寫入請求,并在所述第一目標SDU對應的數(shù)據(jù)庫中更 新與所述智能業(yè)務相關的數(shù)據(jù)。15. 根據(jù)權利要求12所述的裝置,其特征在于,所述SEE具體用于: 當所述智能業(yè)務對應的集群為高可用性集群時,向所述智能業(yè)務對應的集群中的第二 目標SDU發(fā)送多寫請求,所述第二目標SDU為所述智能業(yè)務對應的集群中的任意一個SDU; 所述第二目標SDU,用于接收所述SEE發(fā)送的多寫請求,并根據(jù)所述多寫請求將與所述 智能業(yè)務相關的數(shù)據(jù)更新到所述智能業(yè)務對應的集群中的全部SDU對應的數(shù)據(jù)庫中。16. 根據(jù)權利要求11-14任一項所述的裝置,其特征在于,所述SEE還用于: 當所述智能業(yè)務對應的集群為負載均衡集群時,在所述第一目標SDU對應的數(shù)據(jù)庫中 查詢所述用戶的所述智能業(yè)務的業(yè)務數(shù)據(jù)和用戶數(shù)據(jù),并根據(jù)所述業(yè)務數(shù)據(jù)和用戶數(shù)據(jù)判 斷發(fā)起所述智能業(yè)務的用戶是否合法; 當所述智能業(yè)務對應的集群為高可用性集群時,在所述智能業(yè)務對應的集群中的任意 一個SDU對應的數(shù)據(jù)庫中查詢所述用戶的所述智能業(yè)務的業(yè)務數(shù)據(jù)和用戶數(shù)據(jù),并根據(jù)所 述業(yè)務數(shù)據(jù)和用戶數(shù)據(jù)判斷發(fā)起所述智能業(yè)務的用戶是否合法。17. -種更新數(shù)據(jù)的裝置,其特征在于,包括存儲器和處理器,所述存儲器中用于存儲 代碼,以便處理器執(zhí)行與該代碼相應的動作,所述處理器運行N個業(yè)務數(shù)據(jù)單元SDU和Μ個業(yè) 務運行環(huán)境SEE,所述Ν個SDU組成多個集群,一個集群包括至少一個SDU,SDU與數(shù)據(jù)庫一一 對應,所述N個SDU中的每個SDU屬于一個或多個集群,N、M均為正整數(shù); 所述裝置用于執(zhí)行如權利要求5至權利要求10中的任一項權利要求所述的方法。
【文檔編號】G06F17/30GK105975614SQ201610332585
【公開日】2016年9月28日
【申請日】2016年5月18日
【發(fā)明人】王美玲, 李明
【申請人】華為技術有限公司