專利名稱:管理日志信息的系統(tǒng)和方法
技術(shù)領(lǐng)域:
根據(jù)本發(fā)明的設(shè)備和方法涉及數(shù)據(jù)庫管理系統(tǒng)中的日志信息管理,更具體地講,涉及單獨地管理關(guān)于產(chǎn)生多個更新的數(shù)據(jù)區(qū)域的信息,從而最小化重復(fù)產(chǎn)生的日志信息。
背景技術(shù):
數(shù)據(jù)庫管理系統(tǒng)中的“日志”或“記錄(logging)”是指在數(shù)據(jù)被修改之前存儲的數(shù)據(jù),以使得由于系統(tǒng)錯誤或用戶不小心引起的通過應(yīng)用程序的操作修改的數(shù)據(jù)具有正常值。
通過上述日志,數(shù)據(jù)庫管理系統(tǒng)能夠?qū)⑼ㄟ^異常完成的應(yīng)用控制的數(shù)據(jù)恢復(fù)為正常狀態(tài)。
圖1示出用于執(zhí)行記錄的現(xiàn)有技術(shù)的記錄系統(tǒng)。
參照圖1,現(xiàn)有技術(shù)的記錄系統(tǒng)100被稱為“日志管理器”,其包括日志信息輸入單元110、日志記錄產(chǎn)生單元120、日志請求輸入單元130、日志緩沖器管理單元140和日志緩沖器150。
現(xiàn)有技術(shù)的記錄系統(tǒng)100經(jīng)由日志信息輸入單元110接收關(guān)于在記錄系統(tǒng)所屬的系統(tǒng)內(nèi)的另一程序模塊中執(zhí)行的數(shù)據(jù)更新的信息。
日志記錄產(chǎn)生單元120通過另外設(shè)置需要的信息來產(chǎn)生日志記錄。產(chǎn)生的日志記錄經(jīng)由日志緩沖器管理單元140記錄在日志緩沖器150中。在這種情況下,以產(chǎn)生日志記錄的順序記錄日志記錄。
記錄系統(tǒng)100的日志請求輸入單元接收系統(tǒng)的其他模塊的日志請求消息(例如,業(yè)務(wù)處理完成),并將日志請求消息發(fā)送到日志緩沖器管理單元140。日志緩沖器管理單元140基于發(fā)送的日志請求消息將存儲在日志緩沖器150中的日志記錄記錄在日志文件中。
在應(yīng)用程序的非正常完成或者系統(tǒng)錯誤的情況下,基于記錄在日志文件及日志緩沖器150中的日志記錄,可安全地恢復(fù)數(shù)據(jù)。
日志記錄至少保持用于將數(shù)據(jù)恢復(fù)為原始狀態(tài)的重要信息(或數(shù)據(jù))。圖2示出現(xiàn)有技術(shù)的日志記錄的配置。
參照圖2,日志記錄200包括先前日志記錄的日志序列號(LSN)字段201、業(yè)務(wù)處理標識符字段202、日志記錄類型字段203、頁號字段204、頁偏移字段205、數(shù)據(jù)長度字段206、先前數(shù)據(jù)圖像字段207、新數(shù)據(jù)圖像字段208以及日志記錄為無效的LSN字段209。在下文中,包括在日志記錄200中的上述信息被稱為“日志信息”。
先前日志記錄的LSN字段201顯示用于標識記錄的日志記錄的號碼。
對于產(chǎn)生的操作(例如,“更新”、“業(yè)務(wù)處理開始”或者“業(yè)務(wù)處理完成”)的每一個,作為顯示日志記錄的類型的字段的日志記錄類型字段203具有不同類型。
當發(fā)生更新時,頁號字段204顯示存儲更新的數(shù)據(jù)的頁的號碼。當發(fā)生更新時,頁偏移字段205顯示在頁中存儲更新的數(shù)據(jù)的開始位置。數(shù)據(jù)長度字段206顯示將被更新的數(shù)據(jù)的大小。
先前數(shù)據(jù)圖像字段207顯示執(zhí)行更新之前的先前數(shù)據(jù)值,新數(shù)據(jù)圖像字段208顯示執(zhí)行更新之后的修改的數(shù)據(jù)值。
日志記錄為無效的LSN字段209顯示用于識別將被恢復(fù)的日志記錄的號碼取決于使用記錄的系統(tǒng),圖2所示的日志記錄200的配置可以不同,但是其基本配置和意義相似。
圖3A和3B示出記錄操作和業(yè)務(wù)處理取消的現(xiàn)有技術(shù)的處理。如圖3A和3B所示的日志緩沖器或日志文件的日志記錄的配置與如圖2所示的日志記錄的配置相似。如圖3A和3B所示的日志記錄的配置不包括圖2所示的日志記錄的配置的數(shù)據(jù)長度字段206,并且在每一日志記錄上標記的號碼與用于標識每一日志記錄的標識號相應(yīng)。
為了執(zhí)行記錄操作,作為在業(yè)務(wù)處理中產(chǎn)生的更新的結(jié)果,其他模塊將before-image和after-image發(fā)送到記錄系統(tǒng)100的日志信息輸入單元110。
日志記錄產(chǎn)生單元120基于關(guān)于兩個接收的數(shù)據(jù)的信息產(chǎn)生日志記錄。日志緩沖器管理單元140將產(chǎn)生的日志記錄記錄在日志緩沖器150中。
所有產(chǎn)生的日志記錄被連續(xù)記錄,并且以升序分配記錄的日志記錄的LSN值。當日志緩沖器150滿或者發(fā)生對于日志記錄的“盤寫請求”時,記錄在日志緩沖器150中的日志記錄被記錄在日志文件中。
如上所述,所有的由其他模塊產(chǎn)生的更新的日志記錄被順序記錄。當請求取消應(yīng)用程序或者恢復(fù)系統(tǒng)錯誤時,記錄系統(tǒng)100通過讀取日志文件來執(zhí)行取消。
將參照圖3A描述執(zhí)行記錄操作的處理,假設(shè)業(yè)務(wù)處理T1執(zhí)行三個數(shù)據(jù)頁P1、P2和P3的更新。
每當對每一數(shù)據(jù)頁產(chǎn)生更新時,數(shù)據(jù)頁中的相應(yīng)區(qū)域修改為新值。第一日志記錄顯示記錄在數(shù)據(jù)頁P1中的50比特位置的“BBB”修改為“AAA”。
下面的日志記錄的每一個顯示存儲在相應(yīng)的數(shù)據(jù)頁的特定偏移中的值修改為新值。
具體地講,記錄在數(shù)據(jù)頁P1的50比特中的數(shù)據(jù)修改四次。每當發(fā)生修改時,產(chǎn)生相應(yīng)的日志記錄。記錄系統(tǒng)100產(chǎn)生與所有更新相應(yīng)的日志記錄,并將日志記錄連續(xù)記錄在日志緩沖器150以及日志文件中。
圖3A和圖3B示出取消業(yè)務(wù)處理的處理。當發(fā)生圖3A所示的更新時,假設(shè)業(yè)務(wù)處理T1沒有正常完成。
為了將由于業(yè)務(wù)處理T1修改的所有數(shù)據(jù)恢復(fù)為原始正常值,以逆序讀取記錄在日志緩沖器150或者日志文件中的業(yè)務(wù)處理T1的所有日志記錄。通過這樣做,相應(yīng)數(shù)據(jù)頁中的數(shù)據(jù)值修改為記錄在每一日志記錄中的before-image。因此,相應(yīng)數(shù)據(jù)頁P1、P2和P3中更新的所有區(qū)域恢復(fù)為執(zhí)行業(yè)務(wù)處理T1之前的先前值。在此處理中,在數(shù)據(jù)頁P1的50比特的值從“EEE”修改為在四個更新之前的先前值的“BBB”。
如上所述,記錄系統(tǒng)100產(chǎn)生日志記錄,并將它們連續(xù)記錄在由其他模塊執(zhí)行的所有更新的日志中。因此,記錄系統(tǒng)100重復(fù)產(chǎn)生由應(yīng)用程序引起頻繁修改的特定數(shù)據(jù)頁或者數(shù)據(jù)頁中的特定區(qū)域的新的日志記錄。在下文中,發(fā)生多個修改的數(shù)據(jù)區(qū)被稱為“熱點”。
熱點可出現(xiàn)在系統(tǒng)的整個的多個區(qū)域中,并且其大小可大大不同。因此,在執(zhí)行一個操作(業(yè)務(wù)處理)時產(chǎn)生的熱點的日志記錄的數(shù)量可以大大增加,在系統(tǒng)運行時可能擴大日志大小,并且作為實時系統(tǒng)的功能惡化,這是因為連續(xù)產(chǎn)生日志記錄,并且頁輸入和輸出增加。
在應(yīng)用程序的取消或者系統(tǒng)恢復(fù)中,系統(tǒng)的運行時間和恢復(fù)功能可能惡化,這是因為由于熱點而產(chǎn)生的所有日志記錄被用于將數(shù)據(jù)恢復(fù)為原始狀態(tài)。
在圖3B所示的處理中,為了恢復(fù)在數(shù)據(jù)頁P1的50比特的值,例如,對標識為109、106和103的三個日志記錄的操作是沒必要的。
隨著例如數(shù)字裝置的各種嵌入式系統(tǒng)地引入,非常需要存儲在嵌入式系統(tǒng)中的用戶數(shù)據(jù)的安全管理。由于用戶的不小心、應(yīng)用程序的不正常操作或者供電中斷,存儲在系統(tǒng)中的數(shù)據(jù)可能不被保持為正常值。因此,安全地保持正常數(shù)據(jù)的數(shù)據(jù)恢復(fù)系統(tǒng)是非常重要的系統(tǒng)部件。然而,基于記錄的數(shù)據(jù)恢復(fù)系統(tǒng)難于確保資源受限的嵌入式系統(tǒng)所需的響應(yīng)時間和功能。
因此,需要改進在基于記錄的數(shù)據(jù)恢復(fù)系統(tǒng)中管理日志信息的現(xiàn)有技術(shù)方法。
發(fā)明內(nèi)容
本發(fā)明提供一種最小化對于熱點重復(fù)產(chǎn)生的日志信息的系統(tǒng)和方法。
本發(fā)明還提供一種通過單獨地管理關(guān)于熱點的信息來提高數(shù)據(jù)恢復(fù)功能的日志信息管理系統(tǒng)和方法。
根據(jù)本發(fā)明的一方面,提供一種日志信息管理系統(tǒng),包括輸入模塊,接收關(guān)于數(shù)據(jù)更新的日志信息;和控制模塊,如果存在更新的數(shù)據(jù)的頁區(qū)域是熱點,則基于所述日志信息存儲更新的數(shù)據(jù)圖像,其中,控制模塊管理熱點控制列表(HSCL),該HSCL包括熱點管理信息和關(guān)于存儲更新的數(shù)據(jù)圖像的存儲區(qū)域的地址信息。
根據(jù)本發(fā)明的另一方面,提供一種日志信息管理系統(tǒng),包括輸入模塊,接收請求業(yè)務(wù)處理完成的消息;控制模塊,如果在熱點控制列表(HSCL)中注冊了熱點,則提供關(guān)于所述熱點的熱點管理信息;日志記錄產(chǎn)生模塊,產(chǎn)生包括基于熱點管理信息更新的數(shù)據(jù)圖像的日志記錄以及表示業(yè)務(wù)處理完成的日志記錄;和日志緩沖器管理模塊,記錄日志記錄。
根據(jù)本發(fā)明的另一方面,提供一種日志信息管理系統(tǒng),包括輸入模塊,接收請求業(yè)務(wù)處理取消的消息;控制模塊,如果在熱點控制列表(HSCL)中注冊了熱點,則刪除關(guān)于所述熱點的熱點管理信息;日志記錄產(chǎn)生模塊,產(chǎn)生表示業(yè)務(wù)處理取消的日志記錄;和日志緩沖器,記錄日志記錄。
根據(jù)本發(fā)明的另一方面,提供一種日志信息管理方法,包括接收關(guān)于數(shù)據(jù)更新的日志信息;和當存在更新的數(shù)據(jù)的頁區(qū)域是熱點時,基于日志信息存儲更新的數(shù)據(jù)圖像,其中,關(guān)于存儲更新的數(shù)據(jù)圖像的存儲區(qū)域的地址信息被記錄在熱點控制列表(HSCL)中,所述HSCL包括熱點管理信息。
根據(jù)本發(fā)明的另一方面,提供一種日志信息管理方法,包括接收請求業(yè)務(wù)處理完成的消息;如果在熱點控制列表(HSCL)中注冊了熱點,則提供關(guān)于所述熱點的熱點管理信息;產(chǎn)生包括基于所述熱點管理信息更新的數(shù)據(jù)圖像的日志記錄以及表示業(yè)務(wù)處理完成的日志記錄;和記錄日志記錄。
根據(jù)本發(fā)明的另一方面,提供一種日志信息管理方法,包括接收請求業(yè)務(wù)處理取消的請求;如果在熱點控制列表(HSCL)中注冊了熱點,則刪除關(guān)于所述熱點的熱點管理信息;產(chǎn)生表示業(yè)務(wù)處理取消的日志記錄;和記錄日志記錄。
通過下面結(jié)合附圖對其優(yōu)選實施例進行的詳細描述,本發(fā)明的上述和其他方面將會變得更加清楚,其中圖1示出用于執(zhí)行記錄操作的現(xiàn)有技術(shù)的記錄系統(tǒng);圖2示出現(xiàn)有技術(shù)的日志記錄的配置;圖3A和3B示出日志操作和業(yè)務(wù)處理取消的現(xiàn)有技術(shù)的處理;圖4示出根據(jù)本發(fā)明示例性實施例的日志信息管理系統(tǒng);圖5是示出根據(jù)本發(fā)明示例性實施例的熱點控制列表的表;圖6是示出根據(jù)本發(fā)明示例性實施例的當更新數(shù)據(jù)時管理日志信息的方法的流程圖;圖7是示出根據(jù)本發(fā)明示例性實施例的當請求業(yè)務(wù)處理完成時管理日志信息的方法的流程圖;圖8是示出根據(jù)本發(fā)明示例性實施例的當請求業(yè)務(wù)處理完成時管理日志信息的方法的流程圖;圖9是示出根據(jù)本發(fā)明示例性實施例的當更新數(shù)據(jù)時管理日志信息的方法的流程圖;圖10是示出根據(jù)本發(fā)明示例性實施例的當請求業(yè)務(wù)處理完成時管理日志信息的方法的流程圖;和圖11是示出根據(jù)本發(fā)明示例性實施例的當請求業(yè)務(wù)處理完成時管理日志信息的方法的流程圖。
具體實施例方式
通過下面參照示例性實施例和附圖的詳細描述,本發(fā)明的各個方面和實現(xiàn)本發(fā)明的各個方面的方法可被更容易地理解。然而,本發(fā)明可以各種不同形式來實現(xiàn),并且不應(yīng)被解釋為受這里闡述的示例性實施例限制。相反地,提供這些示例性實施例,從而對于本領(lǐng)域的技術(shù)人員來說,此公開將是徹底和完整的,并且將完全覆蓋本發(fā)明的概念,本發(fā)明將僅由所附權(quán)利要求定義。
以下將參照根據(jù)本發(fā)明的示例性實施例的用于管理日志信息的系統(tǒng)和方法的框圖或流程圖來描述本發(fā)明。將理解,可通過計算機程序指令來實現(xiàn)流程圖的每個塊和流程圖中的多個塊的組合??蓪⑦@些計算機程序指令提供給通用計算機、專用計算機的處理器,或者其他可編程數(shù)據(jù)處理設(shè)備以產(chǎn)生機器,從而經(jīng)由計算機的處理器或其他可編程數(shù)據(jù)處理設(shè)備執(zhí)行的指令創(chuàng)建用于實現(xiàn)流程圖塊或多個塊中指定的功能的裝置。
這些計算機程序指令還可被存儲在計算機可用或計算機可讀存儲器中,這些計算機程序指令可命令計算機或其他可編程處理設(shè)備以特定方式工作,從而存儲在計算機可用或計算機可讀存儲器中的指令產(chǎn)生包括實現(xiàn)在流程圖塊或多個塊中指定的功能的指令的裝置的產(chǎn)品。
計算機程序指令還可被載入計算機或其他可編程數(shù)據(jù)處理設(shè)備以產(chǎn)生將在計算機或其他可編程設(shè)備上執(zhí)行的一系列操作,以產(chǎn)生計算機執(zhí)行的處理,從而在計算機或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖塊或多個塊中指定的功能的操作。
流程圖的每個塊可代表模塊、代碼段或代碼部分,其包括一個或多個實現(xiàn)指定邏輯功能的可執(zhí)行指令。還應(yīng)注意在一些可選執(zhí)行中,多個塊中注解的功能可不按順序發(fā)生。例如,順序顯示的兩個塊實際上可基本上同時執(zhí)行,或者多個塊有時可以相反順序執(zhí)行,這取決于涉及的功能。
圖4示出根據(jù)本發(fā)明示例性實施例的日志信息管理系統(tǒng)。
參照圖4,日志信息管理系統(tǒng)包括輸入單元410、控制模塊420、日志圖像存儲模塊430、日志記錄產(chǎn)生模塊440、日志緩沖器管理模塊450和日志緩沖器460。
這里使用的術(shù)語“模塊”是指但不限于軟件組件或硬件組件,諸如執(zhí)行特定任務(wù)的現(xiàn)場可編程門陣列(FPGA)或?qū)S眉呻娐?ASIC)。模塊可被配置為駐留在可尋址的存儲介質(zhì)中,并且配置為在一個或者多個處理器上執(zhí)行。因此,模塊可包含組件,諸如軟件組件、面向?qū)ο蟮能浖M件、類組件和任務(wù)組件、進程、函數(shù)、屬性、程序、子程序、程序代碼段、驅(qū)動程序、固件、微碼、電路、數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu)、表、數(shù)組和變量。由組件和模塊提供的功能可組合為較少的組件和模塊,或可被分成另外的組件和模塊。此外,組件和模塊可以被執(zhí)行,從而在裝置或安全多媒體卡內(nèi)再現(xiàn)一個或多個CPU。
輸入單元410接收來自日志信息管理系統(tǒng)400所屬的系統(tǒng)中的其他模塊的關(guān)于數(shù)據(jù)更新的信息或者日志請求消息。作為日志請求消息的例子,存在業(yè)務(wù)處理完成、業(yè)務(wù)處理取消和數(shù)據(jù)恢復(fù)。
控制模塊420單獨地管理圖5所示的熱點控制列表(HSCL)425,以管理熱點中的數(shù)據(jù)更新。將稍后描述HSCL 425??刂颇K420與日志記錄產(chǎn)生模塊440和日志緩沖器管理模塊450一起執(zhí)行熱點的管理。
日志圖像存儲模塊430存儲熱點的日志圖像。
當其他模塊經(jīng)由輸入模塊410輸入數(shù)據(jù)更新信息時,控制模塊420驗證更新的數(shù)據(jù)是否位于熱點。如果更新的數(shù)據(jù)位于熱點,則控制模塊420管理輸入數(shù)據(jù)更新信息。如果更新的數(shù)據(jù)不位于熱點,則輸入數(shù)據(jù)更新信息發(fā)送到日志記錄產(chǎn)生模塊440。
日志記錄產(chǎn)生模塊440通過另外設(shè)置需要的信息來產(chǎn)生日志記錄。產(chǎn)生的日志記錄經(jīng)由日志緩沖器管理模塊450被記錄在日志緩沖器模塊460。在這種情況下,以它們產(chǎn)生的順序來記錄日志記錄。
當其他模塊將日志請求消息輸入到輸入單元410時,控制模塊420、日志記錄產(chǎn)生模塊440和日志緩沖器管理模塊450根據(jù)消息類型來處理相應(yīng)的日志記錄。將參照圖7和圖8來描述根據(jù)日志請求消息處理日志記錄。
圖5是示出根據(jù)本發(fā)明示例性實施例的熱點控制列表的表。日志信息管理系統(tǒng)400保持管理關(guān)于熱點的信息的HSCL 425的數(shù)據(jù)結(jié)構(gòu)。
參照圖5,HSCL 425具有包括頁號字段、偏移字段、數(shù)據(jù)長度字段和指針字段的表格式。
當發(fā)生更新時,頁號字段顯示存儲修改的數(shù)據(jù)的頁的號碼。當發(fā)生更新時,偏移字段顯示在頁中存儲修改的數(shù)據(jù)的開始位置。數(shù)據(jù)長度字段顯示將被更新的數(shù)據(jù)的大小。指針字段顯示在記錄更新的數(shù)據(jù)圖像的日志圖像存儲模塊430中存儲相應(yīng)的數(shù)據(jù)圖像的存儲器區(qū)域的開始地址。
如上所述,控制模塊420容易知道熱點是否經(jīng)由HSCL 425注冊或者存儲在注冊的熱點中的當前數(shù)據(jù)圖像是什么。
當注冊熱點時,分配與日志圖像存儲模塊430中的隨機熱點的更新圖像的大小相應(yīng)的區(qū)域,當在HSCL 425中刪除熱點時,歸還所述區(qū)域。
圖6是示出根據(jù)本發(fā)明示例性實施例的當更新數(shù)據(jù)時管理日志信息的方法的流程圖。
輸入單元410接收來自其他模塊的例如數(shù)據(jù)更新的日志信息(S610)。日志信息包括關(guān)于識別、偏移和將被更新的數(shù)據(jù)頁的大小的信息、以及before-image和after-image。日志信息可包括標簽信息,該標簽信息顯示更新數(shù)據(jù)的頁中的區(qū)域是否與熱點相應(yīng)。當操作其他模塊式時,可主動產(chǎn)生并提供標簽信息。
如果日志信息不包括標簽信息,則可在當日志信息管理系統(tǒng)400所屬的系統(tǒng)運行時使用的配置文件中預(yù)設(shè)與熱點相應(yīng)的區(qū)域。也可在日志信息管理系統(tǒng)400的控制模塊420中預(yù)設(shè)與熱點相應(yīng)的區(qū)域。
通過輸入的日志信息,控制模塊420確定將被更新的數(shù)據(jù)的頁區(qū)域是否與熱點相應(yīng)(S620)。
如果所述區(qū)域與熱點不相應(yīng),則將輸入的日志信息發(fā)送到日志記錄產(chǎn)生模塊440。日志記錄產(chǎn)生模塊440使用發(fā)送的日志信息和附加信息產(chǎn)生新的日志記錄(S660)。
考慮到日志緩沖器460的狀態(tài),日志緩沖器管理模塊450可將產(chǎn)生的日志記錄添加到日志緩沖器460。如果日志緩沖器460不具有額外空間,則已經(jīng)存在于日志緩沖器460中的日志記錄被記錄在日志文件中,井且產(chǎn)生的日志記錄添加到空的日志緩沖器460(S670)。
如果日志緩沖器460的剩余空間小于產(chǎn)生的日志記錄的大小,則與不足大小相應(yīng)的日志記錄寫入日志文件,并且可從空的日志緩沖器460的開始位置記錄剩余記錄區(qū)。
如果在S620,所述區(qū)域與熱點相應(yīng),則在S630,控制模塊420確定是否在HSCL 425中注冊該熱點。
如果沒有在HSCL 425中注冊該熱點,則控制模塊基于輸入的日志信息在HSCL 425中設(shè)置關(guān)于頁號、偏移和數(shù)據(jù)長度的信息。給日志圖像存儲模塊430分配與熱點的數(shù)據(jù)長度相應(yīng)的空間,以記錄after-image(S650)。
當完成在HSCL 425的注冊時,控制模塊420將輸入的日志信息發(fā)送到日志記錄產(chǎn)生模塊440。日志記錄產(chǎn)生模塊440基于發(fā)送的固志信息產(chǎn)生日志記錄(S660)。在這種情況下,日志記錄產(chǎn)生模塊440產(chǎn)生僅包括除了after-image的before-image的日志記錄(S660)。
考慮到日志緩沖器460的狀態(tài),日志緩沖器管理模塊450可將產(chǎn)生的日志記錄添加到日志緩沖器460。如果日志緩沖器460不具有額外空間,則將存在于日志緩沖器460中的日志記錄記錄在日志文件中,并且將產(chǎn)生的日志記錄添加到空的日志緩沖器460(S670)。
如果在S630已經(jīng)在HSCL 425中注冊了熱點,則控制模塊420用更新的數(shù)據(jù)圖像(after-image)替換存儲在日志圖像存儲模塊430中的數(shù)據(jù)圖像(before-image)(S640)。不產(chǎn)生注冊的熱點的新日志,并且完成記錄。
圖7是示出根據(jù)本發(fā)明的示例性實施例的當請求業(yè)務(wù)處理完成時管理日志信息的方法的流程圖。
當接收到來自其他模塊的例如業(yè)務(wù)處理完成的日志請求消息(S710)時,輸入單元410將日志請求消息發(fā)送到控制模塊420??刂颇K420驗證注冊的熱點是否存在于HSCL 425(S720)。如果不存在注冊的熱點,則控制模塊420請求日志記錄產(chǎn)生模塊440產(chǎn)生與業(yè)務(wù)處理完成相關(guān)的日志記錄。日志記錄產(chǎn)生模塊440產(chǎn)生業(yè)務(wù)處理完成的日志記錄,并將其發(fā)送到日志緩沖器管理模塊450(S770)。日志緩沖器管理模塊450將當前存在于日志緩沖器460中的所有的日志記錄記錄在日志文件中(S780)。
如果在S720,已經(jīng)在HSCL 425中注冊了熱點,則控制模塊420基于各個熱點注冊信息請求日志記錄產(chǎn)生模塊440產(chǎn)生新的日志記錄(S730)。
日志記錄產(chǎn)生模塊440使用存儲在圖像存儲模塊430中的最近的數(shù)據(jù)圖像來產(chǎn)生包括除了before-image的after-image的日志記錄(S740),重復(fù)產(chǎn)生直到處理了HSCL 425的所有熱點信息(S750)。
如果產(chǎn)生與在HSCL 425中注冊的所有熱點相應(yīng)的日志記錄,則控制模塊420刪除關(guān)于在HSCL 425中注冊的所有熱點的信息,初始化HSCL 425,并且歸還存儲在日志圖像存儲模塊430中的數(shù)據(jù)圖像的存儲區(qū)域(S760)。
控制模塊420請求日志記錄產(chǎn)生模塊440產(chǎn)生業(yè)務(wù)處理完成日志記錄(S770)。日志記錄產(chǎn)生模塊440產(chǎn)生業(yè)務(wù)處理完成日志記錄,并將其發(fā)送到日志緩沖器管理模塊450。日志緩沖器管理模塊450將當前存在于日志緩沖器460中的所有日志記錄記錄在日志文件中(S780)。與現(xiàn)有技術(shù)不同,僅記錄與所有的熱點相應(yīng)的一個before-image和一個after-image。
圖8是示出根據(jù)本發(fā)明示例性實施例的當請求業(yè)務(wù)處理取消時管理日志信息的方法的流程圖。
當接收來自其他模塊的例如業(yè)務(wù)處理取消的日志請求消息(S810)時,輸入單元410將該日志請求消息發(fā)送到控制模塊420??刂颇K420驗證注冊的熱點是否存在于HSCL 425中(S820)。如果不存在注冊的熱點,則控制模塊420請求日志記錄產(chǎn)生模塊440產(chǎn)生與業(yè)務(wù)處理取消相關(guān)的日志記錄。
日志記錄產(chǎn)生模塊440產(chǎn)生業(yè)務(wù)處理取消的日志記錄,并將其發(fā)送到日志緩沖器管理模塊450(S840)。日志緩沖器管理模塊450將產(chǎn)生的業(yè)務(wù)處理取消的日志記錄記錄在日志緩沖器460或者日志文件中(S850)。
如果在S820,注冊的熱點存在于HSCL 425,則控制模塊420刪除關(guān)于所有的注冊的熱點的信息,并且初始化SHCL 425(S830)。
控制模塊420請求日志記錄產(chǎn)生模塊440產(chǎn)生業(yè)務(wù)處理取消日志記錄。
日志記錄產(chǎn)生模塊440產(chǎn)生業(yè)務(wù)處理取消日志記錄,并將其發(fā)送到日志緩沖器管理模塊450(S840)。日志緩沖器管理模塊450將產(chǎn)生的業(yè)務(wù)處理取消的日志記錄記錄在日志緩沖器或者日志文件中(S850)。
由于通過執(zhí)行上述業(yè)務(wù)處理取消不需要考慮關(guān)于熱點的所有日志信息,因此本發(fā)明能夠有效地執(zhí)行業(yè)務(wù)處理取消,而與傳統(tǒng)技術(shù)不同。
圖9示出根據(jù)本發(fā)明示例性實施例的當更新數(shù)據(jù)時管理日志信息的方法的流程圖。
參照圖9,假設(shè)在HSCL注冊了存儲在數(shù)據(jù)頁P1的偏移50中的數(shù)據(jù)。當如圖9所示連續(xù)輸入日志信息時,日志信息管理系統(tǒng)在HSCL中注冊第一輸入熱點更新信息,并產(chǎn)生僅包括先前數(shù)據(jù)圖像(before-image,“BBB”)的日志記錄。然而,在熱點更新信息(“CCC”、“DDD”和“EEE”)的情況下,日志信息管理系統(tǒng)連續(xù)修改存儲在HSCL中的新的數(shù)據(jù)圖像(after-image),并且不產(chǎn)生日志記錄。
圖10是示出根據(jù)本發(fā)明示例性實施例的當請求業(yè)務(wù)處理完成時管理日志信息的方法的流程圖。
在如圖9所示執(zhí)行更新之后,輸入業(yè)務(wù)處理完成請求時,日志信息管理系統(tǒng)基于注冊的熱點產(chǎn)生包括after-image(圖10的“EEE”)的日志記錄(S1010),并且刪除在HSCL中注冊的熱點信息(S1020)。產(chǎn)生的記錄不包括before-image。日志信息管理系統(tǒng)產(chǎn)生業(yè)務(wù)處理完成日志記錄,并且將其記錄在日志緩沖器中(S1030),將日志緩沖器的內(nèi)容記錄在日志文件中。
圖11是示出根據(jù)本發(fā)明示例性實施例的當請求業(yè)務(wù)處理取消時管理日志信息的方法的流程圖。
當如圖9所示在執(zhí)行更新之后輸入業(yè)務(wù)處理取消請求時,日志信息管理系統(tǒng)刪除所有在HSCL中注冊的熱點(S1110)。日志信息管理系統(tǒng)產(chǎn)生業(yè)務(wù)處理取消記錄,并且將其記錄在日志緩沖器中(S1120)。沒有附加地產(chǎn)生熱點的日志記錄。
根據(jù)本發(fā)明示例性實施例,所有注冊的熱點的日志記錄僅包括一個before-image和一個after-image。
如上所述,根據(jù)本發(fā)明示例性實施例可有效地管理日志信息。
由于可減小日志信息的大小,可在資源有限的系統(tǒng)環(huán)境中更加有效地管理日志信息。
盡管已經(jīng)參照附圖描述了本發(fā)明各方面的示例性實施例 但是本領(lǐng)域的普通技術(shù)人員應(yīng)該理解,在不脫離由權(quán)利要求定義的本發(fā)明的精神和范圍的情況下,可以對其進行形式和細節(jié)上的各種替換、修改和改變。因此,將理解上述的示例性僅是示例性目的,并且不被解釋為對本發(fā)明的限制。
權(quán)利要求
1.一種日志信息管理系統(tǒng),包括輸入模塊,接收關(guān)于數(shù)據(jù)更新的日志信息;和控制模塊,如果存在更新的數(shù)據(jù)的頁區(qū)域是熱點,則基于所述日志信息存儲更新的數(shù)據(jù)圖像,其中,控制模塊管理熱點控制列表(HSCL),該HSCL包括熱點管理信息和關(guān)于存儲更新的數(shù)據(jù)圖像的存儲區(qū)域的地址信息。
2.如權(quán)利要求1所述的系統(tǒng),其中,如果已經(jīng)在HSCL中注冊了所述熱點,則控制模塊用更新的數(shù)據(jù)圖像替換所述熱點的預(yù)存儲的數(shù)據(jù)圖像。
3.如權(quán)利要求1所述的系統(tǒng),其中,如果在HSCL中沒有注冊所述熱點,則控制模塊在HSCL中注冊所述熱點,并且將更新的數(shù)據(jù)圖像存儲在存儲區(qū)域中。
4.如權(quán)利要求3所述的系統(tǒng),還包括日志記錄產(chǎn)生模塊,基于所述日志信息產(chǎn)生日志記錄,所述日志記錄包括在執(zhí)行數(shù)據(jù)更新之前的先前數(shù)據(jù)值,并且不包括更新的數(shù)據(jù)圖像;和日志緩沖器管理模塊,將所述日志記錄記錄在日志緩沖器。
5.如權(quán)利要求1所述的系統(tǒng),其中,所述熱點管理信息包括關(guān)于頁、頁偏移和數(shù)據(jù)長度的至少一個的信息。
6.如權(quán)利要求1所述的系統(tǒng),其中,所述日志信息包括關(guān)于業(yè)務(wù)處理標識符、日志記錄類型、頁、頁偏移、數(shù)據(jù)長度、先前數(shù)據(jù)圖像、更新的數(shù)據(jù)圖像的至少一個的信息。
7.一種日志信息管理系統(tǒng),包括輸入模塊,接收請求業(yè)務(wù)處理完成的消息;控制模塊,如果在熱點控制列表(HSCL)中注冊了熱點,則提供關(guān)于所述熱點的熱點管理信息;日志記錄產(chǎn)生模塊,產(chǎn)生包括基于熱點管理信息更新的數(shù)據(jù)圖像的日志記錄以及表示業(yè)務(wù)處理完成的日志記錄;和日志緩沖器管理模塊,記錄日志記錄。
8.如權(quán)利要求7所述的系統(tǒng),其中,所述熱點管理信息包括關(guān)于頁、頁偏移和數(shù)據(jù)長度的至少一個的信息。
9.一種日志信息管理系統(tǒng),包括輸入模塊,接收請求業(yè)務(wù)處理取消的消息;控制模塊,如果在熱點控制列表(HSCL)中注冊了熱點,則刪除關(guān)于所述熱點的熱點管理信息;日志記錄產(chǎn)生模塊,產(chǎn)生表示業(yè)務(wù)處理取消的日志記錄;和日志緩沖器,記錄日志記錄。
10.如權(quán)利要求9所述的系統(tǒng),其中,所述熱點管理信息包括關(guān)于頁、頁偏移和數(shù)據(jù)長度的至少一個的信息。
11.一種日志信息管理方法,包括接收關(guān)于數(shù)據(jù)更新的日志信息;和如果存在更新的數(shù)據(jù)的頁區(qū)域是熱點,則基于日志信息存儲更新的數(shù)據(jù)圖像,其中,關(guān)于存儲更新的數(shù)據(jù)圖像的存儲區(qū)域的地址信息被記錄在熱點控制列表(HSCL)中,所述HSCL包括熱點管理信息。
12.如權(quán)利要求11所述的方法,其中,如果在HSCL中已經(jīng)注冊了所述熱點,則基于日志信息存儲更新的數(shù)據(jù)圖像的步驟包括用更新的數(shù)據(jù)圖像替換熱點的預(yù)存儲的數(shù)據(jù)圖像。
13.如權(quán)利要求11所述的方法,其中,如果在HSCL中沒有注冊所述熱點,則基于日志信息存儲更新的數(shù)據(jù)圖像的步驟包括在HSCL中注冊所述熱點,并將更新的數(shù)據(jù)圖像存儲在存儲區(qū)域中。
14.如權(quán)利要求13所述的方法,還包括基于所述日志信息產(chǎn)生日志記錄,所述日志記錄包括在執(zhí)行數(shù)據(jù)更新之前的先前數(shù)據(jù)值,不包括更新的數(shù)據(jù)圖像;和記錄所述日志記錄。
15.如權(quán)利要求11所述的方法,其中,所述熱點管理信息包括關(guān)于頁、頁偏移和數(shù)據(jù)長度的至少一個的信息。
16.如權(quán)利要求11所述的方法,其中,所述日志信息包括關(guān)于業(yè)務(wù)處理標識符、日志記錄類型、頁、頁偏移、數(shù)據(jù)長度、先前數(shù)據(jù)圖像、更新的數(shù)據(jù)圖像的至少一個的信息。
17.一種日志信息管理方法,包括接收請求業(yè)務(wù)處理完成的消息;如果在熱點控制列表(HSCL)中注冊了熱點,則提供關(guān)于所述熱點的熱點管理信息;產(chǎn)生包括基于所述熱點管理信息更新的數(shù)據(jù)圖像的日志記錄以及表示業(yè)務(wù)處理完成的日志記錄;和記錄日志記錄。
18.如權(quán)利要求17所述的方法,其中,所述熱點管理信息包括關(guān)于頁、頁偏移和數(shù)據(jù)長度的至少一個的信息。
19.一種日志信息管理方法,包括接收請求業(yè)務(wù)處理取消的請求;如果在熱點控制列表(HSCL)中注冊了熱點,則刪除關(guān)于所述熱點的熱點管理信息;產(chǎn)生表示業(yè)務(wù)處理取消的日志記錄;和記錄日志記錄。
20.如權(quán)利要求19所述的方法,其中,所述熱點管理系信息包括關(guān)于頁、頁偏移和數(shù)據(jù)長度的至少一個的信息。
全文摘要
一種管理日志信息的系統(tǒng)和方法。所述系統(tǒng)包括輸入模塊,接收關(guān)于數(shù)據(jù)更新的日志信息;和控制模塊,當存在更新的數(shù)據(jù)的頁區(qū)域是熱點時,基于接收的日志信息存儲更新的數(shù)據(jù)圖像,其中,控制模塊管理熱點控制列表(HSCL),該HSCL包括熱點管理信息和關(guān)于存儲更新的數(shù)據(jù)圖像的存儲區(qū)域的地址信息。
文檔編號G06F17/30GK1996313SQ20071000153
公開日2007年7月11日 申請日期2007年1月4日 優(yōu)先權(quán)日2006年1月5日
發(fā)明者閔庚燮 申請人:三星電子株式會社