本發(fā)明涉及數(shù)據(jù)庫技術(shù),特別涉及一種kdb數(shù)據(jù)庫數(shù)據(jù)遷移后數(shù)據(jù)一致性驗(yàn)證方法及系統(tǒng)。
背景技術(shù):
::kdb數(shù)據(jù)庫是一款企業(yè)級數(shù)據(jù)管理系統(tǒng),由浪潮信息公司開發(fā)并推出。kdb數(shù)據(jù)庫具有高性能、高可用性、高兼容性以及便捷管理等特性,因此廣大企業(yè)都利用kdb數(shù)據(jù)庫進(jìn)行信息的管理。在搭載kdb數(shù)據(jù)庫的設(shè)備,例如服務(wù)器等設(shè)備,因故障或其他原因需要更換時(shí),就需要將舊設(shè)備中kdb數(shù)據(jù)庫的數(shù)據(jù)遷移到新設(shè)備中。數(shù)據(jù)遷移的成功取決于遷移后數(shù)據(jù)的一致性,也就是說,遷移前舊設(shè)備中kdb數(shù)據(jù)庫的數(shù)據(jù)應(yīng)該與遷移后新設(shè)備中kdb數(shù)據(jù)庫的數(shù)據(jù)保持一致。在現(xiàn)有技術(shù)中,對于遷移后數(shù)據(jù)一致性的驗(yàn)證方法一般借助數(shù)據(jù)庫以外的第三方工具,例如,利用第三方工具收集遷移前的舊設(shè)備中kdb數(shù)據(jù)庫的數(shù)據(jù)信息與遷移后的新設(shè)備中kdb數(shù)據(jù)庫的數(shù)據(jù)信息,對這兩種信息進(jìn)行對比判斷數(shù)據(jù)的一致性。但是,使用第三方工具可能存在信息安全的隱患,例如第三方工具會導(dǎo)致企業(yè)重要信息泄露等問題,并且使用第三方軟件進(jìn)行數(shù)據(jù)的一致性驗(yàn)證過程繁瑣,影響數(shù)據(jù)庫遷移的效率。技術(shù)實(shí)現(xiàn)要素:有鑒于此,本發(fā)明的目的在于提供一種kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證方法及系統(tǒng),在驗(yàn)證數(shù)據(jù)遷移前后一致性時(shí)不需要借助第三方工具,使驗(yàn)證過程簡單靈活。其具體方案如下:一種kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證方法,包括:在將遷移前kdb數(shù)據(jù)庫中的數(shù)據(jù)從源端遷移至目標(biāo)端前,建立源端數(shù)據(jù)核對表,并獲取所述遷移前kdb數(shù)據(jù)庫中數(shù)據(jù)的行數(shù),然后將該行數(shù)存儲至所述源端數(shù)據(jù)核對表中;建立目標(biāo)端數(shù)據(jù)核對表;在數(shù)據(jù)遷移后,獲取遷移后kdb數(shù)據(jù)庫中的數(shù)據(jù)的行數(shù),并將該行數(shù)存儲至所述目標(biāo)端數(shù)據(jù)核對表中;判斷所述目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與所述源端數(shù)據(jù)核對表中存儲的行數(shù)是否一致,如果是,則判定遷移前后的數(shù)據(jù)相一致。優(yōu)選地,所述建立源端數(shù)據(jù)核對表的過程,包括:判斷所述源端中是否已存在歷史數(shù)據(jù)核對表,如果是,則刪除所述歷史數(shù)據(jù)核對表,并建立新的數(shù)據(jù)核對表,得到所述源端數(shù)據(jù)核對表。優(yōu)選地,還包括:在數(shù)據(jù)遷移前,根據(jù)所述源端的表空間對所述目標(biāo)端的表空間進(jìn)行設(shè)置。優(yōu)選地,所述根據(jù)所述源端的表空間對所述目標(biāo)端的表空間進(jìn)行設(shè)置的過程,包括:根據(jù)所述源端的表空間的大小對所述目標(biāo)端的表空間進(jìn)行設(shè)置,以使所述目標(biāo)端的表空間大于或等于所述源端的表空間;根據(jù)所述源端的表空間的劃分對所述目標(biāo)端的表空間進(jìn)行設(shè)置,以使所述目標(biāo)端的表空間數(shù)量以及名稱均與所述源端相一致。優(yōu)選地,還包括:根據(jù)所述源端的日志對所述目標(biāo)端的日志進(jìn)行設(shè)置,以使所述目標(biāo)端的日志與所述源端的日志相一致。優(yōu)選地,還包括:當(dāng)所述目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與所述源端數(shù)據(jù)核對表中存儲的行數(shù)不一致,則標(biāo)記出所述目標(biāo)端數(shù)據(jù)核對表的名稱。優(yōu)選地,所述判斷所述目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與所述源端數(shù)據(jù)核對表中存儲的行數(shù)是否一致,如果是,則判定遷移前后的數(shù)據(jù)相一致的過程,包括:利用預(yù)設(shè)的db_link函數(shù)將所述源端數(shù)據(jù)核對表傳輸至所述目標(biāo)端中;在所述目標(biāo)端中判斷所述目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與所述源端數(shù)據(jù)核對表中存儲的行數(shù)是否一致,如果是,則判定遷移前后的數(shù)據(jù)相一致。本發(fā)明還公開了一種kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證系統(tǒng),包括:源端數(shù)據(jù)核對表建立模塊,用于在將遷移前kdb數(shù)據(jù)庫中的數(shù)據(jù)從源端遷移至目標(biāo)端前,建立源端數(shù)據(jù)核對表,并獲取所述遷移前kdb數(shù)據(jù)庫中數(shù)據(jù)的行數(shù),然后將該行數(shù)存儲至所述源端數(shù)據(jù)核對表中;目標(biāo)端數(shù)據(jù)核對表建立模塊,用于建立目標(biāo)端數(shù)據(jù)核對表;目標(biāo)端數(shù)據(jù)行數(shù)存儲模塊,用于在數(shù)據(jù)遷移后,獲取遷移后kdb數(shù)據(jù)庫中的數(shù)據(jù)的行數(shù),并將該行數(shù)存儲至所述目標(biāo)端數(shù)據(jù)核對表中;數(shù)據(jù)行數(shù)判斷模塊,用于判斷所述目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與所述源端數(shù)據(jù)核對表中存儲的行數(shù)是否一致,如果是,則判定遷移前后的數(shù)據(jù)相一致。優(yōu)選地,所述源端數(shù)據(jù)核對表建立模塊,包括:源端數(shù)據(jù)核對表建立單元,用于判斷所述源端中是否已存在歷史數(shù)據(jù)核對表,如果是,則刪除所述歷史數(shù)據(jù)核對表,并建立新的數(shù)據(jù)核對表,得到所述源端數(shù)據(jù)核對表。優(yōu)選地,所述數(shù)據(jù)行數(shù)判斷模塊,包括:源端數(shù)據(jù)核對表傳輸單元,用于利用預(yù)設(shè)的db_link函數(shù)將所述源端數(shù)據(jù)核對表傳輸至所述目標(biāo)端中;數(shù)據(jù)行數(shù)判斷單元,用于在所述目標(biāo)端中判斷所述目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與所述源端數(shù)據(jù)核對表中存儲的行數(shù)是否一致,如果是,則判定遷移前后的數(shù)據(jù)相一致。本發(fā)明中,kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證方法包括:在將遷移前kdb數(shù)據(jù)庫中的數(shù)據(jù)從源端遷移至目標(biāo)端前,建立源端數(shù)據(jù)核對表,并獲取遷移前kdb數(shù)據(jù)庫中數(shù)據(jù)的行數(shù),然后將該行數(shù)存儲至源端數(shù)據(jù)核對表中;建立目標(biāo)端數(shù)據(jù)核對表;在數(shù)據(jù)遷移后,獲取遷移后kdb數(shù)據(jù)庫中的數(shù)據(jù)的行數(shù),并將該行數(shù)存儲至目標(biāo)端數(shù)據(jù)核對表中;判斷目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與源端數(shù)據(jù)核對表中存儲的行數(shù)是否一致,如果是,則判定遷移前后的數(shù)據(jù)相一致??梢姡景l(fā)明在遷移前的源端以及遷移后的目標(biāo)端中建立數(shù)據(jù)核對表,利用數(shù)據(jù)核對表存儲數(shù)據(jù)遷移前后的行數(shù),最后通過驗(yàn)證數(shù)據(jù)遷移前后數(shù)據(jù)行數(shù)的一致性來驗(yàn)證數(shù)據(jù)的一致性,因此整個發(fā)明的方法步驟都在源端以及目標(biāo)端中進(jìn)行,不需要源端以及目標(biāo)端以外第三方工具,使整個驗(yàn)證過程更加簡單靈活??偟膩碚f,利用本發(fā)明所提供的kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證方法,使kdb數(shù)據(jù)庫遷移前后數(shù)據(jù)一致性的驗(yàn)證更加簡單靈活。附圖說明為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。圖1為本發(fā)明實(shí)施例公開的一種kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證方法流程圖;圖2為本發(fā)明實(shí)施例公開的一種具體的kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證方法流程圖;圖3為本發(fā)明實(shí)施例公開的另一種具體的kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證方法流程圖;圖4為本發(fā)明公開的一種kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證系統(tǒng)結(jié)構(gòu)圖。具體實(shí)施方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。本發(fā)明實(shí)施例公開了一種kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證方法,參見圖1所示,該方法包括:步驟s11:在將遷移前kdb數(shù)據(jù)庫中的數(shù)據(jù)從源端遷移至目標(biāo)端前,建立源端數(shù)據(jù)核對表,并獲取遷移前kdb數(shù)據(jù)庫中數(shù)據(jù)的行數(shù),然后將該行數(shù)存儲至源端數(shù)據(jù)核對表中。本發(fā)明實(shí)施例中,kdb數(shù)據(jù)庫是一款企業(yè)級數(shù)據(jù)管理系統(tǒng),由浪潮信息公司開發(fā)并推出。kdb數(shù)據(jù)庫具有高性能、高可用性、高兼容性以及便捷管理等特性,因此廣大企業(yè)都利用kdb數(shù)據(jù)庫進(jìn)行信息的存儲以及管理。源端以及目標(biāo)端為搭載該kdb數(shù)據(jù)庫的終端設(shè)備,例如服務(wù)器、云服務(wù)器以及個人電腦等。源端因故障或其他原因需要更換時(shí),就可以將源端中kdb數(shù)據(jù)庫的數(shù)據(jù)遷移到新設(shè)備中,也就是將數(shù)據(jù)遷移至目標(biāo)端中。源端數(shù)據(jù)核對表指的是在源端中生成的一個表,可以用于存儲數(shù)據(jù)進(jìn)行核對所需的信息,例如數(shù)據(jù)遷移前,在源端服務(wù)器中,利用源端服務(wù)器的操作命令create,生成的一個名為table_row的表作為源端數(shù)據(jù)核對表,在源端數(shù)據(jù)核對表table_row存儲用于進(jìn)行遷移后數(shù)據(jù)一致檢驗(yàn)的信息。kdb數(shù)據(jù)庫中的數(shù)據(jù)行數(shù)則是進(jìn)行遷移后數(shù)據(jù)一致檢驗(yàn)的信息。在存儲有重要數(shù)據(jù)的kdb數(shù)據(jù)庫,例如企業(yè)的kdb數(shù)據(jù)庫中,由于重要信息比較隱秘,涉及信息的安全,在未經(jīng)授權(quán)許可是不能讀取的,所以不可以在數(shù)據(jù)遷移前后讀取數(shù)據(jù)來進(jìn)行數(shù)據(jù)一致性的檢驗(yàn),因此可以利用數(shù)據(jù)庫中數(shù)據(jù)的行數(shù)作為一致性驗(yàn)證的標(biāo)準(zhǔn),數(shù)據(jù)遷移前和遷移后的數(shù)據(jù)行數(shù)如果保持一致,那么說明該數(shù)據(jù)在遷移前和遷移后保持一致。獲取遷移前kdb數(shù)據(jù)庫中數(shù)據(jù)的行數(shù),然后將該行數(shù)存儲至源端數(shù)據(jù)核對表中的過程,也可以通過操作命令來實(shí)現(xiàn),例如在源端服務(wù)器中,利用操作命令統(tǒng)計(jì)收集kdb數(shù)據(jù)庫中的數(shù)據(jù)行數(shù),然后利用操作命令調(diào)取建立的源端數(shù)據(jù)核對表table_row,將收集得到的數(shù)據(jù)行數(shù)通過操作命令插入table_row中進(jìn)行存儲。步驟s12:建立目標(biāo)端數(shù)據(jù)核對表。目標(biāo)端數(shù)據(jù)核對表指的是在目標(biāo)端中生成的一個表,可以用于存儲數(shù)據(jù)進(jìn)行核對所需的信息,例如在目標(biāo)端服務(wù)器中,利用目標(biāo)端服務(wù)器的操作命令create,生成的一個名為table_row2的表作為源端數(shù)據(jù)核對表,在源端數(shù)據(jù)核對表table_row2存儲用于進(jìn)行遷移后數(shù)據(jù)一致檢驗(yàn)的信息。步驟s13:在數(shù)據(jù)遷移后,獲取遷移后kdb數(shù)據(jù)庫中的數(shù)據(jù)的行數(shù),并將該行數(shù)存儲至目標(biāo)端數(shù)據(jù)核對表中。獲取遷移后kdb數(shù)據(jù)庫中的數(shù)據(jù)的行數(shù),并將該行數(shù)存儲至目標(biāo)端數(shù)據(jù)核對表中的過程,也可以通過操作命令來實(shí)現(xiàn),例如在目標(biāo)端服務(wù)器中,利用操作命令統(tǒng)計(jì)收集kdb數(shù)據(jù)庫中的數(shù)據(jù)行數(shù),然后利用操作命令調(diào)取建立的目標(biāo)端數(shù)據(jù)核對表table_row2,將收集得到的數(shù)據(jù)行數(shù)通過操作命令插入table_row2中進(jìn)行存儲。步驟s14:判斷目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與源端數(shù)據(jù)核對表中存儲的行數(shù)是否一致,如果是,則判定遷移前后的數(shù)據(jù)相一致。本發(fā)明實(shí)施例中,判斷目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與源端數(shù)據(jù)核對表中存儲的行數(shù)是否一致,需要調(diào)取目標(biāo)端中的目標(biāo)數(shù)據(jù)核對表以及源端中的源端數(shù)據(jù)核對表,例如可以在數(shù)據(jù)遷移后,使用筆記本連接源端,調(diào)取源端數(shù)據(jù)核對表,然后連接目標(biāo)端,調(diào)取目標(biāo)端數(shù)據(jù)核對表,最后在筆記本中進(jìn)行兩表中數(shù)據(jù)行數(shù)的判斷,得出數(shù)據(jù)遷移后是否一致的結(jié)果,這里的筆記本還可以是其他計(jì)算分析設(shè)備,這里不做限定??梢姡景l(fā)明實(shí)施例在遷移前的源端以及遷移后的目標(biāo)端中建立數(shù)據(jù)核對表,利用數(shù)據(jù)核對表存儲數(shù)據(jù)遷移前后的行數(shù),最后通過驗(yàn)證數(shù)據(jù)遷移前后數(shù)據(jù)行數(shù)的一致性來驗(yàn)證數(shù)據(jù)的一致性,因此整個發(fā)明的方法步驟都在源端以及目標(biāo)端中進(jìn)行,不需要源端以及目標(biāo)端以外第三方工具,使整個驗(yàn)證過程更加簡單靈活??偟膩碚f,利用本發(fā)明實(shí)施例所提供的kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證方法,使kdb數(shù)據(jù)庫遷移前后數(shù)據(jù)一致性的驗(yàn)證更加簡單靈活。本發(fā)明實(shí)施例公開了一種具體的kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證方法,參見圖2所示,相對于上一實(shí)施例,本實(shí)施例對技術(shù)方案作了進(jìn)一步的說明和優(yōu)化。具體的:步驟21:在數(shù)據(jù)遷移前,根據(jù)源端的表空間對目標(biāo)端的表空間進(jìn)行設(shè)置。本發(fā)明實(shí)施例中,表空間指的是kdb數(shù)據(jù)庫的邏輯劃分空間,kdb數(shù)據(jù)庫的對象都存放在指定的表空間中,例如可以在kdb數(shù)據(jù)庫中劃分多個表空間來存放不同類型的數(shù)據(jù),以提高數(shù)據(jù)庫輸入輸出數(shù)據(jù)的性能。因此,在本發(fā)明實(shí)施例中,為了使數(shù)據(jù)在遷移后以及遷移前的存儲以及管理環(huán)境大體保持一致,保證輸入輸出數(shù)據(jù)的性能以及方便kdb數(shù)據(jù)庫的用戶能夠按照在遷移前的操作習(xí)慣來操作數(shù)據(jù),可以在數(shù)據(jù)遷移前對目標(biāo)端的表空間根據(jù)源端的表空間進(jìn)行相應(yīng)的設(shè)置。其中,根據(jù)源端的表空間對目標(biāo)端的表空間進(jìn)行設(shè)置的過程,包括:根據(jù)源端的表空間的大小對目標(biāo)端的表空間進(jìn)行設(shè)置,以使目標(biāo)端的表空間大于或等于源端的表空間;在進(jìn)行目標(biāo)端表空間的設(shè)置時(shí),設(shè)置目標(biāo)端的表空間大于或等于源端表空間,可以使kdb數(shù)據(jù)庫的數(shù)據(jù)在遷移時(shí),不會產(chǎn)生因目標(biāo)端的表空間比源端中相應(yīng)的表空間小而產(chǎn)生數(shù)據(jù)遷移不完整的問題。例如在目標(biāo)端服務(wù)器中,利用服務(wù)器的操作指令,找到與源端表空間對應(yīng)的表空間,然后利用操作指令來調(diào)整該表空間的大小,使其大于或等于源端中相應(yīng)的表空間。根據(jù)源端的表空間的劃分對目標(biāo)端的表空間進(jìn)行設(shè)置,以使目標(biāo)端的表空間數(shù)量以及名稱均與源端相一致。在數(shù)據(jù)遷移前,源端的kdb數(shù)據(jù)庫中劃分多個表空間來存放不同類型的數(shù)據(jù),以提高數(shù)據(jù)庫輸入輸出數(shù)據(jù)的性能,因此目標(biāo)端的kdb數(shù)據(jù)庫也需要劃分多個相同數(shù)量的表空間來存放遷移后的數(shù)據(jù),以確保遷移后目標(biāo)端kdb數(shù)據(jù)庫的輸入輸出性能。例如在目標(biāo)端服務(wù)器中,利用服務(wù)器的操作指令,對目標(biāo)端的kdb數(shù)據(jù)庫進(jìn)行邏輯劃分表空間,并進(jìn)行與源端中表空間相應(yīng)的命名。步驟s22:在將遷移前kdb數(shù)據(jù)庫中的數(shù)據(jù)從源端遷移至目標(biāo)端前,建立源端數(shù)據(jù)核對表,并獲取遷移前kdb數(shù)據(jù)庫中數(shù)據(jù)的行數(shù),然后將該行數(shù)存儲至源端數(shù)據(jù)核對表中。步驟s22中,建立源端數(shù)據(jù)核對表的過程,包括:判斷源端中是否已存在歷史數(shù)據(jù)核對表,如果是,則刪除歷史數(shù)據(jù)核對表,并建立新的數(shù)據(jù)核對表,得到源端數(shù)據(jù)核對表。相對于上述發(fā)明實(shí)施例,本發(fā)明實(shí)施例中,考慮到源端設(shè)備可能進(jìn)行過kdb數(shù)據(jù)庫的數(shù)據(jù)遷移,在源端設(shè)備中可能保留有歷史遷移過程中建立的數(shù)據(jù)核對表,也即歷史數(shù)據(jù)核對表。在進(jìn)行當(dāng)前數(shù)據(jù)遷移過程中,為了確保源端數(shù)據(jù)核對表中信息的準(zhǔn)確性,需要將源端中的歷史數(shù)據(jù)核對表刪除,再建立新的數(shù)據(jù)核對表也即源端數(shù)據(jù)核對表。判斷源端中是否已存在歷史數(shù)據(jù)核對表的過程,例如在源端服務(wù)器中,可以利用服務(wù)器的操作指令,搜索服務(wù)器中存儲的歷史數(shù)據(jù)核對表,找到該歷史數(shù)據(jù)核對表,然后利用操作指令進(jìn)行刪除操作。步驟s23:建立目標(biāo)端數(shù)據(jù)核對表。步驟s24:在數(shù)據(jù)遷移后,獲取遷移后kdb數(shù)據(jù)庫中的數(shù)據(jù)的行數(shù),并將該行數(shù)存儲至目標(biāo)端數(shù)據(jù)核對表中。步驟s25:判斷目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與源端數(shù)據(jù)核對表中存儲的行數(shù)是否一致,如果是,則判定遷移前后的數(shù)據(jù)相一致。對于目標(biāo)端的設(shè)置,還包括:根據(jù)源端的日志對目標(biāo)端的日志進(jìn)行設(shè)置,以使目標(biāo)端的日志與源端的日志相一致。本發(fā)明實(shí)施例中,在數(shù)據(jù)遷移后,為保證用戶在目標(biāo)端中使用的kdb數(shù)據(jù)庫大體上與源端的一致,還可以根據(jù)源端中kdb數(shù)據(jù)庫的日志對目標(biāo)端的日志進(jìn)行相應(yīng)的設(shè)置,使目標(biāo)端的日志與源端的日志一致,方便用戶在目標(biāo)端中利用kdb數(shù)據(jù)庫來進(jìn)行數(shù)據(jù)的管理。例如在目標(biāo)端服務(wù)器中,利用服務(wù)器的操作命令設(shè)置日志,使目標(biāo)端的日志與源端的日志大小一致,并且還可以插入在源端上的歷史日志,使目標(biāo)端的日志可以詳細(xì)反映數(shù)據(jù)的操作經(jīng)歷。本發(fā)明實(shí)施例公開了另一種具體的kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證方法,參見圖3所示,相對于上述實(shí)施例,本實(shí)施例對技術(shù)方案作了進(jìn)一步的說明和優(yōu)化。具體的:步驟s31:在將遷移前kdb數(shù)據(jù)庫中的數(shù)據(jù)從源端遷移至目標(biāo)端前,建立源端數(shù)據(jù)核對表,并獲取遷移前kdb數(shù)據(jù)庫中數(shù)據(jù)的行數(shù),然后將該行數(shù)存儲至源端數(shù)據(jù)核對表中。步驟s32:建立目標(biāo)端數(shù)據(jù)核對表。步驟s33:在數(shù)據(jù)遷移后,獲取遷移后kdb數(shù)據(jù)庫中的數(shù)據(jù)的行數(shù),并將該行數(shù)存儲至目標(biāo)端數(shù)據(jù)核對表中。步驟s341:利用預(yù)設(shè)的db_link函數(shù)將源端數(shù)據(jù)核對表傳輸至目標(biāo)端中。本發(fā)明實(shí)施例中,db_link函數(shù)主要的功能是使本地的數(shù)據(jù)庫可以訪問外地的數(shù)據(jù)庫,起到數(shù)據(jù)庫連接的作用,也即,可以利用db_link函數(shù)在目標(biāo)端的kdb數(shù)據(jù)庫上與源端的kdb數(shù)據(jù)庫連接,進(jìn)行訪問,獲取源端的源端數(shù)據(jù)核對表。對于db_link函數(shù)的設(shè)定,例如可以在目標(biāo)端服務(wù)器中,利用服務(wù)器操作指令生成預(yù)設(shè)的db_link函數(shù)。步驟s342:在目標(biāo)端中判斷目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與源端數(shù)據(jù)核對表中存儲的行數(shù)是否一致,如果是,則判定遷移前后的數(shù)據(jù)相一致?,F(xiàn)對于上述實(shí)施例,本發(fā)明實(shí)施例中,判斷目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與源端數(shù)據(jù)核對表中存儲的行數(shù)是否一致,就不需要調(diào)取目標(biāo)端中的目標(biāo)數(shù)據(jù)核對表以及源端中的源端數(shù)據(jù)核對表,因?yàn)樵谏鲜霾襟Es341后,目標(biāo)端中就同時(shí)擁有源端數(shù)據(jù)核對表和目標(biāo)端數(shù)據(jù)核對表,可以直接在目標(biāo)端上進(jìn)行數(shù)據(jù)行數(shù)的比較。例如,經(jīng)過步驟s341后,在目標(biāo)端服務(wù)器上已經(jīng)有源端數(shù)據(jù)核對表table_row以及目標(biāo)端數(shù)據(jù)核對表table_row2,利用服務(wù)器操作命令就可以對這兩個表存儲的數(shù)據(jù)行數(shù)進(jìn)行比較。步驟s35:當(dāng)目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與源端數(shù)據(jù)核對表中存儲的行數(shù)不一致,則標(biāo)記出目標(biāo)端數(shù)據(jù)核對表的名稱。本發(fā)明實(shí)施例中,如果在數(shù)據(jù)行數(shù)進(jìn)行對比后,發(fā)現(xiàn)有不一致的地方,則說明這次數(shù)據(jù)遷移失敗了,為了可以及時(shí)作出補(bǔ)救的措施,可以標(biāo)記出數(shù)據(jù)行數(shù)不一致的目標(biāo)端數(shù)據(jù)核對表,進(jìn)行相應(yīng)的補(bǔ)救措施,以避免數(shù)據(jù)缺失對使用數(shù)據(jù)進(jìn)行生產(chǎn)所帶來的影響。例如在標(biāo)記出數(shù)據(jù)行數(shù)不一致的目標(biāo)端數(shù)據(jù)核對表后,可以對該目標(biāo)端數(shù)據(jù)核對表中相應(yīng)的數(shù)據(jù)從源端中再次進(jìn)行遷移。本發(fā)明實(shí)施例還公開了一種kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證系統(tǒng),參見圖1所示,該系統(tǒng)包括:源端數(shù)據(jù)核對表建立模塊11,用于在將遷移前kdb數(shù)據(jù)庫中的數(shù)據(jù)從源端遷移至目標(biāo)端前,建立源端數(shù)據(jù)核對表,并獲取遷移前kdb數(shù)據(jù)庫中數(shù)據(jù)的行數(shù),然后將該行數(shù)存儲至源端數(shù)據(jù)核對表中。目標(biāo)端數(shù)據(jù)核對表建立模塊12,用于建立目標(biāo)端數(shù)據(jù)核對表。目標(biāo)端數(shù)據(jù)行數(shù)存儲模塊13,用于在數(shù)據(jù)遷移后,獲取遷移后kdb數(shù)據(jù)庫中的數(shù)據(jù)的行數(shù),并將該行數(shù)存儲至目標(biāo)端數(shù)據(jù)核對表中。數(shù)據(jù)行數(shù)判斷模塊14,用于判斷目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與源端數(shù)據(jù)核對表中存儲的行數(shù)是否一致,如果是,則判定遷移前后的數(shù)據(jù)相一致。其中,源端數(shù)據(jù)核對表建立模塊11,包括:源端數(shù)據(jù)核對表建立單元,用于判斷源端中是否已存在歷史數(shù)據(jù)核對表,如果是,則刪除歷史數(shù)據(jù)核對表,并建立新的數(shù)據(jù)核對表,得到源端數(shù)據(jù)核對表。其中,數(shù)據(jù)行數(shù)判斷模塊14,包括:源端數(shù)據(jù)核對表傳輸單元,用于利用預(yù)設(shè)的db_link函數(shù)將源端數(shù)據(jù)核對表傳輸至目標(biāo)端中。數(shù)據(jù)行數(shù)判斷單元,用于在目標(biāo)端中判斷目標(biāo)端數(shù)據(jù)核對表中存儲的行數(shù)與源端數(shù)據(jù)核對表中存儲的行數(shù)是否一致,如果是,則判定遷移前后的數(shù)據(jù)相一致。關(guān)于上述各個模塊和各個單元更加詳細(xì)的工作過程可以參考前述實(shí)施例中公開的相應(yīng)內(nèi)容,在此不再進(jìn)行贅述。最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實(shí)體或者操作與另一個實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。以上對本發(fā)明所提供的一種kdb數(shù)據(jù)庫遷移后數(shù)據(jù)一致性驗(yàn)證方法及系統(tǒng)進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。當(dāng)前第1頁12當(dāng)前第1頁12