欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

操作數(shù)據(jù)記錄方法、裝置和服務(wù)器的制造方法

文檔序號:6501749閱讀:206來源:國知局
操作數(shù)據(jù)記錄方法、裝置和服務(wù)器的制造方法
【專利摘要】本發(fā)明公開了一種操作數(shù)據(jù)記錄方法、裝置和服務(wù)器,所述方法包括:獲取數(shù)據(jù)操作對象標(biāo)識,所述數(shù)據(jù)操作對象標(biāo)識用于標(biāo)識內(nèi)存數(shù)據(jù)存儲系統(tǒng)數(shù)據(jù)操作的數(shù)據(jù)操作對象;在內(nèi)存中緩存所述數(shù)據(jù)操作對象標(biāo)識;在文件寫入條件被觸發(fā)時,根據(jù)緩存的數(shù)據(jù)操作對象標(biāo)識查詢對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容,將數(shù)據(jù)操作對象標(biāo)識及對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容寫入操作數(shù)據(jù)記錄文件,所述對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容為所述數(shù)據(jù)操作對象在查詢進(jìn)行時的當(dāng)前內(nèi)容。本發(fā)明還公開了對應(yīng)的裝置和包括所述裝置的服務(wù)器。本發(fā)明可以在減小進(jìn)行操作數(shù)據(jù)緩存的內(nèi)存容量的同時,保持操作數(shù)據(jù)記錄文件的大小不大幅增加。
【專利說明】操作數(shù)據(jù)記錄方法、裝置和服務(wù)器

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及存儲技術(shù),具體涉及內(nèi)存數(shù)據(jù)存儲系統(tǒng)管理技術(shù),尤其涉及內(nèi)存數(shù)據(jù) 存儲系統(tǒng)的操作數(shù)據(jù)記錄方法、裝置和服務(wù)器。

【背景技術(shù)】
[0002] 內(nèi)存數(shù)據(jù)存儲系統(tǒng)利用內(nèi)存讀寫速度快的優(yōu)勢,在內(nèi)存中存儲大量數(shù)據(jù),并直接 在內(nèi)存中進(jìn)行數(shù)據(jù)操作,可以滿足目前網(wǎng)絡(luò)存儲對于響應(yīng)速度的要求。
[0003] 操作數(shù)據(jù)記錄技術(shù)為目前通常的計(jì)算機(jī)存儲系統(tǒng)中為提高可用性而采用的方法, 其在計(jì)算機(jī)存儲系統(tǒng)數(shù)據(jù)操作成功后,在操作數(shù)據(jù)記錄文件中記錄數(shù)據(jù)操作對象標(biāo)識以及 數(shù)據(jù)操作對象內(nèi)容。當(dāng)存儲系統(tǒng)出現(xiàn)故障后,可以使用操作數(shù)據(jù)記錄文件記錄的數(shù)據(jù)操作 將存儲系統(tǒng)的數(shù)據(jù)還原。
[0004] 由于內(nèi)存數(shù)據(jù)存儲系統(tǒng)具有業(yè)務(wù)請求量大,響應(yīng)快的特點(diǎn),進(jìn)行操作數(shù)據(jù)記錄時 需要記錄的數(shù)據(jù)極多,硬盤的輸入輸出速度不能滿足需要,因此通常會將操作數(shù)據(jù)在內(nèi)存 中緩存起來。現(xiàn)有技術(shù)中,通常對所有的操作數(shù)據(jù)均進(jìn)行緩存,滿足預(yù)定條件后再將緩存的 數(shù)據(jù)寫入硬盤中的操作數(shù)據(jù)記錄文件。但是,當(dāng)對于存儲系統(tǒng)的操作數(shù)據(jù)量和操作頻率不 斷增長時,如果進(jìn)行操作數(shù)據(jù)記錄文件寫入操作的間隔較短,則會導(dǎo)致操作數(shù)據(jù)記錄文件 占用的存儲空間過大,而如果延長進(jìn)行操作數(shù)據(jù)記錄文件寫入操作的間隔,則需要占用極 大的內(nèi)存空間來進(jìn)行操作數(shù)據(jù)緩存,由此,對內(nèi)存數(shù)據(jù)存儲系統(tǒng)性能構(gòu)成不良影響。


【發(fā)明內(nèi)容】

