两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

跨庫事務處理方法及裝置的制造方法

文檔序號:9687454閱讀:430來源:國知局
跨庫事務處理方法及裝置的制造方法
【專利說明】跨庫事務處理方法及裝置 【技術領域】
[0001] 本發(fā)明涉及數(shù)據(jù)庫技術領域,尤其涉及一種跨庫事務處理方法及裝置。 【【背景技術】】
[0002] 數(shù)據(jù)庫拆分是一種提升系統(tǒng)容量的有效方式,主要是把在一個數(shù)據(jù)庫中處理的數(shù) 據(jù)按照某種規(guī)則分拆到多個數(shù)據(jù)庫中,降低單個數(shù)據(jù)庫的壓力。目前數(shù)據(jù)庫拆分包括垂直 拆分和水平拆分。其中,垂直拆分是按照功能劃分,把不同功能的數(shù)據(jù)分別放到不同的數(shù)據(jù) 庫中;水平拆分是將一張表的數(shù)據(jù)拆分到多張同樣的表中,一般采用哈?;痑sh)散列等方 式保證拆分結果的均勻性。
[0003] 在上述分庫的應用場景中,有可能涉及到跨庫事務,即需要在不同數(shù)據(jù)庫之間進 行操作的事務。跨庫事務要求滿足一致性,即對不同數(shù)據(jù)庫的操作結果要么都成功要么都 失敗,否則就會出現(xiàn)錯誤。由于在現(xiàn)有垂直拆分或水平拆分方式下很少出現(xiàn)跨庫事務,所W 現(xiàn)有技術中尚不存在處理跨庫事務的成熟方案。 【
【發(fā)明內容】

