專利名稱:檢查點操作方法、裝置及系統(tǒng)的制作方法
技術(shù)領域:
本發(fā)明實施例涉及計算機技術(shù)和數(shù)據(jù)庫技術(shù),尤其涉及一種檢查點操作方法、裝置及系統(tǒng)。
背景技術(shù):
檢查點(checkpoint)操作是數(shù)據(jù)庫中的一個重要功能,目前所有的關(guān)系型數(shù)據(jù)庫系統(tǒng)均支持該功能。數(shù)據(jù)庫中通過周期性地運行檢查點操作,并在檢測點操作結(jié)束后生成日志,使得數(shù)據(jù)庫可以根據(jù)已生成的日志對數(shù)據(jù)庫系統(tǒng)進行恢復。從而,當數(shù)據(jù)庫發(fā)生故障時,根據(jù)日志即可對數(shù)據(jù)庫系統(tǒng)進行恢復,能夠有效地縮短對數(shù)據(jù)庫系統(tǒng)進行恢復所消耗的時間。在檢查點操作的必要操作中包括將臟頁面從緩沖區(qū)中寫入磁盤的操作。其中,臟頁面是指在緩沖區(qū)中已被修改,而未被寫回到磁盤中的頁面。現(xiàn)有技術(shù)中,通過在數(shù)據(jù)庫中按照修改時間對臟頁面進行記錄,在運行檢查點操作時,可以將預設時間點之前的臟頁面從緩沖區(qū)中寫入磁盤,而不需要將緩沖區(qū)中的所有臟頁面全部從緩沖區(qū)中寫入磁盤。由于數(shù)據(jù)庫中未結(jié)束的事務對應的臟頁面,并不需要被寫入到磁盤中,而采用現(xiàn)有技術(shù)中的檢查點操作的方法時,在該預設時間點之前的所有臟頁面都將被寫入到磁盤,包括未結(jié)束的事務對應的臟頁面。因此,現(xiàn)有技術(shù)中的檢查點操作方法,會產(chǎn)生不必要的輸入輸出(Input/Output,I/O)請求,造成對系統(tǒng)資源不必要的占用,從而降低了數(shù)據(jù)庫系統(tǒng)的性能。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種檢查點操作方法、裝置及系統(tǒng),用于解決現(xiàn)有技術(shù)中檢查點操作方法降低數(shù)據(jù)庫系統(tǒng)性能的問題。本發(fā)明實施例的第一個方面是提供一種檢查點操作方法,包括:根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務,所述事務號為事務在起始時被分配的標識符;將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中。結(jié)合第一個方面提供的檢查點操作方法,在第一種可能的實現(xiàn)方式中,所述根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務包括:根據(jù)所述截止事務號,從對應關(guān)系中查找事務號小于或等于所述截止事務號的目標事務,所述對應關(guān)系中存儲有已結(jié)束事務的事務號與臟頁面的對應關(guān)系;相應地,所述將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中包括:根據(jù)所述對應關(guān)系,將與所述目標事務對應的臟頁面作為目標臟頁面;將所述目標臟頁面從所述緩沖區(qū)中寫入所述磁盤中,并從所述對應關(guān)系中將所述目標臟頁面與事務號的對應關(guān)系刪除。
結(jié)合第一個方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述根據(jù)所述截止事務號,從對應關(guān)系中查找事務號小于或等于所述截止事務號的目標事務包括:根據(jù)所述截止事務號,從所述對應關(guān)系中獲取事務號小于或等于所述截止事務號的目標事務;根據(jù)所述對應關(guān)系,獲取所述目標事務對應的臟頁面的數(shù)量;若所述數(shù)量大于或等于預設門限值,則選擇小于所述截止事務號的事務號作為本次檢查點操作的調(diào)整后的截止事務號;從所述對應關(guān)系中,查找事務號小于或等于所述調(diào)整后的截止事務號的目標事務。結(jié)合第一個方面的第一或第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述對應關(guān)系以哈希表的形式進行存儲。本發(fā)明實施例的第二個方面是提供一種檢查點操作裝置,包括:處理單元,用于根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務,所述事務號為事務在起始時被分配的標識符;寫入單元,用于將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中。結(jié)合第二個方面提供的檢查點操作裝置,在第一種可能的實現(xiàn)方式中,所述處理單元還用于:根據(jù)所述截止事務號,從對應關(guān)系中查找事務號小于或等于所述截止事務號的目標事務,所述對應關(guān)系中存儲有已結(jié)束事務的事務號與臟頁面的對應關(guān)系;相應地,所述寫入單元還用于:根據(jù)所述對應關(guān)系,將與所述目標事務對應的臟頁面作為目標臟頁面;將所述目標臟頁面從所述緩沖區(qū)中寫入所述磁盤中,并從所述對應關(guān)系中將所述目標臟頁面與事務號的對應關(guān)系刪除。結(jié)合第二個方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述處理單元還用于:根據(jù)所述截止事務號,從所述對應關(guān)系中獲取事務號小于或等于所述截止事務號的目標事務;根據(jù)所述對應關(guān)系,獲取所述目標事務對應的臟頁面的數(shù)量;若所述數(shù)量大于或等于預設門限值,則選擇小于所述截止事務號的事務號作為本次檢查點操作的調(diào)整后的截止事務號;從所述對應關(guān)系中,查找事務號小于或等于所述調(diào)整后的截止事務號的目標事務。結(jié)合第二個方面的第一種或第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述處理單元中的所述對應關(guān)系以哈希表的形式進行存儲。本發(fā)明實施例的第三個方面是提供一種服務器,包括上述檢查點操作裝置。本發(fā)明實施例的第四個方面是提供一種數(shù)據(jù)庫集群系統(tǒng),包括至少一個上述的服務器,所述至少一個服務器之間通信連接。本發(fā)明實施例提供的檢查點操作方法、裝置及系統(tǒng),根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務,將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中,由于不會將當前緩沖區(qū)中的臟頁面全部寫入磁盤中,而是將其中的事務號小于或等于截止事務號的事務對應的臟頁面從緩沖區(qū)中寫入磁盤中,能夠有效地減少不必要的I/o請求,提高系統(tǒng)資源的利用率,并提高數(shù)據(jù)庫系統(tǒng)的性能。
圖1為本發(fā)明實施例提供的檢查點操作方法的流程圖;圖2為本發(fā)明實施例提供的另一檢查點操作方法的流程圖;圖3為本發(fā)明實施例提供的檢查點操作裝置的結(jié)構(gòu)示意圖;圖4為本發(fā)明實施例提供的另一檢查點操作裝置的結(jié)構(gòu)示意圖;圖5為本發(fā)明實施例提供的服務器的結(jié)構(gòu)示意圖;圖6為本發(fā)明實施例提供的數(shù)據(jù)庫集群系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施例方式本發(fā)明各實施例對數(shù)據(jù)庫操作中的檢查點操作進行了改進,在對事務進行執(zhí)行的起始時,為該事務增加事務號(transaction identification)的標記。從而,根據(jù)事務的事務號,能夠獲知其與其他事務在執(zhí)行時的先后順序。檢查點操作裝置可以為服務器中的功能模塊,也可以為獨立的設備,用于執(zhí)行本發(fā)明各實施例中的檢查點操作的方法。本發(fā)明各實施例中的方法及裝置可以應用在多種需要進行檢查點操作的設備或系統(tǒng)中。圖1為本發(fā)明實施例提供的檢查點操作方法的流程圖,如圖1所示,該方法包括:101、根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務。其中,所述事務號為事務在起始時被分配的標識符。具體的,檢查點操作裝置在接收到檢查點操作指令時,從檢查點操作指令中獲取其中所攜帶的截止事務號。截止事務號為用于表征本次檢查點操作的截止點的事務號。事務號是每個事務在被執(zhí)行的起始時刻被分配的標識符。兩個不同的事務在被執(zhí)行時,將分別被分配不同的事務號。檢查點操作裝置根據(jù)檢查點操作指令中的截止事務號進行查找,對于事務號大于該截止事務號的事務,不作為本次檢查點操作的目標事務;將事務號小于或等于該截止事務號的事務作為目標事務。102、將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中。具體的,檢查點操作裝置在為開始執(zhí)行的事務分配事務號時,將記錄事務與事務號之間的對應關(guān)系。當事務中的頁面在緩沖區(qū)中被修改,而未寫入磁盤時,該被修改的頁面將成為臟頁面。相應地,根據(jù)臟頁面與事務之間的對應關(guān)系,以及事務與事務號之間的對應關(guān)系,可以獲得臟頁面與事務號之間的對應關(guān)系。檢查點操作裝置在查找到目標事務之后,根據(jù)目標事務的事務號與臟頁面之間的對應關(guān)系,查找到與目標事務對應的臟頁面,并將與目標事務對應的臟頁面作為目標臟頁面。檢查點操作裝置將查找到的臟頁面從緩沖區(qū)中寫入磁盤中,進而,緩沖區(qū)中的臟頁面在此之后成為干凈的頁面。干凈的頁面是指在緩沖區(qū)中和磁盤中已同步修改的頁面。
本發(fā)明實施例提供的檢查點操作方法,根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務,將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中,由于不會將當前緩沖區(qū)中的臟頁面全部寫入磁盤中,而是將其中的事務號小于或等于截止事務號的事務對應的臟頁面從緩沖區(qū)中寫入磁盤中,能夠有效地減少不必要的I/O請求,提高系統(tǒng)資源的利用率,并提高數(shù)據(jù)庫系統(tǒng)的性能。圖2為本發(fā)明實施例提供的另一檢查點操作方法的流程圖,如圖2所示,該方法包括:201、根據(jù)所述截止事務號,從對應關(guān)系中查找事務號小于或等于所述截止事務號的目標事務。其中,所述事務號為事務在起始時被分配的標識符,所述對應關(guān)系中存儲有已結(jié)束事務的事務號與臟頁面的對應關(guān)系。具體的,可以參見步驟101中所述的實現(xiàn)方式。進一步地,檢查點操作裝置中可以存儲有已結(jié)束事務的事務號與臟頁面的對應關(guān)系O在事務執(zhí)行過程中,檢查點操作裝置在事務執(zhí)行的起始為其分配事務號,并記錄臟頁面與事務之間的對應關(guān)系;在事務結(jié)束后,記錄已結(jié)束事務的事務號與臟頁面之間的對應關(guān)系,以便于根據(jù)截至事務號在該對應關(guān)系中進行查找。對應關(guān)系可以采用數(shù)據(jù)表的形式進行存儲。優(yōu)選的,所述對應關(guān)系可以采用哈希表的形式進行存儲,在采用哈希表的情況下,檢查點操作裝置從對應關(guān)系中查找數(shù)據(jù)的效
率更高。檢查點操作裝置在事務結(jié)束時,會判斷出其為已結(jié)束事務。對于未結(jié)束的事務,檢查點操作裝置不會存儲其與臟頁面的對應關(guān)系。因此,在該對應關(guān)系中能夠查找到的事務號,均為已結(jié)束事務的事務號。進一步地,根據(jù)所述截止事務號,從所述對應關(guān)系中獲取事務號小于或等于所述截止事務號的目標事務;根據(jù)所述對應關(guān)系,獲取所述目標事務對應的臟頁面的數(shù)量;若所述數(shù)量大于或等于預設門限值,則選擇小于所述截止事務號的事務號作為本次檢查點操作的調(diào)整后的截止事務號;從所述對應關(guān)系中,查找事務號小于或等于所述調(diào)整后的截止事務號的目標事務。具體的,檢查點操作裝置可以周期性地進行檢查點操作,也可以在接收到觸發(fā)消息之后啟動檢查點操作。由于該對應關(guān)系中存儲有事務號與臟頁面的對應關(guān)系,事務號能夠表征事務之間的執(zhí)行順序,并且對于已從緩沖區(qū)中寫入磁盤中的臟頁面,其與事務號之間的對應關(guān)系,將從該對應關(guān)系中刪除。因此,檢查點操作裝置根據(jù)上述對應關(guān)系獲取到的目標事務,是當前緩沖區(qū)中全部臟頁面對應的事務。檢查點操作裝置根據(jù)該對應關(guān)系能夠獲知當前緩沖區(qū)中的臟頁面的數(shù)量。檢查點操作裝置中可以預先設置一個門限值,該門限值表示單次可允許從緩沖區(qū)中寫入磁盤的臟頁面數(shù)量的最大值。當檢查點操作裝置判斷出當前緩沖區(qū)中臟頁面的數(shù)量小于該門限值時,則可以直接采用步驟101或201中所述的實現(xiàn)方式。當檢查點操作裝置判斷出當前緩沖區(qū)中臟頁面的數(shù)量大于或等于該門限值時,則可以減小本次檢查點操作需要采用的截止事務號,即選擇小于該檢查點操作指令中的截止事務號的事務號,作為調(diào)整后的截止事務號。在這樣的情況下,對于本次檢查點操作的截止事務號的選取,可以采用多種實現(xiàn)方式,例如,可以根據(jù)預設的步長值減小當前的截止事務號,或者可以根據(jù)該門限值反推出需要采用的截止事務號等。進而,檢查點操作裝置根據(jù)調(diào)整后的截止事務號,在上述對應關(guān)系中,查找事務號小于或等于所述調(diào)整后的截止事務號的目標事務。202、根據(jù)所述對應關(guān)系,將與所述目標事務對應的臟頁面作為目標臟頁面。具體的,由于上述對應關(guān)系中,存儲有臟頁面與事務號之間的對應關(guān)系,因此,檢查點操作裝置可以根據(jù)該對應關(guān)系,查找到與目標事務對應的臟頁面,將所查找的臟頁面作為目標臟頁面。203、將所述目標臟頁面從所述緩沖區(qū)中寫入所述磁盤中,并從所述對應關(guān)系中將所述目標臟頁面與事務號的對應關(guān)系刪除。具體的,可以參見步驟102中所述的實現(xiàn)方式。進一步地,檢查點操作裝置將查找到的目標臟頁面從緩沖區(qū)中寫入磁盤中,使得緩沖區(qū)中的臟頁面成為干凈的頁面。并且,檢查點操作裝置在將目標臟頁面從緩沖區(qū)中寫入磁盤中之后,還從上述對應關(guān)系中,將該目標臟頁面與事務號的對應關(guān)系刪除。從而,檢查點操作裝置無法從該對應關(guān)系中查找到該事務號對應的臟頁面,也無法從該對應關(guān)系中查找到與該臟頁面對應的事務號。本發(fā)明實施例提供的檢查點操作方法,根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務,在目標事務對應的臟頁面的數(shù)量大于或等于門限值的情況下,對本次檢查點操作需要采用的截止事務號進行調(diào)整,根據(jù)調(diào)整后的截止事務號重新獲取目標事務,將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中,由于不會將當前緩沖區(qū)中的臟頁面全部寫入磁盤中,而是將其中的事務號小于或等于截止事務號的事務對應的臟頁面從緩沖區(qū)中寫入磁盤中,并且限制了單次從緩沖區(qū)中寫入磁盤的臟頁面的數(shù)量,從而能夠有效地減少不必要的I/o請求,提高系統(tǒng)資源的利用率,并提高數(shù)據(jù)庫系統(tǒng)的性能。以下通過舉例對上述檢查點操作的方法進行說明。例如,事務號為0-500,檢查點操作指令中攜帶的截止事務號為400,則檢查點操作裝置將對事務號小于或等于400,并且已結(jié)束的事務,所對應的臟頁面進行處理,將其從緩沖區(qū)中寫入磁盤中;對于事務號大于400和/或未結(jié)束的事務,暫時不進行處理。需要說明的是,在本發(fā)明各實施例中僅對檢查點操作中將臟頁面從緩沖區(qū)中寫入磁盤中的步驟進行了說明,對于該步驟之后的操作以及檢查點操作中的其他操作步驟,可以采用與現(xiàn)有技術(shù)中類似的實現(xiàn)方式,此處不再贅述。圖3為本發(fā)明實施例提供的檢查點操作裝置的結(jié)構(gòu)示意圖,如圖3所示,該檢查點操作裝置包括:處理單元11和寫入單元12。處理單元11,用于根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務,所述事務號為事務在起始時被分配的標識符;寫入單元12,用于將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中。
本發(fā)明實施例提供的檢查點操作裝置,根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務,將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中,由于不會將當前緩沖區(qū)中的臟頁面全部寫入磁盤中,而是將其中的事務號小于或等于截止事務號的事務對應的臟頁面從緩沖區(qū)中寫入磁盤中,能夠有效地減少不必要的I/O請求,提高系統(tǒng)資源的利用率,并提高數(shù)據(jù)庫系統(tǒng)的性能。進一步地,所述處理單元11還用于:根據(jù)所述截止事務號,從對應關(guān)系中查找事務號小于或等于所述截止事務號的目標事務,所述對應關(guān)系中存儲有已結(jié)束事務的事務號與臟頁面的對應關(guān)系;相應地,所述寫入單元12還用于:根據(jù)所述對應關(guān)系,將與所述目標事務對應的臟頁面作為目標臟頁面;將所述目標臟頁面從所述緩沖區(qū)中寫入所述磁盤中,并從所述對應關(guān)系中將所述目標臟頁面與事務號的對應關(guān)系刪除。進一步地,所述處理單元11還用于:根據(jù)所述截止事務號,從所述對應關(guān)系中獲取事務號小于或等于所述截止事務號的目標事務;根據(jù)所述對應關(guān)系,獲取所述目標事務對應的臟頁面的數(shù)量;若所述數(shù)量大于或等于預設門限值,則選擇小于所述截止事務號的事務號作為本次檢查點操作的調(diào)整后的截止事務號;從所述對應關(guān)系中,查找事務號小于或等于所述調(diào)整后的截止事務號的目標事務。進一步地,所述處理單元11中的所述對應關(guān)系以哈希表的形式進行存儲。具體的,本發(fā)明實施例提供的檢查點操作裝置進行檢查點操作的方法,可以參見上述對應的方法實施例中所述的實現(xiàn)方式,此次不再贅述。本發(fā)明實施例提供的檢查點操作裝置,根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務,在目標事務對應的臟頁面的數(shù)量大于或等于門限值的情況下,對本次檢查點操作需要采用的截止事務號進行調(diào)整,根據(jù)調(diào)整后的截止事務號重新獲取目標事務,將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中,由于不會將當前緩沖區(qū)中的臟頁面全部寫入磁盤中,而是將其中的事務號小于或等于截止事務號的事務對應的臟頁面從緩沖區(qū)中寫入磁盤中,并且限制了單次從緩沖區(qū)中寫入磁盤的臟頁面的數(shù)量,從而能夠有效地減少不必要的I/o請求,提高系統(tǒng)資源的利用率,并提聞數(shù)據(jù)庫系統(tǒng)的性能。圖4為本發(fā)明實施例提供的另一檢查點操作裝置的結(jié)構(gòu)示意圖,如圖4所示,該檢查點操作裝置包括:處理器21、存儲器22、總線23和通信接口 24。處理器21、存儲器22和通信接口24之間通過總線23連接并完成相互間的通信。處理器21可能為單核或多核中央處理單元(Central Processing Unit, CPU),或者為特定集成電路(Application Specific Integrated Circuit, ASIC),或者為被配置成實施本發(fā)明實施例的一個或多個集成電路。存儲器22可以為高速RAM存儲器,也可以為非易失性存儲器(non-volatilememory),例如至少一個磁盤存儲器。存儲器22用于存放程序221。具體的,程序221中可以包括程序代碼,所述程序代碼包括計算機操作指令。處理器21運行程序221,以執(zhí)行:根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務,所述事務號為事務在起始時被分配的標識符;將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中。具體的,本發(fā)明實施例提供的檢查點操作裝置進行檢查點操作的方法,可以參見上述對應的方法實施例中所述的實現(xiàn)方式,此次不再贅述。圖5為本發(fā)明實施例提供的服務器的結(jié)構(gòu)示意圖,如圖5所示,該服務器2包括圖3或圖4所述的檢查點操作裝置I。具體的,本發(fā)明實施例提供的服務器進行檢查點操作的方法,可以參見上述對應的方法實施例中所述的實現(xiàn)方式,此次不再贅述。圖6為本發(fā)明實施例提供的數(shù)據(jù)庫集群系統(tǒng)的結(jié)構(gòu)示意圖,如圖6所示,該數(shù)據(jù)庫集群系統(tǒng)包括至少一個如圖5所述的服務器2,所述至少一個服務器2之間通信連接。具體的,數(shù)據(jù)庫集群系統(tǒng)可以為磁盤數(shù)據(jù)庫系統(tǒng)、集群數(shù)據(jù)庫系統(tǒng)、大規(guī)模并行處理(Massive Parallel Processing, MPP)數(shù)據(jù)庫系統(tǒng)。在數(shù)據(jù)庫集群系統(tǒng)中,需要各個節(jié)點均完成檢查點操作之后,整個集群系統(tǒng)的檢查點操作才算完成。其中,單個節(jié)點中進行檢查點操作的方法可以采用上述各實施例中所述的實現(xiàn)方式,此處不再贅述。具體的,本發(fā)明實施例提供的數(shù)據(jù)庫集群系統(tǒng)進行檢查點操作的方法,可以參見上述對應的方法實施例中所述的實現(xiàn)方式,此次不再贅述。本領域普通技術(shù)人員可以理解:實現(xiàn)上述各方法實施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成。前述的程序可以存儲于一計算機可讀取存儲介質(zhì)中。該程序在執(zhí)行時,執(zhí)行包括上述各方法實施例的步驟;而前述的存儲介質(zhì)包括:R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。最后應說明的是:以上各實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領域的普通技術(shù)人員應當理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分或者全部技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的范圍。
權(quán)利要求
1.一種檢查點操作方法,其特征在于,包括: 根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務,所述事務號為事務在起始時被分配的標識符; 將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中。
2.根據(jù)權(quán)利要求1所述的檢查點操作方法,其特征在于,所述根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務包括: 根據(jù)所述截止事務號,從對應關(guān)系中查找事務號小于或等于所述截止事務號的目標事務,所述對應關(guān)系中存儲有已結(jié)束事務的事務號與臟頁面的對應關(guān)系; 相應地,所述將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中包括: 根據(jù)所述對應關(guān)系,將與所述目標事務對應的臟頁面作為目標臟頁面; 將所述目標臟頁面從所述緩沖區(qū)中寫入所述磁盤中,并從所述對應關(guān)系中將所述目標臟頁面與事務號的對應關(guān)系刪除。
3.根據(jù)權(quán)利要求2所述的檢查點操作方法,其特征在于,所述根據(jù)所述截止事務號,從對應關(guān)系中查找事務號小于或等于所述截止事務號的目標事務包括: 根據(jù)所述截止事務號,從所述對應關(guān)系中獲取事務號小于或等于所述截止事務號的目標事務; 根據(jù)所述對應關(guān)系,獲取所述目標事務對應的臟頁面的數(shù)量; 若所述數(shù)量大于或等于預設 門限值,則選擇小于所述截止事務號的事務號作為本次檢查點操作的調(diào)整后的截止事務號; 從所述對應關(guān)系中,查找事務號小于或等于所述調(diào)整后的截止事務號的目標事務。
4.根據(jù)權(quán)利要求2或3所述的檢查點操作方法,其特征在于,所述對應關(guān)系以哈希表的形式進行存儲。
5.一種檢查點操作裝置,其特征在于,包括: 處理單元,用于根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務,所述事務號為事務在起始時被分配的標識符; 寫入單元,用于將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中。
6.根據(jù)權(quán)利要求5所述的檢查點操作裝置,其特征在于,所述處理單元還用于: 根據(jù)所述截止事務號,從對應關(guān)系中查找事務號小于或等于所述截止事務號的目標事務,所述對應關(guān)系中存儲有已結(jié)束事務的事務號與臟頁面的對應關(guān)系; 相應地,所述寫入單元還用于: 根據(jù)所述對應關(guān)系,將與所述目標事務對應的臟頁面作為目標臟頁面;將所述目標臟頁面從所述緩沖區(qū)中寫入所述磁盤中,并從所述對應關(guān)系中將所述目標臟頁面與事務號的對應關(guān)系刪除。
7.根據(jù)權(quán)利要求6所述的檢查點操作裝置,其特征在于,所述處理單元還用于: 根據(jù)所述截止事務號,從所述對應關(guān)系中獲取事務號小于或等于所述截止事務號的目標事務;根據(jù)所述對應關(guān)系,獲取所述目標事務對應的臟頁面的數(shù)量;若所述數(shù)量大于或等于預設門限值,則選擇小于所述截止事務號的事務號作為本次檢查點操作的調(diào)整后的截止事務號;從所述對應關(guān)系中,查找事務號小于或等于所述調(diào)整后的截止事務號的目標事務。
8.根據(jù)權(quán)利要求6或7所述的檢查點操作裝置,其特征在于,所述處理單元中的所述對應關(guān)系以哈希表的形式進行存儲。
9.一種服務器,其特征在于,包括如權(quán)利要求5-8中任一所述的檢查點操作裝置。
10.一種數(shù)據(jù)庫集群系統(tǒng),其特征在于,包括至少一個如權(quán)利要求9所述的服務器,所述至少一個服務器 之間通信連接。
全文摘要
本發(fā)明實施例提供一種檢查點操作方法、裝置及系統(tǒng),根據(jù)檢查點操作指令中的截止事務號,查找事務號小于或等于所述截止事務號的目標事務,所述事務號為事務在起始時被分配的標識符;將所述目標事務對應的目標臟頁面從緩沖區(qū)中寫入磁盤中,由于不會將當前緩沖區(qū)中的臟頁面全部寫入磁盤中,而是將其中的事務號小于或等于截止事務號的事務對應的臟頁面從緩沖區(qū)中寫入磁盤中,能夠有效地減少不必要的I/O請求,提高系統(tǒng)資源的利用率,并提高數(shù)據(jù)庫系統(tǒng)的性能。
文檔編號G06F17/30GK103092955SQ201310017570
公開日2013年5月8日 申請日期2013年1月17日 優(yōu)先權(quán)日2013年1月17日
發(fā)明者李健, 程廣衛(wèi) 申請人:華為技術(shù)有限公司