[0005] 有鑒于此,本發(fā)明提供一種操作數(shù)據(jù)記錄方法、裝置和服務(wù)器,以降低內(nèi)存數(shù)據(jù)存 儲系統(tǒng)中用于進(jìn)行操作數(shù)據(jù)緩存的內(nèi)存容量同時保持操作數(shù)據(jù)記錄文件的大小不會過大。
[0006] 本發(fā)明公開了一種操作數(shù)據(jù)記錄方法,包括:
[0007] 獲取數(shù)據(jù)操作對象標(biāo)識,所述數(shù)據(jù)操作對象標(biāo)識用于標(biāo)識內(nèi)存數(shù)據(jù)存儲系統(tǒng)數(shù)據(jù) 操作的數(shù)據(jù)操作對象;
[0008] 在內(nèi)存中緩存所述數(shù)據(jù)操作對象標(biāo)識;
[0009] 在文件寫入條件被觸發(fā)時,根據(jù)緩存的數(shù)據(jù)操作對象標(biāo)識查詢對應(yīng)的數(shù)據(jù)操作對 象的內(nèi)容,將數(shù)據(jù)操作對象標(biāo)識及對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容寫入操作數(shù)據(jù)記錄文件,所 述對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容為所述數(shù)據(jù)操作對象在查詢進(jìn)行時的當(dāng)前內(nèi)容。
[0010] 本發(fā)明還公開了一種操作數(shù)據(jù)記錄裝置,包括:
[0011] 獲取單元,用于獲取數(shù)據(jù)操作對象標(biāo)識,所述數(shù)據(jù)操作對象標(biāo)識用于標(biāo)識內(nèi)存數(shù) 據(jù)存儲系統(tǒng)數(shù)據(jù)操作的數(shù)據(jù)操作對象;
[0012] 緩存單元,用于在內(nèi)存中緩存所述數(shù)據(jù)操作對象標(biāo)識;
[0013] 文件寫入單元,用于在文件寫入條件被觸發(fā)時,根據(jù)緩存的數(shù)據(jù)操作對象標(biāo)識查 詢對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容,將數(shù)據(jù)操作對象標(biāo)識及對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容寫入操 作數(shù)據(jù)記錄文件,所述對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容為所述數(shù)據(jù)操作對象在查詢進(jìn)行時的當(dāng) 前內(nèi)容。
[0014] 本發(fā)明還公開了一種服務(wù)器,其包括上述的操作數(shù)據(jù)記錄裝置。
[0015] 本發(fā)明通過在進(jìn)行操作數(shù)據(jù)緩存時,僅緩存被操作的數(shù)據(jù)操作對象標(biāo)識,而在生 成操作數(shù)據(jù)記錄文件時再根據(jù)緩存數(shù)據(jù)操作對象標(biāo)識查詢對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容,將 數(shù)據(jù)操作對象標(biāo)識和數(shù)據(jù)操作對象內(nèi)容寫入操作數(shù)據(jù)記錄文件,由此,在減小進(jìn)行操作數(shù) 據(jù)緩存的內(nèi)存容量的同時,保持了操作數(shù)據(jù)記錄文件的大小不大幅增加。

【專利附圖】

【附圖說明】
[0016] 圖1是本發(fā)明的運(yùn)行環(huán)境的示意圖;
[0017] 圖2是本發(fā)明第一實(shí)施例的操作數(shù)據(jù)記錄方法的流程圖;
[0018] 圖3是現(xiàn)有技術(shù)中進(jìn)行操作數(shù)據(jù)記錄的示意圖;
[0019] 圖4是本發(fā)明第一實(shí)施例進(jìn)行操作數(shù)據(jù)記錄的示意圖;
[0020] 圖5是本發(fā)明第一實(shí)施例的一個優(yōu)選實(shí)施方式的流程圖;
[0021] 圖6是本發(fā)明第二實(shí)施例的操作數(shù)據(jù)記錄裝置的示意圖;
[0022] 圖7是本發(fā)明第二實(shí)施例的一個優(yōu)選實(shí)施方式的示意圖。

