一種用于數(shù)據(jù)變更管理的方法與設(shè)備的制造方法
【專利摘要】本申請(qǐng)的目的是提供一種用于數(shù)據(jù)變更管理的方法與設(shè)備。具體地,獲取關(guān)于目標(biāo)數(shù)據(jù)對(duì)象的追溯指令,其中,所述追溯指令對(duì)應(yīng)指定歷史時(shí)段;根據(jù)所述目標(biāo)數(shù)據(jù)對(duì)象的識(shí)別信息獲取指定歷史時(shí)段的數(shù)據(jù)記錄;根據(jù)所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更信息。本申請(qǐng)通過獲取關(guān)于目標(biāo)數(shù)據(jù)對(duì)象的追溯指令,根據(jù)目標(biāo)數(shù)據(jù)對(duì)象識(shí)別信息獲取對(duì)應(yīng)歷史時(shí)段中的數(shù)據(jù)記錄,并據(jù)此確定目標(biāo)數(shù)據(jù)對(duì)象的變更信息,使得用戶在查詢目標(biāo)對(duì)象變更信息時(shí)可查詢多個(gè)版本的歷史變更信息,且可統(tǒng)一管理和操作適應(yīng)多種業(yè)務(wù),降低后臺(tái)維護(hù)負(fù)擔(dān)。
【專利說明】
一種用于數(shù)據(jù)變更管理的方法與設(shè)備
技術(shù)領(lǐng)域
[0001]本申請(qǐng)涉及計(jì)算機(jī)領(lǐng)域,尤其涉及一種用于數(shù)據(jù)變更管理的技術(shù)?!颈尘凹夹g(shù)】
[0002]在一些重要的業(yè)務(wù)模塊,比如訂單處理、財(cái)務(wù)管理等模塊,用戶對(duì)修改信息十分敏感,需要記錄修改前后的數(shù)據(jù)變化,以便日后的審計(jì)或其他用途。通常這種數(shù)據(jù)修改跟蹤功能都是通過開發(fā)人員在對(duì)應(yīng)的業(yè)務(wù)模塊中加入具體的跟蹤代碼,記錄被修改的字段的前后明細(xì)數(shù)據(jù)。
[0003]然而,現(xiàn)有的處理方式存不足,例如:開發(fā)前要明確好需要保留歷史版本的業(yè)務(wù)對(duì)象具體哪幾個(gè)屬性,然后進(jìn)行針對(duì)性的代碼開發(fā);需要針對(duì)不同的業(yè)務(wù)對(duì)象編寫不同的實(shí)現(xiàn)代碼,并且針對(duì)業(yè)務(wù)對(duì)象的屬性或字段的不同數(shù)據(jù)類型進(jìn)行不同的邏輯處理;只能對(duì)比最近一次數(shù)據(jù)修改的前后數(shù)據(jù)變化;一旦數(shù)據(jù)被刪除,由于追溯代碼與業(yè)務(wù)數(shù)據(jù)緊緊關(guān)聯(lián), 就很難對(duì)其刪除操作進(jìn)行追溯;代碼實(shí)現(xiàn)上與業(yè)務(wù)對(duì)象的屬性或字段牢牢綁定,一旦需要追溯的字段發(fā)生變化,如增加減少字段或者修改字段的數(shù)據(jù)屬性等,都會(huì)導(dǎo)致需要重新編寫追溯代碼,從而導(dǎo)致實(shí)現(xiàn)業(yè)務(wù)數(shù)據(jù)版本管理的代價(jià)非常昂貴。
【發(fā)明內(nèi)容】
[0004]本申請(qǐng)的一個(gè)目的是提供一種用于數(shù)據(jù)變更管理的方法與設(shè)備。
[0005]為實(shí)現(xiàn)上述目的,根據(jù)本申請(qǐng)的一個(gè)方面,提供了一種用于數(shù)據(jù)變更管理的方法, 該方法包括:
[0006]獲取關(guān)于目標(biāo)數(shù)據(jù)對(duì)象的追溯指令,其中,所述追溯指令對(duì)應(yīng)指定歷史時(shí)段;
[0007]根據(jù)所述目標(biāo)數(shù)據(jù)對(duì)象的識(shí)別信息獲取指定歷史時(shí)段的數(shù)據(jù)記錄;
[0008]根據(jù)所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更信息。
[0009]根據(jù)本申請(qǐng)的另一個(gè)方面,提供了一種用于數(shù)據(jù)變更管理的設(shè)備,該設(shè)備包括: [〇〇1〇]追溯指令獲取裝置,用于獲取關(guān)于目標(biāo)數(shù)據(jù)對(duì)象的追溯指令,其中,所述追溯指令對(duì)應(yīng)指定歷史時(shí)段;
[0011]數(shù)據(jù)記錄獲取裝置,用于根據(jù)所述目標(biāo)數(shù)據(jù)對(duì)象的識(shí)別信息獲取指定歷史時(shí)段的數(shù)據(jù)記錄;
[0012]變更信息確定裝置,用于根據(jù)所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更信息。
[0013]與現(xiàn)有技術(shù)相比,本申請(qǐng)通過獲取關(guān)于目標(biāo)數(shù)據(jù)對(duì)象的追溯指令,根據(jù)目標(biāo)數(shù)據(jù)對(duì)象識(shí)別信息獲取對(duì)應(yīng)歷史時(shí)段中的數(shù)據(jù)記錄,并據(jù)此確定目標(biāo)數(shù)據(jù)對(duì)象的變更信息,使得用戶在查詢目標(biāo)對(duì)象變更信息時(shí)可查詢多個(gè)版本的歷史變更信息,且可統(tǒng)一管理和操作適應(yīng)多種業(yè)務(wù),降低后臺(tái)維護(hù)負(fù)擔(dān),進(jìn)一步地,通過識(shí)別信息中的第一識(shí)別信息和第二識(shí)別信息,可對(duì)目標(biāo)數(shù)據(jù)對(duì)象進(jìn)行有效查找,不受目標(biāo)數(shù)據(jù)對(duì)象被刪除等因素的影響,進(jìn)一步地,在數(shù)據(jù)對(duì)象變更后通過序列化對(duì)當(dāng)前數(shù)據(jù)記錄進(jìn)行保存,從而優(yōu)化數(shù)據(jù)管理,避免對(duì)需要追溯的數(shù)據(jù)對(duì)象進(jìn)行分類處理,從而提升效率?!靖綀D說明】
[0014]通過閱讀參照以下附圖所作的對(duì)非限制性實(shí)施例所作的詳細(xì)描述,本申請(qǐng)的其它特征、目的和優(yōu)點(diǎn)將會(huì)變得更明顯:
[0015]圖1示出根據(jù)本申請(qǐng)一個(gè)方面的一種用于數(shù)據(jù)變更管理的設(shè)備示意圖;
[0016]圖2示出根據(jù)本申請(qǐng)另一個(gè)方面的一種用于數(shù)據(jù)變更管理的設(shè)備示意圖;
[0017]圖3示出根據(jù)本申請(qǐng)另一個(gè)方面的一種優(yōu)選實(shí)例的數(shù)據(jù)記錄裝置示意圖;
[0018]圖4示出根據(jù)本申請(qǐng)另一個(gè)方面的一種用于數(shù)據(jù)變更管理的方法流程圖;
[0019]圖5示出根據(jù)本申請(qǐng)另一個(gè)方面的一種用于數(shù)據(jù)變更管理的方法流程圖;
[0020]圖6示出根據(jù)本申請(qǐng)另一個(gè)方面的一種優(yōu)選實(shí)例的步驟S2示意圖;
[0021]圖7示出根據(jù)本申請(qǐng)一個(gè)方面的一種優(yōu)選實(shí)例的方法流程圖。
[0022]附圖中相同或相似的附圖標(biāo)記代表相同或相似的部件?!揪唧w實(shí)施方式】
[0023]下面結(jié)合附圖對(duì)本申請(qǐng)作進(jìn)一步詳細(xì)描述。
[0024]在本申請(qǐng)一個(gè)典型的配置中,終端、服務(wù)網(wǎng)絡(luò)的設(shè)備和可信方均包括一個(gè)或多個(gè)處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
[0025]內(nèi)存可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲(chǔ)器(ROM)或閃存(flash RAM)。內(nèi)存是計(jì)算機(jī)可讀介質(zhì)的示例。
[0026]計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動(dòng)和非可移動(dòng)媒體可以由任何方法或技術(shù)來實(shí)現(xiàn)信息存儲(chǔ)。信息可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。 計(jì)算機(jī)的存儲(chǔ)介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、其他類型的隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器(EEPR0M)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲(chǔ)器(CD-ROM)、 數(shù)字多功能光盤(DVD)或其他光學(xué)存儲(chǔ)、磁盒式磁帶,磁帶磁盤存儲(chǔ)或其他磁性存儲(chǔ)設(shè)備或任何其他非傳輸介質(zhì),可用于存儲(chǔ)可以被計(jì)算設(shè)備訪問的信息。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括非暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號(hào)和載波。
[0027]圖1示出根據(jù)本申請(qǐng)一個(gè)方面的一種用于數(shù)據(jù)變更管理的設(shè)備示意圖。所述設(shè)備1 包括追溯指令獲取裝置11、數(shù)據(jù)記錄獲取裝置12、變更信息確定裝置13。
[0028]其中,追溯指令獲取裝置11獲取關(guān)于目標(biāo)數(shù)據(jù)對(duì)象的追溯指令,其中,所述追溯指令對(duì)應(yīng)指定歷史時(shí)段;數(shù)據(jù)記錄獲取裝置12根據(jù)所述目標(biāo)數(shù)據(jù)對(duì)象的識(shí)別信息獲取指定歷史時(shí)段的數(shù)據(jù)記錄;變更信息確定裝置13根據(jù)所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更 fg息。
[0029]具體地,追溯指令獲取裝置11獲取關(guān)于目標(biāo)數(shù)據(jù)對(duì)象的追溯指令,其中,所述追溯指令對(duì)應(yīng)指定歷史時(shí)段。所述目標(biāo)數(shù)據(jù)對(duì)象是指用戶需要跟蹤的業(yè)務(wù)數(shù)據(jù)對(duì)象,或業(yè)務(wù)數(shù)據(jù)對(duì)象及其之下的所有子業(yè)務(wù)對(duì)象,例如,整個(gè)財(cái)務(wù)報(bào)表或訂單處理表,又或者財(cái)務(wù)報(bào)表中的納稅日期,訂單處理業(yè)務(wù)中的物流途徑地點(diǎn),貨物的庫存量。所述追溯指令是指用戶在需要對(duì)目標(biāo)數(shù)據(jù)對(duì)象的修改或變動(dòng)歷史進(jìn)行查詢時(shí)所下發(fā)的指令,例如,查詢某個(gè)倉庫中某種貨物的每個(gè)月的變更記錄,或者查詢貨物管理表格的變動(dòng)整體變動(dòng)情況,包括倉區(qū)變化, 取貨人的變化,獲取數(shù)量的變更等。所述追溯指令由用戶下發(fā),由于本申請(qǐng)所在系統(tǒng)記錄了對(duì)應(yīng)目標(biāo)數(shù)據(jù)對(duì)象的所有歷史時(shí)段的數(shù)據(jù)記錄,因此,追溯指令可指定任意歷史時(shí)段的多個(gè)版本進(jìn)行追溯,從而用來進(jìn)行比較,或據(jù)此確定變更記錄。例如,圖7中所示,獲取關(guān)于目標(biāo)數(shù)對(duì)象的追溯指令即為用圓形框圖標(biāo)示的“追溯”步驟,這一步驟后即啟動(dòng)對(duì)目標(biāo)數(shù)據(jù)對(duì)象指定歷史時(shí)段的數(shù)據(jù)記錄的查詢。
[0030]本領(lǐng)域技術(shù)人員應(yīng)能理解上述獲取目標(biāo)數(shù)據(jù)對(duì)象的追溯指令的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的述獲取目標(biāo)數(shù)據(jù)對(duì)象的追溯指令的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0031]接著,數(shù)據(jù)記錄獲取裝置12根據(jù)所述目標(biāo)數(shù)據(jù)對(duì)象的識(shí)別信息獲取指定歷史時(shí)段的數(shù)據(jù)記錄。所述識(shí)別信息,是指用于識(shí)別目標(biāo)數(shù)據(jù)對(duì)象歷史時(shí)段中數(shù)據(jù)記錄的信息,例如,某個(gè)業(yè)務(wù)對(duì)象的主鍵ID,如學(xué)生信息表格中的學(xué)號(hào),或者某個(gè)業(yè)務(wù)對(duì)象的業(yè)務(wù)列別,所述識(shí)別信息可統(tǒng)一設(shè)定或識(shí)別,只要能識(shí)別目標(biāo)數(shù)據(jù)對(duì)象并聯(lián)系至對(duì)應(yīng)歷史信息即可。因此,據(jù)此獲取數(shù)據(jù)記錄的方式包括但不限于,根據(jù)需要追溯業(yè)務(wù)對(duì)象的識(shí)別信息在保存數(shù)據(jù)記錄的數(shù)據(jù)庫中或其它模塊中進(jìn)行檢索,例如圖7左側(cè)流程所示,在追溯發(fā)起后,找到“業(yè)務(wù)主鍵”,繼而“檢索數(shù)據(jù)庫”,將需要追溯的業(yè)務(wù)對(duì)象主鍵ID在歷史數(shù)據(jù)記錄數(shù)據(jù)庫中進(jìn)行檢索,找到相應(yīng)的一系列修改記錄,在此,修改記錄即為所需數(shù)據(jù)記錄。
[0032]本領(lǐng)域技術(shù)人員應(yīng)能理解上述根據(jù)識(shí)別信息獲取數(shù)據(jù)記錄的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的根據(jù)識(shí)別信息獲取數(shù)據(jù)記錄的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0033]優(yōu)選地,所述識(shí)別信息包括第一識(shí)別信息和第二識(shí)別信息。所述第一識(shí)別信息是指目標(biāo)數(shù)據(jù)對(duì)象的唯一對(duì)應(yīng)的認(rèn)證識(shí)別信息,包括業(yè)務(wù)主鍵,例如,學(xué)生畢業(yè)證統(tǒng)計(jì)信息表中的畢業(yè)證編號(hào),可唯一確定目標(biāo)數(shù)據(jù)對(duì)象,并能夠藉此精確查找到目標(biāo)數(shù)據(jù)對(duì)象。所述第二識(shí)別信息是指目標(biāo)數(shù)據(jù)對(duì)象對(duì)應(yīng)的類型或其它更寬泛的可以進(jìn)行查找的范圍識(shí)別信息, 包括業(yè)務(wù)類別或分類,例如,學(xué)生畢業(yè)證統(tǒng)計(jì)信息表中的所屬學(xué)院或班級(jí),在第一識(shí)別信息缺失或無法查詢到目標(biāo)數(shù)據(jù)對(duì)象對(duì)應(yīng)的數(shù)據(jù)記錄時(shí),一般這種情況數(shù)據(jù)目標(biāo)數(shù)據(jù)對(duì)象被刪除的情況,此時(shí)無法獲取目標(biāo)數(shù)據(jù)對(duì)象準(zhǔn)確的第一識(shí)別信息,例如業(yè)務(wù)主鍵,則可通過第二識(shí)別信息,例如業(yè)務(wù)類別進(jìn)行查找,從而檢索出該業(yè)務(wù)類別下被刪除的目標(biāo)數(shù)據(jù)對(duì)象的數(shù)據(jù)記錄,從而據(jù)此展開進(jìn)一步追溯。通過第二識(shí)別信息,使得被刪除的目標(biāo)數(shù)據(jù)對(duì)象的追溯也成為可能,從而增加了數(shù)據(jù)管理的全面性和提升了數(shù)據(jù)的安全性。
[0034]接著,變更信息確定裝置13根據(jù)所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更信息。所述變更信息,包括目標(biāo)數(shù)據(jù)對(duì)象的數(shù)據(jù)記錄在歷史時(shí)段中的多個(gè)版本之間的變更情況,或者各個(gè)歷史時(shí)段分別與現(xiàn)有版本之間的變更情況。例如上文所述在數(shù)據(jù)庫或其它存儲(chǔ)模塊中查找到目標(biāo)數(shù)據(jù)對(duì)象對(duì)應(yīng)的數(shù)據(jù)記錄后,即利用例如apache的BeanUtils工具或類似模塊將數(shù)據(jù)記錄在指定歷史時(shí)段中的多個(gè)版本之間或僅僅某一個(gè)歷史版本與現(xiàn)有版本進(jìn)行比對(duì)也就是圖7中所示的“對(duì)比各個(gè)屬性值”,其中,屬性值即為目標(biāo)數(shù)據(jù)對(duì)象中的數(shù)據(jù),例如學(xué)生的性別,家庭住址等,從而找到修改過的目標(biāo)對(duì)象的屬性值,在此,當(dāng)數(shù)據(jù)記錄被查找的時(shí),若為字符串等被序列化過的數(shù)據(jù),則可優(yōu)先進(jìn)行反序列化,如圖7所示“反序列化成java對(duì)象”。優(yōu)選地,可將修改過的屬性進(jìn)行標(biāo)記顯示也就是圖7中的“顯示差異信息”,例如高亮顯現(xiàn)或采用特定字符標(biāo)記。
[0035]圖2示出根據(jù)本申請(qǐng)另一個(gè)方面的一種用于數(shù)據(jù)變更管理的設(shè)備示意圖。所述設(shè)備1包括變更動(dòng)態(tài)獲取裝置24、數(shù)據(jù)記錄保存裝置25、追溯指令獲取裝置21、數(shù)據(jù)記錄獲取裝置22、變更信息確定裝置23。[〇〇36]其中,變更動(dòng)態(tài)獲取裝置24獲取數(shù)據(jù)對(duì)象的變更動(dòng)態(tài)信息;數(shù)據(jù)記錄保存裝置25 序列化所述數(shù)據(jù)對(duì)象并保存當(dāng)前時(shí)段的數(shù)據(jù)記錄;追溯指令獲取裝置21獲取關(guān)于目標(biāo)數(shù)據(jù)對(duì)象的追溯指令,其中,所述追溯指令對(duì)應(yīng)指定歷史時(shí)段;數(shù)據(jù)記錄獲取裝置22根據(jù)所述目標(biāo)數(shù)據(jù)對(duì)象的識(shí)別信息獲取指定歷史時(shí)段的數(shù)據(jù)記錄;變更信息確定裝置23反序列化指定歷史時(shí)段的所述數(shù)據(jù)記錄,根據(jù)反序列化后的所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更 fg息。
[0037]在此,圖2中的追溯指令獲取裝置21、數(shù)據(jù)記錄獲取裝置22與圖2中的追溯指令獲取裝置11、數(shù)據(jù)記錄獲取裝置12相同或相似,不再贅述。[〇〇38]具體地,變更動(dòng)態(tài)獲取裝置24獲取數(shù)據(jù)對(duì)象的變更動(dòng)態(tài)信息。所述數(shù)據(jù)對(duì)象的變更動(dòng)態(tài)信息是指業(yè)務(wù)對(duì)象的被修改或出現(xiàn)改動(dòng)的情況,例如,主動(dòng)查詢或發(fā)現(xiàn)到有數(shù)據(jù)對(duì)象被改動(dòng),或者使用MD5校驗(yàn)技術(shù)對(duì)目標(biāo)數(shù)據(jù)對(duì)象進(jìn)行檢測,一旦發(fā)生變動(dòng),則通過上報(bào)或主動(dòng)獲取等方式獲取變更動(dòng)態(tài)信息,在此,變更動(dòng)態(tài)信息的獲取時(shí)用于發(fā)現(xiàn)和監(jiān)測數(shù)據(jù)對(duì)象的修改或更正等變更操作,從而可以在發(fā)生變更后,隨即對(duì)當(dāng)前數(shù)據(jù)對(duì)象的數(shù)據(jù)記錄進(jìn)行保存,或進(jìn)一步的處理,從而使得在追溯時(shí),可以對(duì)每次修改對(duì)應(yīng)的數(shù)據(jù)記錄進(jìn)行查詢。
[0039]本領(lǐng)域技術(shù)人員應(yīng)能理解上述獲取變更動(dòng)態(tài)信息的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的獲取變更動(dòng)態(tài)信息的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0040]接著,數(shù)據(jù)記錄保存裝置25序列化所述數(shù)據(jù)對(duì)象并保存當(dāng)前時(shí)段的數(shù)據(jù)記錄。即在發(fā)現(xiàn)有數(shù)據(jù)對(duì)象發(fā)生改動(dòng)或變更后將對(duì)應(yīng)的時(shí)段中的數(shù)據(jù)記錄進(jìn)行保存,并采用序列化的方式,將數(shù)據(jù)記錄轉(zhuǎn)換為字符串后進(jìn)行保存,例如圖7中“序列化JS0N”所示,把需要跟蹤的整個(gè)業(yè)務(wù)數(shù)據(jù)對(duì)象使用JS0N序列化為一個(gè)文件后保存,然后進(jìn)行版本管理,并保存到后臺(tái)數(shù)據(jù)庫,可以是任意數(shù)據(jù)庫,比如〇瓜(316,1117891,1]101^0(113等,或者是數(shù)據(jù)文件。在此,使用 JS0N進(jìn)行序列化,會(huì)使得數(shù)據(jù)的兼容性和包容性更強(qiáng),同時(shí)序列化后將數(shù)據(jù)記錄統(tǒng)一進(jìn)行版本管理,可以跟蹤所有的字段變化,且可對(duì)比任意時(shí)間段的數(shù)據(jù)變化,同時(shí)對(duì)于開發(fā)人員來說僅需書寫一行代碼,把需要跟蹤的數(shù)據(jù)扔到版本管理框架中即可,而不需要再書寫大段具有邏輯針對(duì)性的跟蹤追溯代碼,在此版本管理是指數(shù)據(jù)對(duì)象的多個(gè)歷史修改版本。
[0041]本領(lǐng)域技術(shù)人員應(yīng)能理解上述序列化數(shù)據(jù)記錄的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的序列化數(shù)據(jù)記錄的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0042]優(yōu)選地,數(shù)據(jù)記錄保存裝置25將序列化后的所述數(shù)據(jù)對(duì)象中的關(guān)鍵信息保存為當(dāng)前時(shí)段的數(shù)據(jù)記錄,其中,所述關(guān)鍵信息中包括所述數(shù)據(jù)對(duì)象的識(shí)別信息。所述關(guān)鍵信息是指用于保存在可進(jìn)行歷史時(shí)段查詢的數(shù)據(jù)記錄中的信息,可用于識(shí)別數(shù)據(jù)對(duì)象的信息,或記錄時(shí)間、修改時(shí)間、修改人等一些必要信息,以及用戶需要追蹤的信息。例如圖7中所示 “記錄關(guān)鍵信息而10、?1(、1]861'10、1';[1118七311^,4〇1:;[〇11”,這一動(dòng)作即將改動(dòng)的業(yè)務(wù)對(duì)象及其子對(duì)象轉(zhuǎn)換成一個(gè)json字符串后,生成該修改記錄的一個(gè)UUID作為PK主鍵,同時(shí)抽取出該業(yè)務(wù)對(duì)象的主鍵ID、業(yè)務(wù)類別,當(dāng)前時(shí)間戳,修改人信息、增/刪/改標(biāo)記等數(shù)據(jù)作為一條記錄保存到后臺(tái)數(shù)據(jù)庫,在此UUID用于唯一識(shí)別數(shù)據(jù)對(duì)象。保存關(guān)鍵信息使得數(shù)據(jù)保存具有針對(duì)性,亦使得后續(xù)追溯查找更加高效。
[0043]接著,在追溯過程中變更信息確定裝置23反序列化指定歷史時(shí)段的所述數(shù)據(jù)記錄,根據(jù)反序列化后的所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更信息。接上文,若數(shù)據(jù)記錄在保存時(shí)被反序列化,則在查找并獲取指定歷史時(shí)段對(duì)應(yīng)數(shù)據(jù)記錄后,為使得用戶能夠直觀瀏覽或相關(guān)數(shù)據(jù)對(duì)比工具能夠?qū)?shù)據(jù)數(shù)據(jù)記錄進(jìn)行處理,需要對(duì)當(dāng)前呈現(xiàn)為字符串狀態(tài)的數(shù)據(jù)記錄進(jìn)行反序列化,即如圖7中“反序列化為java對(duì)象”,根據(jù)需要的追溯的業(yè)務(wù)對(duì)象主鍵ID在版本記錄后臺(tái)數(shù)據(jù)庫中檢索,找到相應(yīng)的一系列修改記錄,并通過JS0N工具反序列化成java對(duì)象。[〇〇44]本領(lǐng)域技術(shù)人員應(yīng)能理解上述反序列化數(shù)據(jù)記錄的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的反序列化數(shù)據(jù)記錄的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0045]圖3示出根據(jù)本申請(qǐng)另一個(gè)方面的一種優(yōu)選實(shí)例的數(shù)據(jù)記錄裝置示意圖。所述數(shù)據(jù)記錄獲取裝置12包括數(shù)據(jù)記錄查找單元121、數(shù)據(jù)記錄獲取單元122。
[0046]其中,數(shù)據(jù)記錄查找單元121根據(jù)所述第一識(shí)別信息查找指定歷史時(shí)段的數(shù)據(jù)記錄;數(shù)據(jù)記錄獲取單元122若查找到所述數(shù)據(jù)記錄,則獲取所述數(shù)據(jù)記錄,否則根據(jù)所述第二識(shí)別信息獲取所述數(shù)據(jù)記錄。
[0047]具體地,數(shù)據(jù)記錄查找單元121根據(jù)所述第一識(shí)別信息查找指定歷史時(shí)段的數(shù)據(jù)記錄。所述第一識(shí)別信息是指目標(biāo)數(shù)據(jù)對(duì)象的唯一對(duì)應(yīng)的認(rèn)證識(shí)別信息,包括業(yè)務(wù)主鍵,例如,學(xué)生畢業(yè)證統(tǒng)計(jì)信息表中的畢業(yè)證編號(hào),可唯一確定目標(biāo)數(shù)據(jù)對(duì)象,并能夠藉此精確查找到目標(biāo)數(shù)據(jù)對(duì)象。因此根據(jù)第一識(shí)別信息,例如業(yè)務(wù)對(duì)象的主鍵ID在數(shù)據(jù)庫中檢索對(duì)應(yīng)歷史時(shí)段的一個(gè)或多個(gè)版本的數(shù)據(jù)記錄,例如,在圖7中,“檢索數(shù)據(jù)庫”若存在,則獲取數(shù)據(jù)記錄后跳轉(zhuǎn)至下一步。
[0048]接著,數(shù)據(jù)記錄獲取單元122若查找到所述數(shù)據(jù)記錄,則獲取所述數(shù)據(jù)記錄,否則根據(jù)所述第二識(shí)別信息獲取所述數(shù)據(jù)記錄。所述第二識(shí)別信息是指目標(biāo)數(shù)據(jù)對(duì)象對(duì)應(yīng)的類型或其它更寬泛的可以進(jìn)行查找的范圍識(shí)別信息,包括業(yè)務(wù)類別或分類,例如,學(xué)生畢業(yè)證統(tǒng)計(jì)信息表中的所屬學(xué)院或班級(jí)。在第一識(shí)別信息缺失或無法查詢到目標(biāo)數(shù)據(jù)對(duì)象對(duì)應(yīng)的數(shù)據(jù)記錄時(shí),例如圖7中“檢索數(shù)據(jù)庫”不存在需要的目標(biāo)數(shù)據(jù)對(duì)象的數(shù)據(jù)記錄,一般這種情況數(shù)據(jù)目標(biāo)數(shù)據(jù)對(duì)象被刪除的情況,此時(shí)無法獲取目標(biāo)數(shù)據(jù)對(duì)象準(zhǔn)確的第一識(shí)別信息,例如業(yè)務(wù)主鍵,則可通過第二識(shí)別信息,例如業(yè)務(wù)類別進(jìn)行查找,從而檢索出該業(yè)務(wù)類別下被刪除的目標(biāo)數(shù)據(jù)對(duì)象的數(shù)據(jù)記錄,從而據(jù)此展開進(jìn)一步追溯。若第二識(shí)別信息仍未尋找到, 則可如圖7中所示,直接結(jié)束追溯。通過第二識(shí)別信息,使得被刪除的目標(biāo)數(shù)據(jù)對(duì)象的追溯也成為可能,從而增加了數(shù)據(jù)管理的全面性和提升了數(shù)據(jù)的安全性。
[0049]本領(lǐng)域技術(shù)人員應(yīng)能理解上述通過第二識(shí)別信息查找數(shù)據(jù)記錄的方式僅為舉例, 其他現(xiàn)有的或今后可能出現(xiàn)的通過第二識(shí)別信息查找數(shù)據(jù)記錄的方式如可適用于本申請(qǐng), 也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0050]圖4示出根據(jù)本申請(qǐng)另一個(gè)方面的一種用于數(shù)據(jù)變更管理的方法流程圖。所述方法包括步驟S1、步驟S2、步驟S3。
[0051]其中,在步驟S1中設(shè)備1獲取關(guān)于目標(biāo)數(shù)據(jù)對(duì)象的追溯指令,其中,所述追溯指令對(duì)應(yīng)指定歷史時(shí)段;在步驟S2中設(shè)備1根據(jù)所述目標(biāo)數(shù)據(jù)對(duì)象的識(shí)別信息獲取指定歷史時(shí)段的數(shù)據(jù)記錄;在步驟S3中設(shè)備1根據(jù)所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更信息。
[0052]具體地,在步驟S1中設(shè)備1獲取關(guān)于目標(biāo)數(shù)據(jù)對(duì)象的追溯指令,其中,所述追溯指令對(duì)應(yīng)指定歷史時(shí)段。所述目標(biāo)數(shù)據(jù)對(duì)象是指用戶需要跟蹤的業(yè)務(wù)數(shù)據(jù)對(duì)象,或業(yè)務(wù)數(shù)據(jù)對(duì)象及其之下的所有子業(yè)務(wù)對(duì)象,例如,整個(gè)財(cái)務(wù)報(bào)表或訂單處理表,又或者財(cái)務(wù)報(bào)表中的納稅日期,訂單處理業(yè)務(wù)中的物流途徑地點(diǎn),貨物的庫存量。所述追溯指令是指用戶在需要對(duì)目標(biāo)數(shù)據(jù)對(duì)象的修改或變動(dòng)歷史進(jìn)行查詢時(shí)所下發(fā)的指令,例如,查詢某個(gè)倉庫中某種貨物的每個(gè)月的變更記錄,或者查詢貨物管理表格的變動(dòng)整體變動(dòng)情況,包括倉區(qū)變化,取貨人的變化,獲取數(shù)量的變更等。所述追溯指令由用戶下發(fā),由于本申請(qǐng)所在系統(tǒng)記錄了對(duì)應(yīng)目標(biāo)數(shù)據(jù)對(duì)象的所有歷史時(shí)段的數(shù)據(jù)記錄,因此,追溯指令可指定任意歷史時(shí)段的多個(gè)版本進(jìn)行追溯,從而用來進(jìn)行比較,或據(jù)此確定變更記錄。例如,圖7中所示,獲取關(guān)于目標(biāo)數(shù)對(duì)象的追溯指令即為用圓形框圖標(biāo)示的“追溯”步驟,這一步驟后即啟動(dòng)對(duì)目標(biāo)數(shù)據(jù)對(duì)象指定歷史時(shí)段的數(shù)據(jù)記錄的查詢。[〇〇53]本領(lǐng)域技術(shù)人員應(yīng)能理解上述獲取目標(biāo)數(shù)據(jù)對(duì)象的追溯指令的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的述獲取目標(biāo)數(shù)據(jù)對(duì)象的追溯指令的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0054]接著,在步驟S2中設(shè)備1根據(jù)所述目標(biāo)數(shù)據(jù)對(duì)象的識(shí)別信息獲取指定歷史時(shí)段的數(shù)據(jù)記錄。所述識(shí)別信息,是指用于識(shí)別目標(biāo)數(shù)據(jù)對(duì)象歷史時(shí)段中數(shù)據(jù)記錄的信息,例如, 某個(gè)業(yè)務(wù)對(duì)象的主鍵ID,如學(xué)生信息表格中的學(xué)號(hào),或者某個(gè)業(yè)務(wù)對(duì)象的業(yè)務(wù)列別,所述識(shí)別信息可統(tǒng)一設(shè)定或識(shí)別,只要能識(shí)別目標(biāo)數(shù)據(jù)對(duì)象并聯(lián)系至對(duì)應(yīng)歷史信息即可。因此,據(jù)此獲取數(shù)據(jù)記錄的方式包括但不限于,根據(jù)需要追溯業(yè)務(wù)對(duì)象的識(shí)別信息在保存數(shù)據(jù)記錄的數(shù)據(jù)庫中或其它模塊中進(jìn)行檢索,例如圖7左側(cè)流程所示,在追溯發(fā)起后,找到“業(yè)務(wù)主鍵”,繼而“檢索數(shù)據(jù)庫”,將需要追溯的業(yè)務(wù)對(duì)象主鍵ID在歷史數(shù)據(jù)記錄數(shù)據(jù)庫中進(jìn)行檢索,找到相應(yīng)的一系列修改記錄,在此,修改記錄即為所需數(shù)據(jù)記錄。
[0055]本領(lǐng)域技術(shù)人員應(yīng)能理解上述根據(jù)識(shí)別信息獲取數(shù)據(jù)記錄的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的根據(jù)識(shí)別信息獲取數(shù)據(jù)記錄的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0056]優(yōu)選地,所述識(shí)別信息包括第一識(shí)別信息和第二識(shí)別信息。所述第一識(shí)別信息是指目標(biāo)數(shù)據(jù)對(duì)象的唯一對(duì)應(yīng)的認(rèn)證識(shí)別信息,包括業(yè)務(wù)主鍵,例如,學(xué)生畢業(yè)證統(tǒng)計(jì)信息表中的畢業(yè)證編號(hào),可唯一確定目標(biāo)數(shù)據(jù)對(duì)象,并能夠藉此精確查找到目標(biāo)數(shù)據(jù)對(duì)象。所述第二識(shí)別信息是指目標(biāo)數(shù)據(jù)對(duì)象對(duì)應(yīng)的類型或其它更寬泛的可以進(jìn)行查找的范圍識(shí)別信息, 包括業(yè)務(wù)類別或分類,例如,學(xué)生畢業(yè)證統(tǒng)計(jì)信息表中的所屬學(xué)院或班級(jí),在第一識(shí)別信息缺失或無法查詢到目標(biāo)數(shù)據(jù)對(duì)象對(duì)應(yīng)的數(shù)據(jù)記錄時(shí),一般這種情況數(shù)據(jù)目標(biāo)數(shù)據(jù)對(duì)象被刪除的情況,此時(shí)無法獲取目標(biāo)數(shù)據(jù)對(duì)象準(zhǔn)確的第一識(shí)別信息,例如業(yè)務(wù)主鍵,則可通過第二識(shí)別信息,例如業(yè)務(wù)類別進(jìn)行查找,從而檢索出該業(yè)務(wù)類別下被刪除的目標(biāo)數(shù)據(jù)對(duì)象的數(shù)據(jù)記錄,從而據(jù)此展開進(jìn)一步追溯。通過第二識(shí)別信息,使得被刪除的目標(biāo)數(shù)據(jù)對(duì)象的追溯也成為可能,從而增加了數(shù)據(jù)管理的全面性和提升了數(shù)據(jù)的安全性。
[0057]接著,在步驟S3中設(shè)備1根據(jù)所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更信息。所述變更信息,包括目標(biāo)數(shù)據(jù)對(duì)象的數(shù)據(jù)記錄在歷史時(shí)段中的多個(gè)版本之間的變更情況,或者各個(gè)歷史時(shí)段分別與現(xiàn)有版本之間的變更情況。例如上文所述在數(shù)據(jù)庫或其它存儲(chǔ)模塊中查找到目標(biāo)數(shù)據(jù)對(duì)象對(duì)應(yīng)的數(shù)據(jù)記錄后,即利用例如apache的BeanUtils工具或類似模塊將數(shù)據(jù)記錄在指定歷史時(shí)段中的多個(gè)版本之間或僅僅某一個(gè)歷史版本與現(xiàn)有版本進(jìn)行比對(duì)也就是圖7中所示的“對(duì)比各個(gè)屬性值”,其中,屬性值即為目標(biāo)數(shù)據(jù)對(duì)象中的數(shù)據(jù),例如學(xué)生的性別,家庭住址等,從而找到修改過的目標(biāo)對(duì)象的屬性值,在此,當(dāng)數(shù)據(jù)記錄被查找的時(shí),若為字符串等被序列化過的數(shù)據(jù),則可優(yōu)先進(jìn)行反序列化,如圖7所示“反序列化成 java對(duì)象”。優(yōu)選地,可將修改過的屬性進(jìn)行標(biāo)記顯示也就是圖7中的“顯示差異信息”,例如高亮顯現(xiàn)或采用特定字符標(biāo)記。[〇〇58]圖5示出根據(jù)本申請(qǐng)另一個(gè)方面的一種用于數(shù)據(jù)變更管理的方法流程圖。所述方法包括步驟S4、步驟S5、步驟S1、步驟S2、步驟S3。
[0059]其中,在步驟S4中設(shè)備1獲取數(shù)據(jù)對(duì)象的變更動(dòng)態(tài)信息;在步驟S5中設(shè)備1序列化所述數(shù)據(jù)對(duì)象并保存當(dāng)前時(shí)段的數(shù)據(jù)記錄;在步驟S1中設(shè)備1獲取關(guān)于目標(biāo)數(shù)據(jù)對(duì)象的追溯指令,其中,所述追溯指令對(duì)應(yīng)指定歷史時(shí)段;在步驟S2中設(shè)備1根據(jù)所述目標(biāo)數(shù)據(jù)對(duì)象的識(shí)別信息獲取指定歷史時(shí)段的數(shù)據(jù)記錄;在步驟S3中設(shè)備1反序列化指定歷史時(shí)段的所述數(shù)據(jù)記錄,根據(jù)反序列化后的所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更信息。
[0060]在此,圖5中的步驟S1、步驟S2與圖4中的步驟S1、步驟S2相同或相似,不再贅述。
[0061]具體地,在步驟S4中設(shè)備1獲取數(shù)據(jù)對(duì)象的變更動(dòng)態(tài)信息。所述數(shù)據(jù)對(duì)象的變更動(dòng)態(tài)信息是指業(yè)務(wù)對(duì)象的被修改或出現(xiàn)改動(dòng)的情況,例如,主動(dòng)查詢或發(fā)現(xiàn)到有數(shù)據(jù)對(duì)象被改動(dòng),或者使用MD5校驗(yàn)技術(shù)對(duì)目標(biāo)數(shù)據(jù)對(duì)象進(jìn)行檢測,一旦發(fā)生變動(dòng),則通過上報(bào)或主動(dòng)獲取等方式獲取變更動(dòng)態(tài)信息,在此,變更動(dòng)態(tài)信息的獲取時(shí)用于發(fā)現(xiàn)和監(jiān)測數(shù)據(jù)對(duì)象的修改或更正等變更操作,從而可以在發(fā)生變更后,隨即對(duì)當(dāng)前數(shù)據(jù)對(duì)象的數(shù)據(jù)記錄進(jìn)行保存,或進(jìn)一步的處理,從而使得在追溯時(shí),可以對(duì)每次修改對(duì)應(yīng)的數(shù)據(jù)記錄進(jìn)行查詢。
[0062]本領(lǐng)域技術(shù)人員應(yīng)能理解上述獲取變更動(dòng)態(tài)信息的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的獲取變更動(dòng)態(tài)信息的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0063]接著,在步驟S5中設(shè)備1序列化所述數(shù)據(jù)對(duì)象并保存當(dāng)前時(shí)段的數(shù)據(jù)記錄。即在發(fā)現(xiàn)有數(shù)據(jù)對(duì)象發(fā)生改動(dòng)或變更后將對(duì)應(yīng)的時(shí)段中的數(shù)據(jù)記錄進(jìn)行保存,并采用序列化的方式,將數(shù)據(jù)記錄轉(zhuǎn)換為字符串后進(jìn)行保存,例如圖7中“序列化JS0N”所示,把需要跟蹤的整個(gè)業(yè)務(wù)數(shù)據(jù)對(duì)象使用JS0N序列化為一個(gè)文件后保存,然后進(jìn)行版本管理,并保存到后臺(tái)數(shù)據(jù)庫,可以是任意數(shù)據(jù)庫,比如〇抑〇16,1117891,1]101^0(113等,或者是數(shù)據(jù)文件。在此,使用幾(^ 進(jìn)行序列化,會(huì)使得數(shù)據(jù)的兼容性和包容性更強(qiáng),同時(shí)序列化后將數(shù)據(jù)記錄統(tǒng)一進(jìn)行版本管理,可以跟蹤所有的字段變化,且可對(duì)比任意時(shí)間段的數(shù)據(jù)變化,同時(shí)對(duì)于開發(fā)人員來說僅需書寫一行代碼,把需要跟蹤的數(shù)據(jù)扔到版本管理框架中即可,而不需要再書寫大段具有邏輯針對(duì)性的跟蹤追溯代碼,在此版本管理是指數(shù)據(jù)對(duì)象的多個(gè)歷史修改版本。
[0064]本領(lǐng)域技術(shù)人員應(yīng)能理解上述序列化數(shù)據(jù)記錄的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的序列化數(shù)據(jù)記錄的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0065]優(yōu)選地,在步驟S5中設(shè)備1將序列化后的所述數(shù)據(jù)對(duì)象中的關(guān)鍵信息保存為當(dāng)前時(shí)段的數(shù)據(jù)記錄,其中,所述關(guān)鍵信息中包括所述數(shù)據(jù)對(duì)象的識(shí)別信息。所述關(guān)鍵信息是指用于保存在可進(jìn)行歷史時(shí)段查詢的數(shù)據(jù)記錄中的信息,可用于識(shí)別數(shù)據(jù)對(duì)象的信息,或記錄時(shí)間、修改時(shí)間、修改人等一些必要信息,以及用戶需要追蹤的信息。例如圖7中所示“記錄關(guān)鍵信息而10、?1(、1]861'10、1';[1118七311^,4〇1:;[〇11”,這一動(dòng)作即將改動(dòng)的業(yè)務(wù)對(duì)象及其子對(duì)象轉(zhuǎn)換成一個(gè)json字符串后,生成該修改記錄的一個(gè)UUID作為PK主鍵,同時(shí)抽取出該業(yè)務(wù)對(duì)象的主鍵ID、業(yè)務(wù)類別,當(dāng)前時(shí)間戳,修改人信息、增/刪/改標(biāo)記等數(shù)據(jù)作為一條記錄保存到后臺(tái)數(shù)據(jù)庫,在此UUID用于唯一識(shí)別數(shù)據(jù)對(duì)象。保存關(guān)鍵信息使得數(shù)據(jù)保存具有針對(duì)性,亦使得后續(xù)追溯查找更加高效。
[0066]接著,在追溯過程中在步驟S3中設(shè)備1反序列化指定歷史時(shí)段的所述數(shù)據(jù)記錄,根據(jù)反序列化后的所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更信息。接上文,若數(shù)據(jù)記錄在保存時(shí)被反序列化,則在查找并獲取指定歷史時(shí)段對(duì)應(yīng)數(shù)據(jù)記錄后,為使得用戶能夠直觀瀏覽或相關(guān)數(shù)據(jù)對(duì)比工具能夠?qū)?shù)據(jù)數(shù)據(jù)記錄進(jìn)行處理,需要對(duì)當(dāng)前呈現(xiàn)為字符串狀態(tài)的數(shù)據(jù)記錄進(jìn)行反序列化,即如圖7中“反序列化為java對(duì)象”,根據(jù)需要的追溯的業(yè)務(wù)對(duì)象主鍵ID在版本記錄后臺(tái)數(shù)據(jù)庫中檢索,找到相應(yīng)的一系列修改記錄,并通過JS0N工具反序列化成java對(duì)象。
[0067]本領(lǐng)域技術(shù)人員應(yīng)能理解上述反序列化數(shù)據(jù)記錄的方式僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的反序列化數(shù)據(jù)記錄的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0068]圖6示出根據(jù)本申請(qǐng)另一個(gè)方面的一種優(yōu)選實(shí)例的步驟S2示意圖。所述步驟S2包括步驟S21、步驟S22。
[0069]其中,在步驟S21中設(shè)備1根據(jù)所述第一識(shí)別信息查找指定歷史時(shí)段的數(shù)據(jù)記錄; 在步驟S22中設(shè)備1若查找到所述數(shù)據(jù)記錄,則獲取所述數(shù)據(jù)記錄,否則根據(jù)所述第二識(shí)別信息獲取所述數(shù)據(jù)記錄。
[0070]具體地,在步驟S21中設(shè)備1根據(jù)所述第一識(shí)別信息查找指定歷史時(shí)段的數(shù)據(jù)記錄。所述第一識(shí)別信息是指目標(biāo)數(shù)據(jù)對(duì)象的唯一對(duì)應(yīng)的認(rèn)證識(shí)別信息,包括業(yè)務(wù)主鍵,例如,學(xué)生畢業(yè)證統(tǒng)計(jì)信息表中的畢業(yè)證編號(hào),可唯一確定目標(biāo)數(shù)據(jù)對(duì)象,并能夠藉此精確查找到目標(biāo)數(shù)據(jù)對(duì)象。因此根據(jù)第一識(shí)別信息,例如業(yè)務(wù)對(duì)象的主鍵ID在數(shù)據(jù)庫中檢索對(duì)應(yīng)歷史時(shí)段的一個(gè)或多個(gè)版本的數(shù)據(jù)記錄,例如,在圖7中,“檢索數(shù)據(jù)庫”若存在,則獲取數(shù)據(jù)記錄后跳轉(zhuǎn)至下一步。
[0071]接著,在步驟S22中設(shè)備1若查找到所述數(shù)據(jù)記錄,則獲取所述數(shù)據(jù)記錄,否則根據(jù)所述第二識(shí)別信息獲取所述數(shù)據(jù)記錄。所述第二識(shí)別信息是指目標(biāo)數(shù)據(jù)對(duì)象對(duì)應(yīng)的類型或其它更寬泛的可以進(jìn)行查找的范圍識(shí)別信息,包括業(yè)務(wù)類別或分類,例如,學(xué)生畢業(yè)證統(tǒng)計(jì)信息表中的所屬學(xué)院或班級(jí)。在第一識(shí)別信息缺失或無法查詢到目標(biāo)數(shù)據(jù)對(duì)象對(duì)應(yīng)的數(shù)據(jù)記錄時(shí),例如圖7中“檢索數(shù)據(jù)庫”不存在需要的目標(biāo)數(shù)據(jù)對(duì)象的數(shù)據(jù)記錄,一般這種情況數(shù)據(jù)目標(biāo)數(shù)據(jù)對(duì)象被刪除的情況,此時(shí)無法獲取目標(biāo)數(shù)據(jù)對(duì)象準(zhǔn)確的第一識(shí)別信息,例如業(yè)務(wù)主鍵,則可通過第二識(shí)別信息,例如業(yè)務(wù)類別進(jìn)行查找,從而檢索出該業(yè)務(wù)類別下被刪除的目標(biāo)數(shù)據(jù)對(duì)象的數(shù)據(jù)記錄,從而據(jù)此展開進(jìn)一步追溯。若第二識(shí)別信息仍未尋找到,則可如圖7中所示,直接結(jié)束追溯。通過第二識(shí)別信息,使得被刪除的目標(biāo)數(shù)據(jù)對(duì)象的追溯也成為可能,從而增加了數(shù)據(jù)管理的全面性和提升了數(shù)據(jù)的安全性。
[0072]本領(lǐng)域技術(shù)人員應(yīng)能理解上述通過第二識(shí)別信息查找數(shù)據(jù)記錄的方式僅為舉例, 其他現(xiàn)有的或今后可能出現(xiàn)的通過第二識(shí)別信息查找數(shù)據(jù)記錄的方式如可適用于本申請(qǐng), 也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0073]顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本申請(qǐng)進(jìn)行各種改動(dòng)和變型而不脫離本申請(qǐng)的精神和范圍。這樣,倘若本申請(qǐng)的這些修改和變型屬于本申請(qǐng)權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本申請(qǐng)也意圖包含這些改動(dòng)和變型在內(nèi)。
[0074]需要注意的是,本申請(qǐng)可在軟件和/或軟件與硬件的組合體中被實(shí)施,例如,可采用專用集成電路(ASIC)、通用目的計(jì)算機(jī)或任何其他類似硬件設(shè)備來實(shí)現(xiàn)。在一個(gè)實(shí)施例中,本申請(qǐng)的軟件程序可以通過處理器執(zhí)行以實(shí)現(xiàn)上文所述步驟或功能。同樣地,本申請(qǐng)的軟件程序(包括相關(guān)的數(shù)據(jù)結(jié)構(gòu))可以被存儲(chǔ)到計(jì)算機(jī)可讀記錄介質(zhì)中,例如,RAM存儲(chǔ)器, 磁或光驅(qū)動(dòng)器或軟磁盤及類似設(shè)備。另外,本申請(qǐng)的一些步驟或功能可采用硬件來實(shí)現(xiàn),例如,作為與處理器配合從而執(zhí)行各個(gè)步驟或功能的電路。
[0075]另外,本申請(qǐng)的一部分可被應(yīng)用為計(jì)算機(jī)程序產(chǎn)品,例如計(jì)算機(jī)程序指令,當(dāng)其被計(jì)算機(jī)執(zhí)行時(shí),通過該計(jì)算機(jī)的操作,可以調(diào)用或提供根據(jù)本申請(qǐng)的方法和/或技術(shù)方案。 而調(diào)用本申請(qǐng)的方法的程序指令,可能被存儲(chǔ)在固定的或可移動(dòng)的記錄介質(zhì)中,和/或通過廣播或其他信號(hào)承載媒體中的數(shù)據(jù)流而被傳輸,和/或被存儲(chǔ)在根據(jù)所述程序指令運(yùn)行的計(jì)算機(jī)設(shè)備的工作存儲(chǔ)器中。在此,根據(jù)本申請(qǐng)的一個(gè)實(shí)施例包括一個(gè)裝置,該裝置包括用于存儲(chǔ)計(jì)算機(jī)程序指令的存儲(chǔ)器和用于執(zhí)行程序指令的處理器,其中,當(dāng)該計(jì)算機(jī)程序指令被該處理器執(zhí)行時(shí),觸發(fā)該裝置運(yùn)行基于前述根據(jù)本申請(qǐng)的多個(gè)實(shí)施例的方法和/或技術(shù)方案。[〇〇76]對(duì)于本領(lǐng)域技術(shù)人員而言,顯然本申請(qǐng)不限于上述示范性實(shí)施例的細(xì)節(jié),而且在不背離本申請(qǐng)的精神或基本特征的情況下,能夠以其他的具體形式實(shí)現(xiàn)本申請(qǐng)。因此,無論從哪一點(diǎn)來看,均應(yīng)將實(shí)施例看作是示范性的,而且是非限制性的,本申請(qǐng)的范圍由所附權(quán)利要求而不是上述說明限定,因此旨在將落在權(quán)利要求的等同要件的含義和范圍內(nèi)的所有變化涵括在本申請(qǐng)內(nèi)。不應(yīng)將權(quán)利要求中的任何附圖標(biāo)記視為限制所涉及的權(quán)利要求。此夕卜,顯然“包括”一詞不排除其他單元或步驟,單數(shù)不排除復(fù)數(shù)。裝置權(quán)利要求中陳述的多個(gè)單元或裝置也可以由一個(gè)單元或裝置通過軟件或者硬件來實(shí)現(xiàn)。第一,第二等詞語用來表示名稱,而并不表示任何特定的順序。
【主權(quán)項(xiàng)】
1.一種用于數(shù)據(jù)變更管理的方法,其中,該方法包括:獲取關(guān)于目標(biāo)數(shù)據(jù)對(duì)象的追溯指令,其中,所述追溯指令對(duì)應(yīng)指定歷史時(shí)段;根據(jù)所述目標(biāo)數(shù)據(jù)對(duì)象的識(shí)別信息獲取指定歷史時(shí)段的數(shù)據(jù)記錄;根據(jù)所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更信息。2.根據(jù)權(quán)利要求1所述的方法,其中,所述識(shí)別信息包括第一識(shí)別信息和第二識(shí)別信息。3.根據(jù)權(quán)利要求2所述的方法,其中,所述根據(jù)所述目標(biāo)數(shù)據(jù)對(duì)象的識(shí)別信息獲取指定 歷史時(shí)段的數(shù)據(jù)記錄包括:根據(jù)所述第一識(shí)別信息查找指定歷史時(shí)段的數(shù)據(jù)記錄;若查找到所述數(shù)據(jù)記錄,則獲取所述數(shù)據(jù)記錄,否則根據(jù)所述第二識(shí)別信息獲取所述 數(shù)據(jù)記錄。4.根據(jù)權(quán)利要求1所述的方法,其中,所述方法還包括:獲取數(shù)據(jù)對(duì)象的變更動(dòng)態(tài)信息;序列化所述數(shù)據(jù)對(duì)象并保存當(dāng)前時(shí)段的數(shù)據(jù)記錄;其中,所述根據(jù)所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更信息包括:反序列化指定歷史時(shí)段的所述數(shù)據(jù)記錄,根據(jù)反序列化后的所述數(shù)據(jù)記錄確定所述目 標(biāo)數(shù)據(jù)對(duì)象的變更信息。5.根據(jù)權(quán)利要求4所述的方法,其中,所述序列化所述數(shù)據(jù)對(duì)象并保存當(dāng)前時(shí)段的數(shù)據(jù) 記錄包括:將序列化后的所述數(shù)據(jù)對(duì)象中的關(guān)鍵信息保存為當(dāng)前時(shí)段的數(shù)據(jù)記錄,其中,所述關(guān) 鍵信息中包括所述數(shù)據(jù)對(duì)象的識(shí)別信息。6.—種用于數(shù)據(jù)變更管理的數(shù)據(jù)追溯設(shè)備,其中,該設(shè)備包括:追溯指令獲取裝置,用于獲取關(guān)于目標(biāo)數(shù)據(jù)對(duì)象的追溯指令,其中,所述追溯指令對(duì)應(yīng) 指定歷史時(shí)段;數(shù)據(jù)記錄獲取裝置,用于根據(jù)所述目標(biāo)數(shù)據(jù)對(duì)象的識(shí)別信息獲取指定歷史時(shí)段的數(shù)據(jù) 記錄;變更信息確定裝置,用于根據(jù)所述數(shù)據(jù)記錄確定所述目標(biāo)數(shù)據(jù)對(duì)象的變更信息。7.根據(jù)權(quán)利要求6所述的設(shè)備,其中,所述識(shí)別信息包括第一識(shí)別信息和第二識(shí)別信息。8.根據(jù)權(quán)利要求7所述的設(shè)備,其中,所述數(shù)據(jù)記錄獲取裝置包括:數(shù)據(jù)記錄查找單元,用于根據(jù)所述第一識(shí)別信息查找指定歷史時(shí)段的數(shù)據(jù)記錄;數(shù)據(jù)記錄獲取單元,用于若查找到所述數(shù)據(jù)記錄,則獲取所述數(shù)據(jù)記錄,否則根據(jù)所述 第二識(shí)別信息獲取所述數(shù)據(jù)記錄。9.根據(jù)權(quán)利要6所述的設(shè)備,其中,所述設(shè)備還包括:變更動(dòng)態(tài)獲取裝置,用于獲取數(shù)據(jù)對(duì)象的變更動(dòng)態(tài)信息;數(shù)據(jù)記錄保存裝置,用于序列化所述數(shù)據(jù)對(duì)象并保存當(dāng)前時(shí)段的數(shù)據(jù)記錄;其中,所述變更信息確定裝置用于:反序列化指定歷史時(shí)段的所述數(shù)據(jù)記錄,根據(jù)反序列化后的所述數(shù)據(jù)記錄確定所述目 標(biāo)數(shù)據(jù)對(duì)象的變更信息。10.根據(jù)權(quán)利要9所述的設(shè)備,其中,所述數(shù)據(jù)記錄保存裝置用于:將序列化后的所述數(shù)據(jù)對(duì)象中的關(guān)鍵信息保存為當(dāng)前時(shí)段的數(shù)據(jù)記錄,其中,所述關(guān) 鍵信息中包括所述數(shù)據(jù)對(duì)象的識(shí)別信息。
【文檔編號(hào)】G06F17/30GK106021369SQ201610307891
【公開日】2016年10月12日
【申請(qǐng)日】2016年5月11日
【發(fā)明人】王曉菁, 陳懷海, 杜宇杰
【申請(qǐng)人】上海佳依佳信息科技有限公司