數(shù)據(jù)庫處理方法、裝置及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機領(lǐng)域,具體而言,涉及一種數(shù)據(jù)庫處理方法、裝置及系統(tǒng)。
【背景技術(shù)】
[0002]如今,隨著網(wǎng)上業(yè)務的增加,所要存儲的數(shù)據(jù)也在大量增加,比如,電子相冊、電子購物、電子詞典等等都需要存儲數(shù)據(jù),這對數(shù)據(jù)庫就提出了很大的挑戰(zhàn)。當業(yè)務量增長到超越單個數(shù)據(jù)庫容量時,就需要使用多個數(shù)據(jù)庫;或者,根據(jù)業(yè)務需要建立并使用多個不同的數(shù)據(jù)庫,這樣就出現(xiàn)某一應用系統(tǒng)使用多數(shù)據(jù)庫集群的情況。對于上述多數(shù)據(jù)庫集群的情況,在每一次請求處理該應用系統(tǒng)的數(shù)據(jù)庫時,如圖1所示,應用系統(tǒng)A向應用系統(tǒng)B發(fā)起處理請求Rl時,會根據(jù)負載均衡、容量平均分布或者集群可用性等因素進行決策,以得到所要使用的數(shù)據(jù)庫(例如,DB02)。
[0003]然而,由于數(shù)據(jù)庫系統(tǒng)通常提供的是單個數(shù)據(jù)庫服務器上進行唯一性約束校驗,其中,唯一性約束校驗指的是保證在一個字段或者一組字段里或一個數(shù)據(jù)庫中的數(shù)據(jù)與表中其它行或數(shù)據(jù)庫中其他數(shù)據(jù)相比是唯一的。因而,當動態(tài)地選擇不同數(shù)據(jù)庫時,則無法直接利用數(shù)據(jù)庫的唯一約束對數(shù)據(jù)進行冪等校驗,其中,冪等校驗,以函數(shù)為例,指的是被自己重復運算的結(jié)果仍等于它自己的函數(shù),在數(shù)據(jù)庫處理過程中指的就是對于重復的請求應處理相同的數(shù)據(jù)庫。如圖2所示,當處理請求為R2時,其中,R2 = R1,處理的數(shù)據(jù)庫卻由DB02變成了 DB03,而使得冪等校驗失敗,從而導致系統(tǒng)重復處理相同的處理請求,進而影響了數(shù)據(jù)庫的處理效率。
[0004]進一步,為了解決上述問題,目前現(xiàn)有技術(shù)中提供了一種可能的解決方案:選擇固定數(shù)據(jù)庫,通過為處理請求所對應的唯一 ID設(shè)置固定的算法以實現(xiàn)固定選擇對應的數(shù)據(jù)庫,以便于進行唯一性約束校驗。然而,如圖3所示,選擇固定數(shù)據(jù)庫的方案存在不能根據(jù)數(shù)據(jù)庫的可用情況進行靈活選擇,從而當固定選擇的數(shù)據(jù)庫不可用時,處理請求無法處理進而造成大量的損失。
[0005]針對上述的問題,目前尚未提出有效的解決方案。
【發(fā)明內(nèi)容】
[0006]本發(fā)明實施例提供了一種數(shù)據(jù)庫處理方法、裝置及系統(tǒng),以至少解決由于采用現(xiàn)有的固定選擇待處理數(shù)據(jù)庫的所導致的在上述數(shù)據(jù)庫不可用時,無法調(diào)整待處理數(shù)據(jù)庫進而降低數(shù)據(jù)處理效率的技術(shù)問題。
[0007]根據(jù)本發(fā)明實施例的一個方面,提供了一種數(shù)據(jù)庫處理方法,包括:第一應用系統(tǒng)生成待發(fā)送的第一數(shù)據(jù)庫處理請求;上述第一應用系統(tǒng)根據(jù)上述第一數(shù)據(jù)庫處理請求的標識從多個可用數(shù)據(jù)庫中獲取與上述第一數(shù)據(jù)庫處理請求對應的第一可用數(shù)據(jù)庫,其中,上述多個可用數(shù)據(jù)庫位于第二應用系統(tǒng)中;上述第一應用系統(tǒng)將上述第一數(shù)據(jù)庫處理請求發(fā)送到獲取的上述第一可用數(shù)據(jù)庫。
[0008]根據(jù)本發(fā)明實施例的另一方面,還提供了一種數(shù)據(jù)庫處理裝置,位于第一應用系統(tǒng)中,包括:第一生成單元,用于生成待發(fā)送的第一數(shù)據(jù)庫處理請求;第一獲取單元,用于根據(jù)上述第一數(shù)據(jù)庫處理請求的標識從多個可用數(shù)據(jù)庫中獲取與上述第一數(shù)據(jù)庫處理請求對應的第一可用數(shù)據(jù)庫,其中,上述多個可用數(shù)據(jù)庫位于第二應用系統(tǒng)中;第一發(fā)送單元,用于將上述第一數(shù)據(jù)庫處理請求發(fā)送到獲取的上述第一可用數(shù)據(jù)庫。
[0009]根據(jù)本發(fā)明實施例的又一方面,還提供了一種數(shù)據(jù)庫處理系統(tǒng),包括:第一應用系統(tǒng),用于生成待發(fā)送的第一數(shù)據(jù)庫處理請求,并根據(jù)上述第一數(shù)據(jù)庫處理請求的標識從多個可用數(shù)據(jù)庫中獲取與上述第一數(shù)據(jù)庫處理請求對應的第一可用數(shù)據(jù)庫,將上述第一數(shù)據(jù)庫處理請求發(fā)送到獲取的上述第一可用數(shù)據(jù)庫,其中,上述多個可用數(shù)據(jù)庫位于第二應用系統(tǒng)中;上述第二應用系統(tǒng),用于檢測上述多個可用數(shù)據(jù)庫中是否至少有一個上述數(shù)據(jù)庫出故障,并在檢測到上述多個可用數(shù)據(jù)庫中至少一個上述數(shù)據(jù)庫出故障時,更新上述多個可用數(shù)據(jù)庫后得到的更新后的多個可用數(shù)據(jù)庫,發(fā)送上述更新后的多個可用數(shù)據(jù)庫到上述第一應用系統(tǒng)。
[0010]在本發(fā)明實施例中,通過根據(jù)第一應用系統(tǒng)生成的第一數(shù)據(jù)庫處理請求的標識從多個可用數(shù)據(jù)庫中獲取與上述第一數(shù)據(jù)庫處理請求相對應的第一可用數(shù)據(jù)庫,其中,上述多個可用數(shù)據(jù)庫位于第二應用系統(tǒng),而且上述多個可用數(shù)據(jù)庫中并不包含不可用數(shù)據(jù)庫,從而避免了上述不可用數(shù)據(jù)庫所造成的數(shù)據(jù)處理效率低的問題,進一步,由第一應用系統(tǒng)直接獲取與上述第一數(shù)據(jù)庫處理請求相對應的第一可用數(shù)據(jù)庫,避免了由于數(shù)據(jù)庫出故障而無法及時調(diào)整可用數(shù)據(jù)庫的問題,從而實現(xiàn)在發(fā)送數(shù)據(jù)庫處理請求的系統(tǒng)上直接獲取相應的可用數(shù)據(jù)庫,達到了提高調(diào)整可用數(shù)據(jù)庫的靈活度的目的,從而實現(xiàn)了提高數(shù)據(jù)處理效率的技術(shù)效果,進而解決了由于采用現(xiàn)有的固定選擇待處理數(shù)據(jù)庫的所導致的在上述數(shù)據(jù)庫不可用時,無法調(diào)整待處理數(shù)據(jù)庫進而降低數(shù)據(jù)處理效率的技術(shù)問題。
【附圖說明】
[0011]此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中:
[0012]圖1是根據(jù)現(xiàn)有技術(shù)的一種數(shù)據(jù)庫處理方法的示意圖;
[0013]圖2是根據(jù)現(xiàn)有技術(shù)的另一種數(shù)據(jù)庫處理方法的示意圖;
[0014]圖3是根據(jù)現(xiàn)有技術(shù)的又一種數(shù)據(jù)庫處理方法的示意圖;
[0015]圖4是根據(jù)本發(fā)明實施例的一種可選地數(shù)據(jù)庫處理方法的應用場景示意圖;
[0016]圖5是根據(jù)本發(fā)明實施例的一種可選地數(shù)據(jù)庫處理方法的流程示意圖;
[0017]圖6是根據(jù)本發(fā)明實施例的一種可選地數(shù)據(jù)庫處理方法的示意圖;
[0018]圖7是根據(jù)本發(fā)明實施例的另一種可選地數(shù)據(jù)庫處理方法的示意圖;
[0019]圖8是根據(jù)本發(fā)明實施例的另一種可選地數(shù)據(jù)庫處理方法的流程示意圖;
[0020]圖9是根據(jù)本發(fā)明實施例的一種可選地數(shù)據(jù)庫處理裝置的示意圖;以及
[0021]圖10是根據(jù)本發(fā)明實施例的另一種可選地數(shù)據(jù)庫處理裝置的示意圖。
【具體實施方式】
[0022]為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分的實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應當屬于本發(fā)明保護的范圍。
[0023]需要說明的是,本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數(shù)據(jù)在適當情況下可以互換,以便這里描述的本發(fā)明的實施例能夠以除了在這里圖示或描述的那些以外的順序?qū)嵤4送?,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。
[0024]實施例1
[0025]根據(jù)本發(fā)明實施例,提供了一種數(shù)據(jù)庫處理方法實施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
[0026]可選地,在本實施例中,上述數(shù)據(jù)庫處理可以但不限于應用于如圖4所示的網(wǎng)絡(luò)環(huán)境中,其中,用于發(fā)送數(shù)據(jù)庫處理請求的第一應用系統(tǒng)可以但不限于位于終端402中,包括上述待處理的數(shù)據(jù)庫的第二應用系統(tǒng)可以但不限于位于終端404中,其中,上述終端404可以但不限于用服務器替換??蛇x地,在本實施例中,上述待處理的數(shù)據(jù)庫可以包括但不限于一個或多個可用數(shù)據(jù)庫,進一步,上述待處理的數(shù)據(jù)庫可以集中保存在一個終端404 (例如,圖4所示的終端404-1)中,也可以分別保存在不同的終端404(例如,圖4所示的終端404-1和終端404-2)中??蛇x地,在本實施例中,上述數(shù)據(jù)庫處理可以但不限于集成在一個終端中實現(xiàn)。可選地,在本實施例中,上述網(wǎng)絡(luò)可以包括但不限于:廣域網(wǎng)、城域網(wǎng)、局域網(wǎng)。上述終端可以包括但不限于:手機、平板電腦、筆記本電腦、PC機。上述只是一種示例,本實施例對此不做任何限定。
[0027]在上述運行環(huán)境下,本申請?zhí)峁┝巳鐖D5所示的數(shù)據(jù)庫處理。圖5是根據(jù)本發(fā)明實施例一的數(shù)據(jù)庫處理的流程圖,包括:
[0028]S502,第一應用系統(tǒng)生成待發(fā)送的第一數(shù)據(jù)庫處理請求;
[0029]S504,第一應用系統(tǒng)根據(jù)第一數(shù)據(jù)庫處理請求的標識從多個可用數(shù)據(jù)庫中獲取與第一數(shù)據(jù)庫處理請求對應的第一可用數(shù)據(jù)庫,其中,多個可用數(shù)據(jù)庫位于第二應用系統(tǒng)中;
[0030]S506,第一應用系統(tǒng)將第一數(shù)據(jù)庫處理請求發(fā)送到獲取的第一可用數(shù)據(jù)庫。
[0031]可選地,在本實施例中,上述數(shù)據(jù)庫處理可以但不限于應用于對多個數(shù)據(jù)庫的冪等校驗控制過程中,以防止在數(shù)據(jù)庫處理過程中第一應用系統(tǒng)生成的重復的數(shù)據(jù)庫處理請求對數(shù)據(jù)進行重復的處理。例如,以電子支付為例,假設(shè)電子購物應用系統(tǒng)A生成購買商品a的支付訂單,請求對該訂單進行支付,為了防止用戶的重復支付,銀行支付系統(tǒng)B將可以但不限于采用本實施例中的數(shù)據(jù)庫處理,以實現(xiàn)根據(jù)上述請求從系統(tǒng)中的多個可用的數(shù)據(jù)庫中獲取第一可用數(shù)據(jù)庫以執(zhí)行支付操作,且在第一可用數(shù)據(jù)庫中對上述支付操作執(zhí)行冪等校驗,從而達到避免用戶因重復支付同一訂單而造成經(jīng)濟損失。上述舉例只是一種示例,本實施例對此不做任何限定。
[0032]可選地,在本實施例中,第一應用系統(tǒng)可以但不限于根據(jù)第一數(shù)據(jù)庫處理請求的標識從多個可用數(shù)據(jù)庫中獲取與上述第一數(shù)據(jù)庫處理請求相對應的第一可用數(shù)據(jù)庫,以構(gòu)成第一應用系統(tǒng)生成的數(shù)據(jù)庫處理請求與第二應用系統(tǒng)中的可用數(shù)據(jù)庫相對應的映射關(guān)系,并將上述映射關(guān)系保存到第一應用系統(tǒng)中,從而達到根據(jù)上述映射關(guān)系直接發(fā)送數(shù)據(jù)庫處理請求到相應可用數(shù)據(jù)庫的目的。
當前第1頁
1 
2 
3 
4 
5 
6