[0004] 本發(fā)明的多個方面提供一種跨庫事務處理方法及裝置,用W實現(xiàn)跨庫事務的處 理。
[0005] 本發(fā)明的一方面,提供一種跨庫事務處理方法,包括:
[0006] 接收業(yè)務請求,所述業(yè)務請求包括業(yè)務交易涉及的交易信息;
[0007] 根據(jù)所述交易信息,分別記錄所述業(yè)務交易涉及的多個數(shù)據(jù)庫參與所述業(yè)務交易 的行為信息,并將所述業(yè)務交易的處理狀態(tài)標記為待提交狀態(tài),所述待提交狀態(tài)是指所有 數(shù)據(jù)庫均滿足參與所述業(yè)務交易的條件后可W對每個數(shù)據(jù)庫進行操作的業(yè)務處理狀態(tài);
[0008] 在所述待提交狀態(tài)下,根據(jù)每個數(shù)據(jù)庫參與所述業(yè)務交易的行為信息對每個數(shù)據(jù) 庫進行至少一次操作,直到所有數(shù)據(jù)庫參與所述業(yè)務交易的行為結果達到一致為止。
[0009] 本發(fā)明的另一方面,提供一種跨庫事務處理裝置,包括:
[0010] 接收模塊,用于接收業(yè)務請求,所述業(yè)務請求包括業(yè)務交易涉及的交易信息;
[0011] 第一處理模塊,用于根據(jù)所述交易信息,分別記錄所述業(yè)務交易涉及的多個數(shù)據(jù) 庫參與所述業(yè)務交易的行為信息,并將所述業(yè)務交易的處理狀態(tài)標記為待提交狀態(tài),所述 待提交狀態(tài)是指所有數(shù)據(jù)庫均滿足參與所述業(yè)務交易的條件后可W對每個數(shù)據(jù)庫進行操 作的業(yè)務處理狀態(tài);
[0012] 第二處理模塊,用于在所述待提交狀態(tài)下,根據(jù)每個數(shù)據(jù)庫參與所述業(yè)務交易的 行為信息對每個數(shù)據(jù)庫進行至少一次操作,直到所有數(shù)據(jù)庫參與所述業(yè)務交易的行為結果 達到一致為止。
[0013] 在本發(fā)明技術方案中,接收業(yè)務請求后,根據(jù)業(yè)務請求包括的交易信息,分別記錄 業(yè)務交易涉及的多個數(shù)據(jù)庫參與該業(yè)務交易的行為信息,并將該業(yè)務交易的處理狀態(tài)標記 為待提交狀態(tài),在待提交狀態(tài)下,根據(jù)上述記錄的行為信息分別對每個數(shù)據(jù)庫進行至少一 次操作,直到所有數(shù)據(jù)庫參與業(yè)務交易的行為結果達到一致。通過記錄每個數(shù)據(jù)庫參與業(yè) 務交易的行為信息,并對業(yè)務交易的處理狀態(tài)進行標記,可W保證多次執(zhí)行每個數(shù)據(jù)庫參 與業(yè)務交易的行為直到所有數(shù)據(jù)庫參與業(yè)務交易的行為結果達到一致,因此,不會出現(xiàn)某 些數(shù)據(jù)庫的提交結果成功某些數(shù)據(jù)庫的提交結果不成功的情況,保證了事務提交結果的一 致性。 【【附圖說明】】
[0014] 為了更清楚地說明本發(fā)明實施例中的技術方案,下面將對實施例或現(xiàn)有技術描述 中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實 施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可W根據(jù)送些附 圖獲得其他的附圖。
[0015] 圖1為本發(fā)明一實施例提供的跨庫事務處理方法的流程示意圖;
[0016] 圖2為本發(fā)明另一實施例提供的跨庫事務處理方法的流程示意圖;
[0017] 圖3為本發(fā)明又一實施例提供的跨庫事務處理方法的流程示意圖;
[0018] 圖4為本發(fā)明又一實施例提供的跨庫事務處理方法的流程示意圖;
[0019] 圖5為本發(fā)明一實施例提供的跨庫事務處理裝置的結構示意圖;
[0020] 圖6為本發(fā)明另一實施例提供的跨庫事務處理裝置的結構示意圖。 【【具體實施方式】】
[0021] 為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例 中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是 本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員 在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0022] 在單數(shù)據(jù)庫的應用場景中,當數(shù)據(jù)庫的容量達到瓶頸后,通常是將數(shù)據(jù)庫中的數(shù) 據(jù)拆分到多個數(shù)據(jù)庫中,W應對更高容量的服務需求。拆分方法包括垂直拆分和水平拆分。 對于賬務業(yè)務來說,由于業(yè)務模型非常簡單,主要提供做賬服務及賬務信息查詢服務。其中 做賬服務包括存入(如銀行的現(xiàn)金存入,或其他銀行向本行的跨行打款)、提現(xiàn)(如銀行的 現(xiàn)金提款,或向他行匯款)W及轉賬(如銀行內部客戶間的資金劃撥)。因此,對于賬務業(yè) 務來說無法做到業(yè)務的垂直剝離,所W不適合采用垂直拆分的方式。為達到將賬務服務的 事務熱點及存儲熱點均勻分散到各分庫上,對于賬務數(shù)據(jù)可W采用水平拆分的方式。本實 施例針對賬務數(shù)據(jù)提供了一種新的水平拆分方法,即按照賬號編號做拆分。
[0023] 假設賬號編號的生成規(guī)則為;6位業(yè)務前綴+10位遞增編號,則賬號編號生成范例 如下表1不:
[0024] 表 1
[00 巧]
[0026] 后10位遞增編號的生成方式為每產生一個新的賬號編號,在上一個賬號編號的 基礎上加1遞增。
[0027] 基于上述,若期望將數(shù)據(jù)庫由1個拆成100個,則用賬號編號按100取模,得到的 結果作為數(shù)據(jù)庫水平拆分的依據(jù),通過送種方式就可W將根據(jù)賬號編號將賬務數(shù)據(jù)平均拆 分到100個數(shù)據(jù)庫中。若容量要求進一步提升,亦可考慮進一步對賬號編號按1000取模, 送樣就可W按照賬號編號將賬務數(shù)據(jù)由1個數(shù)據(jù)庫拆分到1000個數(shù)據(jù)庫中。值的說明的 是,具體按多大數(shù)值對賬號編號取模,可根據(jù)實際業(yè)務規(guī)模對容量的要求評估決定。
[0028] 舉例說明,假設活期賬號對應的賬務數(shù)據(jù)需要由原來的1個庫拆分到100個庫中。 對賬號編號Μ :1000010009988012,賬號編號N :1000010239168099分別進行100取模,則賬 號編號Μ的取模運算結果為:1000010009988012% 100 = 12 ;賬號編號N的取模運算結果 為:1000010239168099% 100 = 99。則根據(jù)運算結果,我們需要將賬號編號Μ的賬務數(shù)據(jù)置 入編號為12的數(shù)據(jù)庫,庫名可設為ACC0UNT_12 ;賬號編號Ν的賬務數(shù)據(jù)置入編號為99的 數(shù)據(jù)庫,庫名可設為ACC0UNT_99。
[0029] 無論是對上述賬務業(yè)務進行分庫后,還是對現(xiàn)有技術中的分庫場景,都會出現(xiàn)跨 庫事務,對于賬務業(yè)務分庫后出現(xiàn)跨庫事務的場景更多。例如,對于兩個客戶的賬戶資金劃 撥來說,賬號編號Μ轉賬100元給賬號編號N,賬號編號Μ和賬號編號N的賬務數(shù)據(jù)在不同 的數(shù)據(jù)庫中,于是出現(xiàn)了跨庫事務。
[0030] 對于賬號編號Μ和賬號編號Ν發(fā)生的一筆轉賬,必須做出如下保證:
[0031] 賬號編號Μ扣款成功,賬號編號Ν加款成功,對外返回轉賬成功結果;
[0032] 賬號編號Μ扣款失敗,賬號編號Ν未加款,對外返回轉賬失敗結果;
[0033] 而如下情況則禁止出現(xiàn):
[0034] 賬號編號Μ扣款成功,賬號編號Ν未加款;
[0035] 賬號編號Μ未扣款,賬號編號Ν加款成功;
[0036] 也就是說,轉賬過程中賬號編號Μ扣款及賬號編號Ν加款送件事必須滿足一致性, 要么同時成功,要么同時失敗,否則會出現(xiàn)資金處理出錯。由于現(xiàn)有技術不存在解決上述問 題的技術方案,本發(fā)明實施例提供一種跨庫事務處理方法。
[0037] 圖1為本發(fā)明一實施例提供的跨庫事務處理方法的流程示意圖。如圖1所示,該 方法包括:
[0038] 101、接收業(yè)務請求,該業(yè)務請求包括業(yè)務交易涉及的交易信息。
[0039] 102、根據(jù)上述交易信息,分別記錄上述
當前第1頁1 2 3 4 5 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
保定市| 庆阳市| 新津县| 永福县| 东兰县| 通榆县| 罗田县| 宾阳县| 阳高县| 咸丰县| 庆城县| 台中县| 曲水县| 卫辉市| 隆昌县| 昌江| 新化县| 峨眉山市| 托克逊县| 铜川市| 清河县| 武平县| 永泰县| 鹤壁市| 吴忠市| 铜山县| 高雄市| 花垣县| 辰溪县| 嵊泗县| 台东市| 清水河县| 怀仁县| 京山县| 手机| 通江县| 铁岭市| 丰台区| 广宁县| 光山县| 灵石县|