【具體實(shí)施方式】
[0023] 下面結(jié)合附圖并通過【具體實(shí)施方式】來進(jìn)一步說明本發(fā)明的技術(shù)方案。
[0024] 圖1為可以由本發(fā)明使用的典型數(shù)據(jù)處理系統(tǒng)的示例。本領(lǐng)域技術(shù)人員可以理 解,圖1闡釋了計(jì)算機(jī)系統(tǒng)的多個組件,并不意味著代表組件連接的任何特定架構(gòu)和方式。 還應(yīng)當(dāng)知道具有較少組件或者可能具有較多組件的網(wǎng)絡(luò)計(jì)算機(jī)和其他數(shù)據(jù)處理系統(tǒng)也可 以用于本發(fā)明。
[0025] 如圖1所示,計(jì)算機(jī)系統(tǒng)10是數(shù)據(jù)處理系統(tǒng)的一種形式,其可以包括總線11。微 處理器12、易失性存儲器13以及非易失性存儲器14和/或海量存儲器15均連接到總線 11,通過總線11進(jìn)行數(shù)據(jù)交換和通信。微處理器12可以是獨(dú)立的微處理器,也可以是一個 或者多個微處理器集合??偩€11將上述多個組件連接在一起,同時將上述組件連接到顯示 控制器16和顯示裝置以及輸入/輸出(I/O)裝置17。輸入/輸出(I/O)裝置17可以是鼠 標(biāo)、鍵盤、調(diào)制解調(diào)器、網(wǎng)絡(luò)接口、觸控輸入裝置、體感輸入裝置、打印機(jī)以及本領(lǐng)域公知的 其他裝置。典型地,輸入/輸出裝置17通過輸入/輸出控制器18與系統(tǒng)相連。
[0026] 計(jì)算機(jī)系統(tǒng)10中的易失性存儲器13在本發(fā)明中也稱為內(nèi)存,其具有數(shù)據(jù)讀寫速 度快的特點(diǎn),具體地,易失性存儲器13可由動態(tài)隨機(jī)讀寫存儲器(DRAM)實(shí)現(xiàn),動態(tài)隨機(jī)讀 寫存儲器需要持續(xù)供電以更新或者維持存儲器中的數(shù)據(jù)。
[0027] 通常而言,非易失性存儲器14是指當(dāng)電流關(guān)掉后,所存儲的數(shù)據(jù)不會消失者的存 儲器,其可以包括例如只讀存儲器(ROM)和閃存(Flash Memory)。非易失性存儲器典型地 用于存儲系統(tǒng)啟動的必要程序或其他程序。
[0028] 通常而言,海量存儲器15可以是磁性硬盤驅(qū)動器或者磁性光學(xué)驅(qū)動器或者可以 存儲大量數(shù)據(jù)的存儲器系統(tǒng)的其他類型,海量存儲器15可以在系統(tǒng)切斷電源之后還保持 大量數(shù)據(jù)。盡管圖1所示的海量存儲器15是與數(shù)據(jù)處理系統(tǒng)的其他組件直接連接的本地 設(shè)備,應(yīng)當(dāng)知道本發(fā)明可以使用遠(yuǎn)程海量存儲器,例如與數(shù)據(jù)處理系統(tǒng)通過網(wǎng)絡(luò)接口相連 的網(wǎng)絡(luò)存儲裝置,該網(wǎng)絡(luò)接口例如調(diào)制解調(diào)器或者以太網(wǎng)接口??偩€11可以包括通過多個 本領(lǐng)域公知的橋連接器、控制器和/或適配器,相互連接的一條或者多條總線。在實(shí)施例中 I/O控制器18包括用于控制USB外圍設(shè)備的USB (通用串行總線)適配器、用于IEEE1394 外圍設(shè)備的IEEE1394控制器或者用于控制藍(lán)牙外圍設(shè)備的藍(lán)牙控制器,以及適用于其它 外圍設(shè)備接口標(biāo)準(zhǔn)的外圍設(shè)備控制器。
[0029] 本領(lǐng)域技術(shù)人員可以理解,本發(fā)明的一些實(shí)施例可以全部或至少部分由軟件實(shí) 現(xiàn)。也就是說,本發(fā)明的實(shí)施例可以在計(jì)算機(jī)系統(tǒng)10或者其他數(shù)據(jù)處理系統(tǒng)中以例如微處 理器的處理器執(zhí)行包含在存儲器中的指令序列實(shí)現(xiàn),所述存儲器可以是易失性存儲器或者 遠(yuǎn)程存儲裝置。在多個實(shí)施例中,硬連線電路可以與軟件指令結(jié)合應(yīng)用,以實(shí)現(xiàn)本發(fā)明。如 此,該技術(shù)并不局限于硬件電路和軟件的任何特定結(jié)合,也不局限于數(shù)據(jù)處理系統(tǒng)執(zhí)行的 任何特定指令源。另外,貫穿該描述,各種功能和操作被描述為由軟件代碼執(zhí)行或者由軟件 代碼引發(fā)以簡化該描述。然而,本領(lǐng)域技術(shù)人員可以認(rèn)識到該表達(dá)意味著該功能由例如微 處理器12的處理器執(zhí)行代碼實(shí)現(xiàn)。
[0030] 圖2是本發(fā)明第一實(shí)施例的操作數(shù)據(jù)記錄方法的流程圖,如圖2所示,所述方法包 括:
[0031] 步驟210、獲取數(shù)據(jù)操作對象標(biāo)識,所述數(shù)據(jù)操作對象標(biāo)識用于標(biāo)識內(nèi)存數(shù)據(jù)存儲 系統(tǒng)數(shù)據(jù)操作的數(shù)據(jù)操作對象。
[0032] 具體地,本實(shí)施例所述的內(nèi)存數(shù)據(jù)存儲系統(tǒng)是指將大量數(shù)據(jù)直接存儲在內(nèi)存中并 進(jìn)行數(shù)據(jù)訪問控制的系統(tǒng),其可以是例如內(nèi)存數(shù)據(jù)庫或內(nèi)存對象緩存系統(tǒng)(Memory Object Caching System)。
[0033] 內(nèi)存數(shù)據(jù)庫是指將全部數(shù)據(jù)內(nèi)容存放在內(nèi)存中,而非如磁盤數(shù)據(jù)庫那樣存放在外 部存儲器(例如,硬盤)中的數(shù)據(jù)庫。內(nèi)存數(shù)據(jù)庫所有的數(shù)據(jù)訪問控制都在內(nèi)存中進(jìn)行,其主 要相對于磁盤數(shù)據(jù)庫而言的,磁盤數(shù)據(jù)庫雖然也有一定的緩存機(jī)制,但都不能避免從外設(shè) 到內(nèi)存的交換,而這種交換過程對速度性能的損耗很大。由于內(nèi)存的讀寫速度極快,所以內(nèi) 存數(shù)據(jù)庫的讀寫性能很高,可以應(yīng)用于在對讀寫頻率極高的環(huán)境中。
[0034] 同時,內(nèi)存對象緩存系統(tǒng)(Memory Object Caching System)用于將數(shù)據(jù)庫的一部 分?jǐn)?shù)據(jù)存儲到內(nèi)存中,并直接在內(nèi)存中進(jìn)行數(shù)據(jù)訪問控制以減輕數(shù)據(jù)庫負(fù)載,其通過在內(nèi) 存中緩存數(shù)據(jù)和對象來減少讀取數(shù)據(jù)庫的次數(shù),從而提高訪問數(shù)據(jù)庫的速度。
[0035] 對于內(nèi)存數(shù)據(jù)存儲系統(tǒng),由于其在內(nèi)存中直接進(jìn)行數(shù)據(jù)訪問控制,需要對數(shù)據(jù)操 作歷史進(jìn)行記錄,用于在出現(xiàn)數(shù)據(jù)故障時可以將數(shù)據(jù)恢復(fù)到出現(xiàn)故障前的狀態(tài)。
[0036] 現(xiàn)有的操作數(shù)據(jù)記錄技術(shù)中,采用的方法是在內(nèi)存中對數(shù)據(jù)操作(例如,寫操作) 的所有操作數(shù)據(jù)(包括數(shù)據(jù)操作對象標(biāo)識和數(shù)據(jù)操作對象內(nèi)容)進(jìn)行緩存,然后每隔預(yù)定周 期將緩存的數(shù)據(jù)寫入記錄文件。由于對所有操作數(shù)據(jù)都進(jìn)行緩存,需要的緩存空間大。
[0037] 本實(shí)施例中,僅獲取數(shù)據(jù)操作對象標(biāo)識,所述數(shù)據(jù)操作對象標(biāo)識用于標(biāo)識內(nèi)存數(shù) 據(jù)存儲系統(tǒng)數(shù)據(jù)操作的數(shù)據(jù)操作對象。具體地,在內(nèi)存數(shù)據(jù)存儲系統(tǒng)以鍵-值(Key-Value) 方式存儲數(shù)據(jù)時,數(shù)據(jù)操作對象標(biāo)識可以為鍵-值對中的鍵,在內(nèi)存數(shù)據(jù)存儲系統(tǒng)以關(guān)系 數(shù)據(jù)庫方式存儲數(shù)據(jù)時,數(shù)據(jù)操作對象標(biāo)識可以為關(guān)系數(shù)據(jù)庫主鍵。當(dāng)然,本領(lǐng)域技術(shù)人員 可理解,數(shù)據(jù)操作對象標(biāo)識可以為任意地可以標(biāo)識數(shù)據(jù)操作對象的標(biāo)識。
[0038] 步驟220、在內(nèi)存中緩存數(shù)據(jù)操作對象標(biāo)識。
[0039] 具體地,本步驟在內(nèi)存中的預(yù)定區(qū)域中對獲取的數(shù)據(jù)操作對象的標(biāo)識進(jìn)行緩存, 同時,并不緩存數(shù)據(jù)操作對象的數(shù)據(jù)操作內(nèi)容。
[0040] 步驟230、在文件寫入條件被觸發(fā)時,根據(jù)緩存的數(shù)據(jù)操作對象標(biāo)識查詢對應(yīng)的數(shù) 據(jù)操作對象的內(nèi)容,所述對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容為所述數(shù)據(jù)操作對象在查詢進(jìn)行時的 當(dāng)前內(nèi)容,將數(shù)據(jù)操作對象標(biāo)識及對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容寫入操作數(shù)據(jù)記錄文件。
[0041] 具體地,在本步驟中,在需要將緩存數(shù)據(jù)寫入操作數(shù)據(jù)記錄文件時,根據(jù)緩存的數(shù) 據(jù)操作對象標(biāo)識在內(nèi)存數(shù)據(jù)存儲系統(tǒng)中查詢獲取對應(yīng)的數(shù)據(jù)操作對象的當(dāng)前內(nèi)容,將獲取 得到的當(dāng)前內(nèi)容寫入操作數(shù)據(jù)記錄文件。
[0042] 在本實(shí)施例的一個優(yōu)選實(shí)施方式中,每隔預(yù)定的時間周期觸發(fā)文件寫入條件,也 艮P,每隔預(yù)定時間根據(jù)緩存的數(shù)據(jù)操作對象標(biāo)識在內(nèi)存數(shù)據(jù)存儲系統(tǒng)中查詢獲取對應(yīng)的數(shù) 據(jù)操作對象的當(dāng)前內(nèi)容,將獲取得到的當(dāng)前內(nèi)容寫入操作數(shù)據(jù)記錄文件。所述操作數(shù)據(jù)記 錄文件可以是新建的、與該時間周期對應(yīng)的文件,也可以預(yù)先建立的、用于記錄有所有數(shù)據(jù) 操作的文件。
[0043] 在本實(shí)施例的另一個優(yōu)選實(shí)施方式中,當(dāng)內(nèi)存中緩存的數(shù)據(jù)操作對象標(biāo)識的數(shù)量 達(dá)到預(yù)定數(shù)量閾值時觸發(fā)文件寫入條件,也即,在內(nèi)存中緩存的數(shù)據(jù)操作對象標(biāo)識的數(shù)量 達(dá)到預(yù)定數(shù)量閾值時,根據(jù)緩存的數(shù)據(jù)操作對象標(biāo)識在內(nèi)存數(shù)據(jù)存儲系統(tǒng)中查詢獲取對應(yīng) 的數(shù)據(jù)操作對象的當(dāng)前內(nèi)容,將獲取得到的當(dāng)前內(nèi)容寫入操作數(shù)據(jù)記錄文件。
[0044] 在本實(shí)施例的另一個優(yōu)選實(shí)施方式中,當(dāng)內(nèi)存中緩存的數(shù)據(jù)操作對象標(biāo)識的數(shù)據(jù) 量達(dá)到預(yù)定數(shù)據(jù)量閾值時觸發(fā)文件寫入條件,也即,在內(nèi)存中緩存的數(shù)據(jù)操作對象標(biāo)識的 總數(shù)據(jù)量達(dá)到預(yù)定的數(shù)據(jù)量閾值時,根據(jù)緩存的數(shù)據(jù)操作對象標(biāo)識在內(nèi)存數(shù)據(jù)存儲系統(tǒng)中 查詢獲取對應(yīng)的數(shù)據(jù)操作對象的當(dāng)前內(nèi)容,將獲取得到的當(dāng)前內(nèi)容寫入操作數(shù)據(jù)記錄文 件。
[0045] 以下以鍵-值型內(nèi)存對象緩存系統(tǒng)為例,進(jìn)一步說明本實(shí)施例。鍵-值型內(nèi)存對 象緩存系統(tǒng)以鍵-值對的形式存儲數(shù)據(jù),并依靠散列地圖(Hash Map)來對數(shù)據(jù)進(jìn)行管理。 鍵-值型內(nèi)存對象緩存系統(tǒng)適宜于對網(wǎng)頁(Web)應(yīng)用以及即時通訊(IM)應(yīng)用的數(shù)據(jù)進(jìn)行存 儲。例如,對于即時通訊(頂)應(yīng)用,用戶資料通常以"用戶賬號-用戶數(shù)據(jù)"的形式存在,由 此,鍵-值型的存儲方式可以方便對用戶資料進(jìn)行存儲,同時,內(nèi)存對象緩存系統(tǒng)的高響應(yīng) 速度可以滿足對于用戶資料的頻繁讀寫。
[0046] 在對鍵-值型內(nèi)存對象緩存系統(tǒng)進(jìn)行操作數(shù)據(jù)記錄時,現(xiàn)有的方法對鍵-值對均 進(jìn)行緩存,如果在緩存過程中出現(xiàn)重復(fù)的數(shù)據(jù),則刪除舊數(shù)據(jù),并緩存新數(shù)據(jù),每隔預(yù)定時 間周期將緩存的鍵-值對寫入操作數(shù)據(jù)記錄文件。現(xiàn)有的方法如圖3所示,在時間點(diǎn)tl和 t2之間,緩存所有操作數(shù)據(jù)的鍵-值對,在時刻t2到達(dá)時,將緩存的所有鍵-值對寫入操作 數(shù)據(jù)記錄文件,操作數(shù)據(jù)記錄文件記錄的為t2時刻該鍵-值型內(nèi)存對象緩存系統(tǒng)的狀態(tài)。 在利用該操作數(shù)據(jù)記錄文件進(jìn)行恢復(fù)時,可以將系統(tǒng)狀態(tài)恢復(fù)到t2時刻。
[0047] 而本實(shí)施例則如圖4所示,在時間點(diǎn)tl和t2之間,僅緩存所有操作數(shù)據(jù)的鍵,在 時刻t2達(dá)到時,在進(jìn)行新的鍵緩存的同時,開始根據(jù)在tl至t2時間段內(nèi)緩存的鍵在內(nèi) 存數(shù)據(jù)存儲系統(tǒng)中查詢鍵對應(yīng)的值,由于查詢需要一定時間,查詢到的值有可能并不是時 刻t2的內(nèi)存數(shù)據(jù)存儲系統(tǒng)的值,而是時刻t2后某一時刻的數(shù)據(jù)對象的值。將查詢得到的 鍵-值寫入操作數(shù)據(jù)記錄文件,操作數(shù)據(jù)記錄文件記錄的為t2時刻后某時刻的該鍵-值型 內(nèi)存對象緩存系統(tǒng)的狀態(tài)。在利用該操作數(shù)據(jù)記錄文件進(jìn)行恢復(fù)時,可以將系統(tǒng)狀態(tài)恢復(fù) 到t2時刻后特定時刻的狀態(tài)。
[0048] 當(dāng)然,本領(lǐng)域技術(shù)人員可以理解,以上描述僅為示例性說明,本實(shí)施例的方法可以 應(yīng)用于以其它現(xiàn)有技術(shù)方式存儲的內(nèi)存數(shù)據(jù)存儲系統(tǒng)中。
[0049] 由此,本實(shí)施例通過在進(jìn)行操作數(shù)據(jù)緩存時,僅緩存被操作的數(shù)據(jù)操作對象標(biāo)識, 而在生成操作數(shù)據(jù)記錄文件時再根據(jù)緩存數(shù)據(jù)操作對象標(biāo)識查詢對應(yīng)的數(shù)據(jù)操作對象的 內(nèi)容,將數(shù)據(jù)操作對象標(biāo)識和數(shù)據(jù)操作對象內(nèi)容寫入操作數(shù)據(jù)記錄文件,由此,在減小進(jìn)行 操作數(shù)據(jù)緩存的內(nèi)存容量的同時,保持了操作數(shù)據(jù)記錄文件的大小不大幅增加。
[0050] 如圖5所示,在本實(shí)施例的一個優(yōu)選實(shí)施方式中,所述方法還可以包括步驟240, 在將數(shù)據(jù)操作對象標(biāo)識及對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容寫入操作數(shù)據(jù)記錄文件后,刪除內(nèi)存 中緩存的數(shù)據(jù)操作對象標(biāo)識。清空緩存的操作相對于直接用新的數(shù)據(jù)覆蓋的方式安全性更 高,可以提高緩存操作的可靠性。
[0051] 圖6是本發(fā)明第二實(shí)施例的操作數(shù)據(jù)記錄裝置的示意圖,如圖6所示,所述裝置60 包括獲取單元61,緩存單元62和文件寫入單元63。
[0052] 其中,獲取單元61用于獲取數(shù)據(jù)操作對象標(biāo)識,所述數(shù)據(jù)操作對象標(biāo)識用于標(biāo)識 內(nèi)存數(shù)據(jù)存儲系統(tǒng)數(shù)據(jù)操作的數(shù)據(jù)操作對象。
[0053] 具體地,本實(shí)施例所述的內(nèi)存數(shù)據(jù)存儲系統(tǒng)是指將大量數(shù)據(jù)直接存儲在內(nèi)存中并 進(jìn)行數(shù)據(jù)訪問控制的系統(tǒng),其可以是例如內(nèi)存數(shù)據(jù)庫或內(nèi)存對象緩存系統(tǒng)(Memory Object Caching System)。
[0054] 緩存單元62用于在內(nèi)存中緩存數(shù)據(jù)操作對象標(biāo)識。
[0055] 文件寫入單元63用于在文件寫入條件被觸發(fā)時,根據(jù)緩存的數(shù)據(jù)操作對象標(biāo)識 查詢對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容,將數(shù)據(jù)操作對象標(biāo)識及對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容寫入 操作數(shù)據(jù)記錄文件,所述對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容為所述數(shù)據(jù)操作對象在查詢進(jìn)行時的 當(dāng)前內(nèi)容。
[0056] 在本實(shí)施例的一個優(yōu)選實(shí)施方式中,每隔預(yù)定的時間周期觸發(fā)文件寫入條件,也 艮P,每隔預(yù)定時間根據(jù)緩存的數(shù)據(jù)操作對象標(biāo)識在內(nèi)存數(shù)據(jù)存儲系統(tǒng)中查詢獲取對應(yīng)的數(shù) 據(jù)操作對象的當(dāng)前內(nèi)容,將獲取得到的當(dāng)前內(nèi)容寫入操作數(shù)據(jù)記錄文件。所述操作數(shù)據(jù)記 錄文件可以是新建的、與該時間周期對應(yīng)的文件,也可以預(yù)先建立的、用于記錄有所有數(shù)據(jù) 操作的文件。
[0057] 在本實(shí)施例的另一個優(yōu)選實(shí)施方式中,當(dāng)內(nèi)存中緩存的數(shù)據(jù)操作對象標(biāo)識的數(shù)量 達(dá)到預(yù)定數(shù)量閾值時觸發(fā)文件寫入條件,也即,在內(nèi)存中緩存的數(shù)據(jù)操作對象標(biāo)識的數(shù)量 達(dá)到預(yù)定數(shù)量閾值時,根據(jù)緩存的數(shù)據(jù)操作對象標(biāo)識在內(nèi)存數(shù)據(jù)存儲系統(tǒng)中查詢獲取對應(yīng) 的數(shù)據(jù)操作對象的當(dāng)前內(nèi)容,將獲取得到的當(dāng)前內(nèi)容寫入操作數(shù)據(jù)記錄文件。
[0058] 在本實(shí)施例的另一個優(yōu)選實(shí)施方式中,當(dāng)內(nèi)存中緩存的數(shù)據(jù)操作對象標(biāo)識的數(shù)據(jù) 量達(dá)到預(yù)定數(shù)據(jù)量閾值時觸發(fā)文件寫入條件,也即,在內(nèi)存中緩存的數(shù)據(jù)操作對象標(biāo)識的 總數(shù)據(jù)量達(dá)到預(yù)定的數(shù)據(jù)量閾值時,根據(jù)緩存的數(shù)據(jù)操作對象標(biāo)識在內(nèi)存數(shù)據(jù)存儲系統(tǒng)中 查詢獲取對應(yīng)的數(shù)據(jù)操作對象的當(dāng)前內(nèi)容,將獲取得到的當(dāng)前內(nèi)容寫入操作數(shù)據(jù)記錄文 件。
[0059] 本實(shí)施例中,僅獲取數(shù)據(jù)操作對象標(biāo)識,所述數(shù)據(jù)操作對象標(biāo)識用于標(biāo)識內(nèi)存數(shù) 據(jù)存儲系統(tǒng)數(shù)據(jù)操作的數(shù)據(jù)操作對象。具體地,在內(nèi)存數(shù)據(jù)存儲系統(tǒng)以鍵-值(Key-Value) 方式存儲數(shù)據(jù)時,數(shù)據(jù)操作對象標(biāo)識可以為鍵-值對中的鍵,在內(nèi)存數(shù)據(jù)存儲系統(tǒng)以關(guān)系 數(shù)據(jù)庫方式存儲數(shù)據(jù)時,數(shù)據(jù)操作對象標(biāo)識可以為數(shù)據(jù)庫主鍵。當(dāng)然,本領(lǐng)域技術(shù)人員可理 解,數(shù)據(jù)操作對象標(biāo)識可以為任意地可以標(biāo)識數(shù)據(jù)操作對象的標(biāo)識。
[0060] 如圖7所示,在本實(shí)施例的一個優(yōu)選實(shí)施方式中,所述裝置60還包括內(nèi)存清理單 元64,其用于在將數(shù)據(jù)操作對象標(biāo)識及對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容寫入操作數(shù)據(jù)記錄文件 后,刪除內(nèi)存中緩存的數(shù)據(jù)操作對象標(biāo)識。內(nèi)存清理單元64可以提高緩存操作的可靠性。
[0061] 由此,本實(shí)施例通過在進(jìn)行操作數(shù)據(jù)緩存時,僅緩存被操作的數(shù)據(jù)操作對象標(biāo)識, 而在生成操作數(shù)據(jù)記錄文件時再根據(jù)緩存數(shù)據(jù)操作對象標(biāo)識查詢對應(yīng)的數(shù)據(jù)操作對象的 內(nèi)容,將數(shù)據(jù)操作對象標(biāo)識和數(shù)據(jù)操作對象內(nèi)容寫入操作數(shù)據(jù)記錄文件,由此,在減小進(jìn)行 操作數(shù)據(jù)緩存的內(nèi)存容量的同時,保持了操作數(shù)據(jù)記錄文件的大小不會過大。
[0062] 本實(shí)施例的操作數(shù)據(jù)記錄裝置可以應(yīng)用于服務(wù)器中,所述服務(wù)器用于進(jìn)行數(shù)據(jù)的 訪問控制和管理,所述服務(wù)器可以為獨(dú)立地服務(wù)器,也可以為相互通信連接的多個服務(wù)器 組成的服務(wù)器集群,還可以是部署在相同服務(wù)器集群中的獨(dú)立部分或者部署在同一服務(wù)器 中的獨(dú)立部分。
[0063] 本發(fā)明的實(shí)施例可被實(shí)現(xiàn)成純軟件實(shí)施例,或者包含硬件元件和軟件元件的實(shí)施 例。在優(yōu)選實(shí)施方式中,本發(fā)明是用軟件實(shí)現(xiàn)的,所述軟件包括但不限于:固件、駐留軟件、 微代碼等。
[0064] 此外,本發(fā)明可以采取可從計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)訪問的計(jì)算機(jī)程序產(chǎn)品 的形式,所述計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)提供供計(jì)算機(jī)或者任何指令執(zhí)行系統(tǒng)使用,或 者結(jié)合計(jì)算機(jī)或任何指令執(zhí)行系統(tǒng)使用的程序代碼。對本發(fā)明來說,計(jì)算機(jī)可用或計(jì)算機(jī) 可讀介質(zhì)可以是能夠包含、保存、傳遞、傳播或傳送供指令執(zhí)行系統(tǒng)、設(shè)備或裝置使用,或者 結(jié)合指令執(zhí)行系統(tǒng)、設(shè)一備或裝置使用的程序的任何設(shè)備。
[0065] 所述介質(zhì)可以是電、磁、光、電磁、紅外或半導(dǎo)體系統(tǒng)(或設(shè)備或裝置)或者傳播介 質(zhì)。計(jì)算機(jī)可讀介質(zhì)的例子包括半導(dǎo)體或固態(tài)存儲器、磁帶、可拆卸的計(jì)算機(jī)磁盤、存儲器、 硬盤和光盤。網(wǎng)絡(luò)適配器也可連接到系統(tǒng),從而使數(shù)據(jù)處理系統(tǒng)通過居間的專用或公共網(wǎng) 絡(luò)連接到其它數(shù)據(jù)處理系統(tǒng)或者遠(yuǎn)程打印機(jī)或存儲裝置。調(diào)制解調(diào)器、線纜調(diào)制解調(diào)器和 以太網(wǎng)卡只是日前可用的各種網(wǎng)絡(luò)適配器中的一些。
[〇〇66] 以上所述僅為本發(fā)明的優(yōu)選實(shí)施例,并不用于限制本發(fā)明,對于本領(lǐng)域技術(shù)人員 而言,本發(fā)明可以有各種改動和變化。凡在本發(fā)明的精神和原理之內(nèi)所作的任何修改、等同 替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1. 一種操作數(shù)據(jù)記錄方法,其特征在于,所述方法包括: 獲取數(shù)據(jù)操作對象標(biāo)識,所述數(shù)據(jù)操作對象標(biāo)識用于標(biāo)識內(nèi)存數(shù)據(jù)存儲系統(tǒng)數(shù)據(jù)操作 的數(shù)據(jù)操作對象; 在內(nèi)存中緩存所述數(shù)據(jù)操作對象標(biāo)識; 在文件寫入條件被觸發(fā)時,根據(jù)緩存的數(shù)據(jù)操作對象標(biāo)識查詢對應(yīng)的數(shù)據(jù)操作對象的 內(nèi)容,將數(shù)據(jù)操作對象標(biāo)識及對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容寫入操作數(shù)據(jù)記錄文件,所述對 應(yīng)的數(shù)據(jù)操作對象的內(nèi)容為所述數(shù)據(jù)操作對象在查詢進(jìn)行時的當(dāng)前內(nèi)容。
2. 根據(jù)權(quán)利要求1所述的操作數(shù)據(jù)記錄方法,其特征在于,每隔預(yù)定的時間周期觸發(fā) 文件寫入條件。
3. 根據(jù)權(quán)利要求1所述的操作數(shù)據(jù)記錄方法,其特征在于,當(dāng)內(nèi)存中緩存的數(shù)據(jù)操作 對象標(biāo)識的數(shù)量達(dá)到預(yù)定數(shù)量閾值時觸發(fā)文件寫入條件。
4. 根據(jù)權(quán)利要求1所述的操作數(shù)據(jù)記錄方法,其特征在于,當(dāng)內(nèi)存中緩存的數(shù)據(jù)操作 對象標(biāo)識的數(shù)據(jù)量達(dá)到預(yù)定數(shù)據(jù)量閾值時觸發(fā)文件寫入條件。
5. 根據(jù)權(quán)利要求1-4任一所述的操作數(shù)據(jù)記錄方法,其特征在于,所述方法還包括: 在將數(shù)據(jù)操作對象標(biāo)識及對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容寫入操作數(shù)據(jù)記錄文件后,刪除 內(nèi)存中緩存的數(shù)據(jù)操作對象標(biāo)識。
6. 根據(jù)權(quán)利要求1-4任一所述的操作數(shù)據(jù)記錄方法,其特征在于,所述內(nèi)存數(shù)據(jù)存儲 系統(tǒng)以鍵-值方式存儲數(shù)據(jù),所述數(shù)據(jù)操作對象標(biāo)識為鍵-值對中的鍵。
7. 根據(jù)權(quán)利要求1-4任一所述的操作數(shù)據(jù)記錄方法,其特征在于,所述內(nèi)存數(shù)據(jù)存儲 系統(tǒng)以關(guān)系數(shù)據(jù)庫方式存儲數(shù)據(jù),所述數(shù)據(jù)操作對象標(biāo)識為所述關(guān)系數(shù)據(jù)庫的主鍵。
8. -種操作數(shù)據(jù)記錄裝置,其特征在于,所述裝置包括: 獲取單元,用于獲取數(shù)據(jù)操作對象標(biāo)識,所述數(shù)據(jù)操作對象標(biāo)識用于標(biāo)識內(nèi)存數(shù)據(jù)存 儲系統(tǒng)數(shù)據(jù)操作的數(shù)據(jù)操作對象; 緩存單元,用于在內(nèi)存中緩存所述數(shù)據(jù)操作對象標(biāo)識; 文件寫入單元,用于在文件寫入條件被觸發(fā)時,根據(jù)緩存的數(shù)據(jù)操作對象標(biāo)識查詢對 應(yīng)的數(shù)據(jù)操作對象的內(nèi)容,將數(shù)據(jù)操作對象標(biāo)識及對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容寫入操作數(shù) 據(jù)記錄文件,所述對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容為所述數(shù)據(jù)操作對象在查詢進(jìn)行時的當(dāng)前內(nèi) 容。
9. 根據(jù)權(quán)利要求8所述的操作數(shù)據(jù)記錄裝置,其特征在于,每隔預(yù)定的時間周期觸發(fā) 文件寫入條件。
10. 根據(jù)權(quán)利要求8所述的操作數(shù)據(jù)記錄裝置,其特征在于,當(dāng)內(nèi)存中緩存的數(shù)據(jù)操作 對象標(biāo)識的數(shù)量達(dá)到預(yù)定數(shù)量閾值時觸發(fā)文件寫入條件。
11. 根據(jù)權(quán)利要求8所述的操作數(shù)據(jù)記錄裝置,其特征在于,當(dāng)內(nèi)存中緩存的數(shù)據(jù)操作 對象標(biāo)識的數(shù)據(jù)量達(dá)到預(yù)定數(shù)據(jù)量閾值時觸發(fā)文件寫入條件。
12. 根據(jù)權(quán)利要求8-11任一所述的操作數(shù)據(jù)記錄裝置,其特征在于,所述裝置還包括: 內(nèi)存清理單元,用于在將數(shù)據(jù)操作對象標(biāo)識及對應(yīng)的數(shù)據(jù)操作對象的內(nèi)容寫入操作數(shù) 據(jù)記錄文件后,刪除內(nèi)存中緩存的數(shù)據(jù)操作對象標(biāo)識。
13. 根據(jù)權(quán)利要求8-11任一所述的操作數(shù)據(jù)記錄裝置,其特征在于,所述內(nèi)存數(shù)據(jù)存 儲系統(tǒng)以鍵-值方式存儲數(shù)據(jù),所述數(shù)據(jù)操作對象標(biāo)識為鍵-值對中的鍵。
14. 根據(jù)權(quán)利要求8-11任一所述的操作數(shù)據(jù)記錄裝置,其特征在于,所述內(nèi)存數(shù)據(jù)存 儲系統(tǒng)以關(guān)系數(shù)據(jù)庫方式存儲數(shù)據(jù),所述數(shù)據(jù)操作對象標(biāo)識為所述關(guān)系數(shù)據(jù)庫的主鍵。
15. -種服務(wù)器,其特征在于,包括如權(quán)利要求8-14任一所述的操作數(shù)據(jù)記錄裝置。
【文檔編號】G06F17/40GK104102750SQ201310125211
【公開日】2014年10月15日 申請日期:2013年4月11日 優(yōu)先權(quán)日:2013年4月11日
【發(fā)明者】馮曉冰, 高洋 申請人:深圳市騰訊計(jì)算機(jī)系統(tǒng)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
津南区| 改则县| 瑞金市| 武乡县| 张家口市| 修武县| 枣强县| 石林| 潼南县| 东安县| 凤翔县| 汉寿县| 高清| 改则县| 廉江市| 新龙县| 山东省| 廊坊市| 香格里拉县| 革吉县| 溧阳市| 和田县| 安义县| 拜泉县| 吉隆县| 浦北县| 额敏县| 兴义市| 定西市| 昌平区| 南汇区| 崇明县| 湘阴县| 东港市| 庆城县| 广宁县| 金溪县| 开江县| 荣昌县| 娄底市| 海阳市|