国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      存儲系統(tǒng)的制作方法

      文檔序號:6580278閱讀:97來源:國知局
      專利名稱:存儲系統(tǒng)的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及存儲系統(tǒng),特別是涉及多個存儲系統(tǒng)間的數(shù)據(jù)復(fù)制。
      背景技術(shù)
      近年來,經(jīng)常由于要對顧客提供連續(xù)的服務(wù),因此,既便是在第一存儲系統(tǒng)中發(fā)生障礙的情況下,數(shù)據(jù)處理系統(tǒng)也能夠提供服務(wù)的、有關(guān)存儲系統(tǒng)間的數(shù)據(jù)復(fù)制的技術(shù)變得越來越重要。作為將第一存儲系統(tǒng)內(nèi)存儲的信息復(fù)制到第二和第三存儲系統(tǒng)的技術(shù),存在以下的專利文獻中所公開的技術(shù)。
      美國專利No.5170480號公報中,公開了這樣一種技術(shù)連接在第一存儲系統(tǒng)上的第一計算機,通過第一計算機和第二計算機間的通信鏈i 各,將第一存儲系統(tǒng)內(nèi)存儲的數(shù)據(jù)傳送給第二計算機,第二計算機再將其傳送給與第二計算機相連的第二存儲系統(tǒng)。
      在美國專利6209002號公報中公開了以下技術(shù)第一存儲系統(tǒng)將第一存儲系統(tǒng)內(nèi)存儲的數(shù)據(jù)傳送給第二存儲系統(tǒng),而后,第二存儲系統(tǒng)將其傳送給第三存儲系統(tǒng)。計算機和第一存儲系統(tǒng)是通過通信鏈路而連接的,第一存儲系統(tǒng)和第二存儲系統(tǒng)是通過通信鏈路連接的,而且,第二存儲系統(tǒng)和第三存儲系統(tǒng)是
      通過通信鏈路連接的。第一存儲系統(tǒng)保持復(fù)制對象的第一邏輯巻。第二存儲系統(tǒng),保存作為第一邏輯巻的副本(copy)的第二邏輯巻,以及作為第二邏輯巻的副本的第三邏輯巻。第三存儲系統(tǒng)保存作為第三邏輯巻的副本的第四邏輯巻。在該專利文獻中,第二邏輯系統(tǒng)排他地執(zhí)行從第二邏輯巻到第三邏輯巻的數(shù)據(jù)復(fù)制處理,與從第三邏輯巻到第四邏輯巻的數(shù)據(jù)復(fù)制處理。
      (專利文獻l)美國專利No. 5170480號公報
      (專利文獻2)美國專利No. 6209002號/A才艮

      發(fā)明內(nèi)容
      (發(fā)明目的)
      美國專利No. 5170480號公報中所公開的技術(shù),為了數(shù)據(jù)復(fù)制而經(jīng)常要使用第一計算機和第二計算機。第一計算機執(zhí)行通常的業(yè)務(wù),不能無視對于第一
      計算機所添加的數(shù)據(jù)復(fù)制處理的負荷。再有,用于復(fù)制的數(shù)據(jù),由于《吏用第一計算機和第一存儲系統(tǒng)間的通信鏈路,因此與通常業(yè)務(wù)所必需的數(shù)據(jù)傳輸發(fā)生沖突,存在通常業(yè)務(wù)所必需的數(shù)據(jù)參考、數(shù)據(jù)更新時間變長的問題。
      美國專利No. 620卯02號公報中公開的技術(shù),在第二存儲系統(tǒng)和第三存儲系統(tǒng)中,必須是執(zhí)行復(fù)制的數(shù)據(jù)量的存儲容量的2倍的存儲容量。由于復(fù)制對象的數(shù)據(jù)量多,因此,數(shù)據(jù)復(fù)制處理所花費的時間變長,第三存^f諸系統(tǒng)的數(shù)據(jù)會變舊。其結(jié)果,使用第三存儲系統(tǒng)的數(shù)據(jù)再次執(zhí)行業(yè)務(wù)的情況下,使第三存儲系統(tǒng)的數(shù)據(jù)變?yōu)樽钚聰?shù)據(jù)的時間變長,存在到再開始業(yè)務(wù)時的時間延長的問題。再者,在該文獻中,第一存儲系統(tǒng),除了執(zhí)行第一存儲系統(tǒng)內(nèi)的數(shù)據(jù)更新處理外,還在與第二存儲系統(tǒng)之間的數(shù)據(jù)行進處理結(jié)束的時間點上,還對上一級計算機執(zhí)行數(shù)據(jù)更新完畢報告。因此,來自于計算機的數(shù)據(jù)更新所耗費的時間長,如果第一存儲系統(tǒng)和第二存儲系統(tǒng)之間的距離越遠,則數(shù)據(jù)更新所耗費的時間越長。其結(jié)果,如果按照該文獻中所公開的技術(shù),則存在不能把各存儲系統(tǒng)間的距離設(shè)置得太遠的問題。
      本發(fā)明的目的是對于存儲系統(tǒng)的上一級計算機不施加影響,而在多個存儲系統(tǒng)間執(zhí)行數(shù)據(jù)傳輸或數(shù)據(jù)復(fù)制。再者,本發(fā)明的目的還有對存儲系統(tǒng)和計算機間的通信也不施加影響。
      還有,本發(fā)明的目的是能夠使多個存儲系統(tǒng)內(nèi)存儲的數(shù)據(jù)存儲區(qū)變少。另外,以不對多個存儲系統(tǒng)的上一級計算機的業(yè)務(wù)施加影響的方式,高速有效地在多個存儲系統(tǒng)之間執(zhí)行數(shù)據(jù)傳輸或數(shù)據(jù)復(fù)制。(發(fā)明概述)
      為了解決這些問題,在本發(fā)明中,第一存儲系統(tǒng),將有關(guān)第一存儲系統(tǒng)內(nèi)存儲的數(shù)據(jù)之更新的信息作為日志(journal)進行存儲。日志,具體而言是用更新中使用的數(shù)據(jù)的拷貝和更新時的寫入命令等更新信息構(gòu)成的。另外,第二存儲系統(tǒng)通過第一存儲系統(tǒng)和第二存儲系統(tǒng)間的通信線,獲取所述日志。第二存儲系統(tǒng)保持第一存儲系統(tǒng)所保持的數(shù)據(jù)的副本,并使用所述日志,按照第一存儲系統(tǒng)中的數(shù)據(jù)更新順序,更新與第一存儲系統(tǒng)的數(shù)據(jù)相對應(yīng)的數(shù)據(jù)。
      在本發(fā)明中,第二存儲系統(tǒng)保持第二存儲區(qū),用于存儲第一存儲系統(tǒng)執(zhí)行
      存儲的第一存儲區(qū)內(nèi)所存儲的數(shù)據(jù)的副本;將有關(guān)第二存儲區(qū)的數(shù)據(jù)的更新之
      信息作為日志,存儲在日志專用的第三存儲區(qū)內(nèi)。第三存儲區(qū)的存儲容量,可以是比第二存儲區(qū)少的存儲容量。另外,第三存儲系統(tǒng),通過第二存儲系統(tǒng)和
      第三存儲系統(tǒng)之間的通信線,來獲取所述日志,并將其存儲在日志專用的第四存儲區(qū)內(nèi)。第四存儲區(qū)的存儲容量可以是比第二存儲區(qū)少的存儲容量。第三存儲系統(tǒng),保持用于存儲被存儲在第二存儲區(qū)內(nèi)的數(shù)據(jù)之副本的第五存儲區(qū),并使用所述日志,按照第二存儲區(qū)中的數(shù)據(jù)更新順序,對與第二存儲區(qū)相對應(yīng)的第五存儲區(qū)的數(shù)據(jù)進行更新。


      圖1是本發(fā)明一實施例的邏輯結(jié)構(gòu)框圖。
      圖2是本發(fā)明一實施例的存儲系統(tǒng)的框圖。
      圖3是用于說明本發(fā)明一實施例的更新信息和寫入數(shù)據(jù)的關(guān)系的圖。
      圖4是用于說明本發(fā)明一實施例的巻信息的例子的圖。
      圖5是用于說明本發(fā)明一實施例的對(pair)信息的例子的圖。
      圖6是用于說明本發(fā)明一實施例組信息的例子的圖。
      圖7是用于說明本發(fā)明 一 實施例的指針信息的例子的圖。
      圖8是用于說明本發(fā)明一實施例的日志邏輯巻的結(jié)構(gòu)的圖。
      圖9是用于說明本發(fā)明一實施例的開始數(shù)據(jù)復(fù)制的順序的流程圖。
      圖IO是用于說明本發(fā)明一實施例的初期拷貝處理的流程圖。
      圖ll是用于說明本發(fā)明一實施例的命令接收處理的圖。
      圖12是用于說明本發(fā)明一實施例的命令接收處理的流程圖。
      圖13是本發(fā)明一實施例的日志生成處理的流程圖。 圖14是用于說明本發(fā)明一實施例的日志讀接收處理的圖。
      圖15是用于說明本發(fā)明一實施例的日志讀接收處理的流程圖。
      圖16是用于說明本發(fā)明一實施例的日志讀命令處理的圖。
      圖17是用于說明本發(fā)明一實施例的日志讀命令處理的流程圖。圖18是用于說明本發(fā)明一實施例的日志存儲處理的流程圖。
      圖19是用于說明本發(fā)明一實施例的重新啟動處理的圖。
      圖20是用于說明本發(fā)明一實施例的重新啟動處理的流程圖。
      圖21是用于說明本發(fā)明一實施例的更新信息的例子的圖。
      圖22是用于說明本發(fā)明一實施例的日志生成處理時的更新信息的例子的圖。
      圖23是顯示本發(fā)明第2實施例的圖。圖24是顯示本發(fā)明第3實施例的圖。
      具體實施例方式
      以下,將利用附圖,詳細地說明按照本發(fā)明的數(shù)據(jù)處理系統(tǒng)的實施例。圖1是顯示本發(fā)明第一實施例的邏輯結(jié)構(gòu)的框圖。
      本發(fā)明的一個實施例是這樣構(gòu)成的主才幾180和存4渚系統(tǒng)100A通過連接總線l卯相連,存儲系統(tǒng)100A和用于保持存儲系統(tǒng)100A中所保存的數(shù)據(jù)之副本的存儲系統(tǒng)100B通過連接總線200相連。在以下的說明中,為了容易區(qū)分保持復(fù)制對象的數(shù)據(jù)的存儲系統(tǒng)100,和保持復(fù)制數(shù)據(jù)的存儲系統(tǒng)100,我們決定將保持復(fù)制對象的數(shù)據(jù)的存儲系統(tǒng)IOO稱為正存儲系統(tǒng)100A,將保持復(fù)制數(shù)據(jù)的存儲系統(tǒng)IOO稱為副存儲系統(tǒng)IOOB。
      對存儲系統(tǒng)100的存儲區(qū)進行分割管理,分割后的存儲區(qū)叫做邏輯巻230。邏輯巻230的容量和存儲系統(tǒng)100內(nèi)的物理存儲位置(物理地址),能夠使用連接在存儲系統(tǒng)100上的計算機等維修終端或主機180來指定。各邏輯巻230的物理地址,保存在后述的巻信息400內(nèi)。物理地址,例如是用于識別存儲系統(tǒng)100內(nèi)的存儲裝置150的編號(存儲裝置編號),和唯一地顯示存儲裝置內(nèi)的存儲區(qū)的數(shù)值,例如是從存儲裝置的存儲區(qū)的開頭開始的位置。在以下的說明中,設(shè)物理地址是存儲裝置編碼和從存儲裝置的存儲區(qū)的開頭開始的位置的組。在以下的說明中,邏輯巻是一個存儲裝置的存儲區(qū),但是,通過邏輯地址和物理地址的變換,1個邏輯巻可能對應(yīng)多個存儲裝置的存儲區(qū)。
      存儲系統(tǒng)100保存的數(shù)據(jù)的參照、更新,能夠利用識別邏輯巻的編號(邏輯巻編號)和唯一顯示存儲區(qū)的數(shù)值,例如是從邏輯巻的存儲區(qū)開頭開始的位置,來唯一指定。以下,將邏輯巻編號和從邏輯巻的存儲區(qū)開頭開始的位置(邏輯地址內(nèi)位置)的組稱為邏輯地址。
      在以下說明中,為了容易區(qū)分復(fù)制對象的數(shù)據(jù)和復(fù)制數(shù)據(jù),我們決定將復(fù)
      制對象的邏輯巻230稱為正邏輯巻,而將作為復(fù)制數(shù)據(jù)的邏輯巻230稱為副邏輯巻。 一對正邏輯巻和副邏輯巻稱為對(pair)。正邏輯巻和副邏輯巻的關(guān)系和狀態(tài)等保存在后述的對信息500內(nèi)。
      為了遵守邏輯巻間的數(shù)據(jù)的更新順序,設(shè)置了所謂組管理單元。例如,主機180,更新正邏輯巻1的數(shù)據(jù)1,之后,讀出數(shù)據(jù)1,使用數(shù)據(jù)1的數(shù)值,來執(zhí)行更新正邏輯巻2的數(shù)據(jù)2的處理。在從正邏輯巻1到副邏輯巻1的數(shù)據(jù)復(fù)制處理,以及從正邏輯巻2到副邏輯巻2的數(shù)據(jù)復(fù)制處理是獨立執(zhí)行的情況下,存在在復(fù)制到副邏輯巻1的數(shù)據(jù)1的復(fù)制處理之前,執(zhí)行復(fù)制到副邏輯巻2的數(shù)據(jù)2的復(fù)制處理的情況。在復(fù)制到副邏輯巻2的數(shù)據(jù)2的復(fù)制處理和復(fù)制到副邏輯巻1的數(shù)據(jù)1的復(fù)制處理之間,在由于故障等發(fā)生復(fù)制到副邏輯巻1的數(shù)據(jù)1的復(fù)制處理停止的情況下,則缺少副邏輯巻1和副邏輯巻2的數(shù)據(jù)的一致性。為了在這種情況下也保持副邏輯巻1和副邏輯巻2的數(shù)據(jù)的一致性,遵守數(shù)據(jù)更新順序所必要的某個邏輯巻,在同一組中進行登錄,每當(dāng)有數(shù)據(jù)更新時,就分配后述的組信息600的更新編號,并按照更新編號的順序,在副邏輯巻中執(zhí)行復(fù)制處理。例如,在圖1中,正存儲系統(tǒng)100A的邏輯巻(DATA1)和邏輯巻(DATA2)構(gòu)成了組1。作為邏輯巻(DATA1)之副本的邏輯巻(C0PY1)和邏輯巻(DATA2)之副本的邏輯巻(COPY2),構(gòu)成了副存儲系統(tǒng)內(nèi)的組1。
      在更新作為數(shù)據(jù)復(fù)制對象的正邏輯巻的數(shù)據(jù)的情況下,為了更新副邏輯巻的數(shù)據(jù),生成了后述的日志,并將器保存在正存儲系統(tǒng)100A內(nèi)的邏輯巻內(nèi)。在本實施例的說明中,為每組分配僅保存日志的邏輯巻(以下稱為日志邏輯巻)。圖1中,為組1分配了邏輯巻(JNL1)。
      還為副存儲系統(tǒng)100B的組,分配了日志邏輯巻。日志邏輯巻,是為了保存從正存儲系統(tǒng)100A傳送到副存儲系統(tǒng)100B的日志而使用的。通過將日志保存于日志邏輯巻內(nèi),例如,在副存儲系統(tǒng)100B的負荷高的情況下,在曰志接收時不執(zhí)行副邏輯巻的數(shù)據(jù)更新,稍后,能夠在副存儲系統(tǒng)100B的負荷低的時侯,更新副邏輯巻的數(shù)據(jù)。又,在連接線200有多條的情況下,多路(日文多重仁)執(zhí)行從正存儲系統(tǒng)100A到副存儲系統(tǒng)100B的日志的傳輸,從而
      10能夠有效利用連接線200的傳輸能力。存在為了輪流進行更新,而在副存儲系統(tǒng)100B中積壓了許多日志的可能性,由于不能立刻用于副邏輯巻的凝:據(jù)更新的日志,退避到日志邏輯巻內(nèi),因此能夠釋放高速緩沖存儲器。圖1中,對副存儲系統(tǒng)內(nèi)的組1分配了邏輯巻(JNL2)。
      日志由寫入數(shù)據(jù)和更新信息構(gòu)成。更新信息是用于管理寫入數(shù)據(jù)的信息,由接收寫入命令的時刻、組編號、后述的組信息600的更新編號、寫入命令的邏輯地址、寫入數(shù)據(jù)的數(shù)據(jù)大小、存儲寫入數(shù)據(jù)的日志的邏輯巻的邏輯地址等構(gòu)成。更新信息也可以僅僅保持接收寫入命令的時刻和更新編號中的任何一方。當(dāng)在來自主機180的寫入命令中存在寫入命令之產(chǎn)生時刻的情況下,也可以使用該寫入命令內(nèi)的產(chǎn)生時刻,而不是接收寫入命令的時刻。使用圖3和圖21,來說明日志的更新信息的例子。更新信息310,存儲了在1999年3月17日的22時20分10秒時所接收的寫入命令。該寫入命令,是將寫入數(shù)據(jù)存儲在從邏輯巻編號1的存儲區(qū)開頭開始700的位置上的命令,數(shù)據(jù)大小是300。日志的寫入數(shù)據(jù),是從邏輯巻編號4(日志邏輯巻)的存儲區(qū)開頭開始1500的位置開始存儲的。我們明白,邏輯巻編號1的邏輯巻屬于組1,是從組l的數(shù)據(jù)復(fù)制開始的第4個數(shù)據(jù)更新。
      例如如圖3所示,將日志邏輯巻分割為存儲更新信息的存儲區(qū)(更新信息區(qū)域)和存儲寫入數(shù)據(jù)的存儲區(qū)(寫入數(shù)據(jù)區(qū))來使用。更新信息區(qū)域,從更新信息區(qū)域的開頭開始,^按照更新編號的順序執(zhí)行存儲,在到達更新信息區(qū)域的終端后,就從更新信息區(qū)域的開頭開始執(zhí)行存儲。寫入數(shù)據(jù)區(qū),從寫入凄t據(jù)區(qū)的開頭開始存儲寫入數(shù)據(jù),如果到達寫入數(shù)據(jù)區(qū)的終端,就從寫入數(shù)據(jù)區(qū)的開頭開始執(zhí)行存儲。更新信息區(qū)域和寫入數(shù)據(jù)區(qū)的比可以是固定值,也可以是由維修終端或主機180設(shè)定的。這些信息保持在后述的指針信息700內(nèi)。在以下的說明中,將日志邏輯巻分割為更新信息和寫入數(shù)據(jù)的區(qū)域,并使用日志邏輯巻,但也可以采用從邏輯巻的開頭開始,連續(xù)存儲日志即更新信息和寫信息的方式。
      將使用圖1,將傳給存儲系統(tǒng)IOOA的正邏輯巻之?dāng)?shù)據(jù)更新,反映給副存儲系統(tǒng)100B的副邏輯巻的操作,進行簡要說明。
      (I)存儲系統(tǒng)IOOA,在接收了來自主機180的、針對正邏輯巻內(nèi)的數(shù)據(jù)的寫入命后,利用后述的命令接收處理210以及寫處理220,扭^亍正邏輯巻 (DATA1)內(nèi)的數(shù)據(jù)更新,以及在日志邏輯巻(JNL1)內(nèi)執(zhí)行日志的保存(圖1的 270)。
      (2) 存儲系統(tǒng)100B,利用后述的日志讀處理240,從存儲系統(tǒng)100A中讀出 日志,通過讀寫處理220,在日志邏輯巻(JNL2)內(nèi)保存日志(圖1的280)。
      (3) 存儲系統(tǒng)100A,在接收了讀取來自存儲系統(tǒng)100B的日志之命令后, 通過后述的命令接收處理210和讀寫處理220,從日志邏輯巻(JNL1)讀出日志, 并將其傳送給存儲系統(tǒng)100B(圖1的280)。
      (4) 存儲系統(tǒng)100B,通過后述的重新啟動處理250和讀寫處理220,使用 指針信息700,按照更新編號的升序,從日志邏輯巻(JNL2)中讀出日志,并更 新副邏輯巻(COPYl)的數(shù)據(jù)(圖1的290)。
      在圖2中顯示了存儲系統(tǒng)IOO的內(nèi)部結(jié)構(gòu)。存儲系統(tǒng)IOO是這樣構(gòu)成的, 它具有一個以上的主適配器110、 一個以上的盤適配器120、 一個以上的高速 緩沖存儲器130、 一個以上的公用存儲器140、 一個以上的存儲裝置150、 一 個以上的公共總線160、以及一個以上的連接線170。主適配器110、盤適配 器120、高速緩沖存儲器130、公用存儲器140通過公共總線160而相互連接。 公共總線160也可以因公共總線160發(fā)生障礙時而被2路復(fù)用。盤適配器120 和存儲裝置150通過連接線170進行連接。盡管圖中未示,但是,用于執(zhí)行存 儲系統(tǒng)100的設(shè)定、監(jiān)視、維修等的維修終端,利用專用線,與所有的主適配 器IIO和盤適配器120相連接。
      主適配器IIO,控制主機180和高速緩沖存儲器130間的數(shù)據(jù)傳輸。主適 配器110,利用連接線l卯和連接線200,與主機180或其他存儲系統(tǒng)IOO相 連接。盤適配器120控制高速緩沖存儲器130和存儲裝置150之間的數(shù)據(jù)傳輸。 高速緩沖存儲器130,是用于臨時保存將所接收的來自于主機180的數(shù)據(jù),或 將從存儲裝置150讀出的數(shù)據(jù)的存儲器。公用存儲器140是存儲系統(tǒng)100內(nèi)的 所有主適配器110和盤適配器120共用的存儲器。
      巻信息400是管理邏輯巻的信息,它保持了巻狀態(tài)、格式形式、容量、對 編號以及物理地址。圖4中顯示了巻信息400的一個例子。巻信息400被保存 在可由主適配器110和盤適配器120進行查找的存儲器,例如是管理存儲器140內(nèi)。巻狀態(tài)保持"正常"、"正"、"副"、"異常"、"未使用"中的任何一個。
      巻狀態(tài)為"正常,,或"正"的邏輯巻230,顯示其是可/人主4幾180正常進4亍訪問的 邏輯巻230。巻狀態(tài)為"副"的邏輯巻230也可以許可來自主才幾180的訪問。巻 狀態(tài)為"正"的邏輯巻230顯示其是執(zhí)行數(shù)據(jù)復(fù)制的邏輯巻230。巻狀態(tài)為"副,, 的邏輯巻230顯示其是復(fù)制中使用的邏輯巻230。巻狀態(tài)為"異常"的邏輯巻230 顯示其是由于故障而不能正常進行訪問的邏輯巻230。所謂故障例如是保持邏 輯巻230的存儲裝置150的故障。巻狀態(tài)為"未使用,,的邏輯巻230顯示其是沒 有使用的邏輯巻230。對編號,在巻狀態(tài)為"正,,或"副,,的情況下是有效的,保 持用于指定后述的對信息500的對編號。在圖4所示的例子中,邏輯巻1從格 式形式為OPEN3、容量為3GB、存儲裝置編號1的存儲裝置150的存儲區(qū)的 開頭開始存儲數(shù)據(jù),其顯示為可以進行訪問,并且是數(shù)據(jù)復(fù)制對象。
      對信息500是管理對的信息,保持由對狀態(tài)、正存儲系統(tǒng)編號、正邏輯巻 編號、副存儲系統(tǒng)編號、副邏輯巻編號、組編號、以及拷貝結(jié)束地址。圖5 中,顯示了對信息500的一個例子。對信息500保存在可從主適配器110和盤 適配器120進行查找的存儲器例如是管理存儲器140內(nèi)。對狀態(tài)保存"正常"、 "異常"、"未使用"、"為復(fù)制"、"復(fù)制中,,中的任何一個。對狀態(tài)為"正常"的情 況,顯示正邏輯巻230的數(shù)據(jù)復(fù)制正在正常執(zhí)行。對狀態(tài)為"異常,,的情況顯示 了由于故障而沒有扭^亍正邏輯巻230的復(fù)制。所謂障礙,例如是連接總線200 的斷線等。對狀態(tài)為"未使用"的情況下,顯示該對編號的信息不是有效的。對 狀態(tài)為"復(fù)制中,,的情況顯示是后述的初期復(fù)制處理中。對狀態(tài)是"未復(fù)制"的情 況顯示還沒有執(zhí)行后述的初期復(fù)制處理。正存儲系統(tǒng)編號,保持用于指定保持 正邏輯巻230的正存儲系統(tǒng)IOOA的編號。副存儲系統(tǒng)編號,保持指定保持副 邏輯巻230的副存儲系統(tǒng)100B的編號。組編號在正存儲系統(tǒng)的情況下,保持 正邏輯巻所屬的組編號。在副存儲系統(tǒng)的情況下,保持副邏輯巻所屬的組編號。 拷貝結(jié)束地址將在后述的初期拷貝處理中進行說明。圖5的對信息1,顯示執(zhí) 行了數(shù)據(jù)復(fù)制對象是正存儲系統(tǒng)1的正邏輯巻1、數(shù)據(jù)復(fù)制接受者是副存儲系 統(tǒng)2的副邏輯巻1的、正常的數(shù)據(jù)復(fù)制處理。
      組信息600保持組狀態(tài)、對集合、日志邏輯巻編號以及更新編號。圖6 中顯示了組信息600的一個例子。組信息600保存在可從主適配器110和盤適
      13配器120進行查找的存儲器例如是管理存儲器140內(nèi)。組狀態(tài)保持"正常"、"異 常"、"未使用"中的任何一個。組狀態(tài)為"正常"的情況,顯示了對集合的至少 一個對狀態(tài)為"正常"。組狀態(tài)為"異常"的情況,顯示了對集合的所有對狀態(tài)都 為"異常"。組狀態(tài)為"未使用"的情況,顯示了該組編號的信息不是有效的。對 集合,在正存儲系統(tǒng)的情況下,保持組編號所示的組所屬的所有正邏輯巻的對 編號。在副存儲系統(tǒng)的情況下,保持組編號所示的組所屬的所有副邏輯巻的對 編號。日志邏輯巻編號顯示該組編號的組所屬的日志邏輯巻編號。更新編號初 始值為1,在對組內(nèi)的正邏輯巻執(zhí)行了數(shù)據(jù)寫入后,加l。更新編號存儲在日 志的更新信息內(nèi),是為了在副存儲系統(tǒng)100B中遵守數(shù)據(jù)的更新順序而使用的。 例如,圖6的組信息1,根據(jù)對信息l, 2,由正邏輯巻l, 2以及日志邏輯巻 4構(gòu)成,它顯示正常地執(zhí)行數(shù)據(jù)的復(fù)制處理。
      指針信息700為每一組進行保持,它是用于管理該組的日志邏輯巻的信 息,它保持了更新信息區(qū)域起始地址、寫入數(shù)據(jù)區(qū)起始地址、更新信息最新地 址、更新信息最舊地址、寫入數(shù)據(jù)最新地址、寫入數(shù)據(jù)最舊地址、讀開始地址、 重試開始地址。圖7和圖8中顯示了指針信息700的一個例子。更新信息區(qū)域 起始地址保持用于存儲日志邏輯巻的更新信息之存儲區(qū)(更新信息區(qū)域)的起 始邏輯地址。寫入數(shù)據(jù)區(qū)起始地址,保持用于存儲日志邏輯巻的寫入數(shù)據(jù)之存 儲區(qū)(寫入數(shù)據(jù)區(qū))的起始邏輯地址。更新信息最新地址,在存儲下一個日志的 情況下,保持更新信息的保存中所使用的起始邏輯地址。更新信息最舊地址, 保持用于保存最老的(更新編號小的)日志的更新信息之起始邏輯地址。寫入數(shù) 據(jù)最新地址,在存儲下一個日志的情況下,保持寫入數(shù)據(jù)的保存中所使用的起 始邏輯地址。寫入數(shù)據(jù)最舊地址,保持用于保存最舊的(更新編號小的)日志的 寫入數(shù)據(jù)之起始邏輯地址。寫起始地址和重試起始地址,^U又在正存儲系統(tǒng) 100A中使用,在后述的日志讀接收處理中使用。在圖7和圖8的指針信息700 的例子中,保存日志的管理信息的區(qū)域(更新信息區(qū)域),從邏輯巻4的存儲區(qū) 開頭到699的位置為止;保存日志的寫入數(shù)據(jù)之區(qū)域(寫入數(shù)據(jù)區(qū))是邏輯巻4 的存儲區(qū)的從700的位置到2699的位置為止。日志的管理信息被保存在邏輯 巻4的存儲區(qū)的從200的位置到499的位置中,下一個日志的管理信息是從邏 輯巻4的存儲區(qū)的500的位置開始保存。日志的寫入數(shù)據(jù)被保存在邏輯巻4
      14的存儲區(qū)的從1300的位置到2199的位置中;下一個日志的寫入數(shù)據(jù)從邏輯巻 4的存儲區(qū)2200的位置開始保存。
      在下述說明中,盡管是在為1個組分配了 一個日志邏輯巻的狀態(tài)下進行的 說明,但是,也可以為1個組分配多個日志邏輯巻。例如,為一個組分配2 個曰志邏輯巻,并為每個日志邏輯巻設(shè)置指針信息700,以交替存儲曰志。由 此,能夠分散對于日志的存儲裝置150的寫入,預(yù)計能夠提高性能。另外,也 提高了日志的讀性能。作為另一個例子,為一個組分配2個日志邏輯巻,通常, 僅僅使用1個日志邏輯巻。另 一個日志邏輯巻是在正在使用的日志邏輯巻的性 能低下的情況下使用的。性能低下的例子是這樣一種情況日志邏輯巻由多個 存儲裝置150構(gòu)成,按RAID5的方式正在保持數(shù)據(jù)的、所構(gòu)成的存儲裝置150 的一臺處于故障中。
      上述巻信息400、對信息500、組信息600、以及指針信息700等,最好 是存儲在公用存儲器140內(nèi)。但是,本實施例并不僅限于這種情況,也可以將 這些信息集中存儲或分散存儲在高速緩沖存儲器130、主適配器110、盤適配 器120、其他其他存儲裝置150內(nèi),來執(zhí)行存儲。
      接下來,將使用圖9、圖10,從正存儲系統(tǒng)IOOA對副存儲系統(tǒng)100B開 始數(shù)據(jù)復(fù)制的順序進行說明。
      (l)就組生成進行說明(步驟卯0)。用戶使用維》務(wù)終端或主機180,對照正 存儲系統(tǒng)100A的組信息600,來獲取組狀態(tài)為"未使用"之組編號。用戶使用 維修終端或主機180,來指定組編號A,并對正存儲系統(tǒng)IOOA執(zhí)行組生成指 示。
      正存儲系統(tǒng)IOOA接受組生成指示,并將指定的組編號A的組狀態(tài)改變?yōu)?"正常"。
      同樣,用戶對照副存儲系統(tǒng)100B的組信息600,來獲取組狀態(tài)為"未使用" 之組編號B。用戶使用維修終端或主機180,來指定副存儲系統(tǒng)100B和組編 號B,并在正存儲系統(tǒng)100A上執(zhí)行組生成指示。正存儲系統(tǒng)100A,將所接 收的組生成指示傳送到副存儲系統(tǒng)IOOB。副存儲系統(tǒng)100B,將所指定的組編 號B的組狀態(tài)改變?yōu)?正常"。
      用戶也可以使用副存儲系統(tǒng)100B的維修終端,或連接于副存儲系統(tǒng)100B上的主機180,來指定組編號B,并對副存儲系統(tǒng)IOOB執(zhí)行組生成指示。
      (2) 就對登錄進行說明(步驟910)。用戶使用維修終端或主機180,來指定 顯示數(shù)據(jù)復(fù)制對象之信息和顯示數(shù)據(jù)復(fù)制接受者之信息,并在正存儲系統(tǒng) 100A上執(zhí)行對登錄指示。顯示數(shù)據(jù)復(fù)制對象的信息,是lt據(jù)復(fù)制對象的組編 號A和正邏輯巻的編號。顯示數(shù)據(jù)接受者的信息是保存復(fù)制數(shù)據(jù)之副記錄系 統(tǒng)100B和組編號B、副邏輯巻編號。
      接受所述對登錄指示,正存儲系統(tǒng)100A,從對信息500中獲取對信息為"未 使用"之對編號,將對狀態(tài)設(shè)定為"未拷貝",將顯示正存儲系統(tǒng)IOOA的正存儲 系統(tǒng)編號設(shè)定為正存儲系統(tǒng)編號,將被指示的正邏輯巻編號設(shè)定為正邏輯巻編 號,將被指示的副存儲系統(tǒng)編號設(shè)定為副存儲系統(tǒng)編號,將被指示的副邏輯巻 編號設(shè)定為副邏輯巻編號,將被指示的組編號A設(shè)定為組編號。正存儲系統(tǒng) 100A,將所獲取的對編號追加到被指示的組編號A的組信息600的對集合中, 并將正邏輯巻編號的巻狀態(tài)修改為"正"。
      正存儲系統(tǒng)100A向副存儲系統(tǒng)100B指示顯示正存儲系統(tǒng)100A之正 存儲系統(tǒng)編號、由用戶指定的組編號B、正邏輯巻編號、以及副邏輯巻編號。 副存儲系統(tǒng)100B從對信息500中獲取未使用的對編號,將對狀態(tài)設(shè)定為"未 拷貝",將顯示存儲系統(tǒng)100A的正存儲系統(tǒng)編號設(shè)定為正存儲系統(tǒng)編號,將 被指示的正邏輯巻編號設(shè)定為正邏輯巻編號,將顯示副存儲系統(tǒng)B的副存4渚 系統(tǒng)編號設(shè)定為副存儲系統(tǒng)編號,將被指示的副邏輯巻編號設(shè)定為副邏輯巻編 號,將被指示的組編號B設(shè)定為組編號。
      副存儲系統(tǒng)100B向所指示的組編號B的組信息600的對集合中,追加了 所述獲取到的對編號,并將副邏輯巻編號的巻狀態(tài)改變?yōu)?副"。
      以上操作是針對所有的數(shù)據(jù)復(fù)制對象的對執(zhí)行的。
      在所述說明中,盡管說明了通知執(zhí)行對于邏輯巻的組的登錄,以及邏輯巻 的對的設(shè)置,但是,它們也可以分別執(zhí)行。
      (3) 就日志邏輯巻登錄進行說明(步驟920)。用戶^_用維修終端或主機180, 對正存儲系統(tǒng)100A執(zhí)行將把日志保存中所使用的邏輯巻(日志邏輯巻)登錄到 組內(nèi)之指示(日志邏輯巻登錄指示)。日志邏輯巻登錄指示,由組編號和邏輯巻 編號構(gòu)成。正存^f渚系統(tǒng)100A,將被指示的邏輯巻編號登錄為所指示的組編號之組信 息600的日志邏輯巻編號。將該邏輯巻的巻信息400的巻狀態(tài)設(shè)定為"正常"。
      同樣,用戶使用維修終端或主機180,對照副存儲系統(tǒng)100B的巻信息400, 來指定副存儲系統(tǒng)IOOB、組編號B、作為日志邏輯巻使用的邏輯巻編號,并 對正存儲系統(tǒng)100A執(zhí)行日志邏輯巻登錄。正存儲系統(tǒng)100A將日志邏輯巻登 錄指示傳送給副存儲系統(tǒng)IOOB。副存儲系統(tǒng)100B,將被指示的邏輯巻編號登 錄為所指示的組編號B之組信息600的日志邏輯巻編號。將該邏輯巻的巻信 息400的巻狀態(tài)設(shè)定為"正常"。
      也可以是用戶使用副存儲系統(tǒng)100B的維修終端或連接于副存儲系統(tǒng) 100B上的主機180,來指定組編號、作為日志邏輯巻使用的邏輯巻編號,并 對副存儲系統(tǒng)100B執(zhí)行日志邏輯巻登錄指示。
      以上的操作是針對作為全體日志邏輯巻而使用的邏輯巻執(zhí)行的。步驟910 和步驟920的順序沒有不同。
      (4) 對數(shù)據(jù)復(fù)制處理的開始進行說明(步驟930)。用戶使用維修終端或主機 180,來指定開始數(shù)據(jù)復(fù)制處理的組編號,并將數(shù)據(jù)復(fù)制處理的開始指示給正 存儲系統(tǒng)IOOA。正存儲系統(tǒng)100A將所指示的組所屬的所有對信息400的拷 貝結(jié)束地址設(shè)定為"O"。
      正存^f諸系統(tǒng)100A向副存儲系統(tǒng)100B指示了后述日志讀處理和重新啟動 處理的開始。
      正存儲系統(tǒng)IOOA開始后述的初期拷貝處理。
      (5) 就初期拷貝技術(shù)進行說明(步驟940)。
      當(dāng)初期復(fù)制結(jié)束后,正存儲系統(tǒng)IOOA將初期拷貝處理的結(jié)束通知給副存 儲系統(tǒng)100B。副存儲系統(tǒng)IOOB將所指示的組所屬的所有副邏輯巻的對裝置改 變?yōu)?正常"。
      圖IO是初期拷貝處理的流程圖。初期拷貝處理,對于數(shù)據(jù)復(fù)制對象的正 邏輯巻的所有存儲區(qū),使用對信息500的拷貝完畢地址,從存儲區(qū)開頭開始順 序執(zhí)行以下操作每單位大小就產(chǎn)生一個日志??截愅戤叺刂?,其初始值為0, 每做成一個日志就加上所做成的數(shù)據(jù)量。從邏輯巻的存儲區(qū)開頭開始到拷貝結(jié) 束地址的前一個,是利用初期拷貝處理做成的日志。由于執(zhí)行了初期拷貝處理,因此,可能將正邏輯巻中未更新的數(shù)據(jù)傳送給副邏輯巻。在以下說明中,記載
      的是正存儲系統(tǒng)100A內(nèi)的主適配器A執(zhí)行處理,4旦是也可以是盤適配器120 來執(zhí)行處理。
      (1) 正存儲系統(tǒng)100A的主適配器A,得到了處理對象的組所屬的對中其對 狀態(tài)為"未拷貝"的正邏輯巻A,并將對的狀態(tài)修改為"拷貝中",并反復(fù)執(zhí)行以 下操作(步驟1010, 1020)。在正邏輯巻A不存在的情況下,結(jié)束處理(步驟1030)。
      (2) 在步驟1020中,在邏輯巻A不存在的情況下,主適配器A以單位大小 (例如是1MB)的數(shù)據(jù)為對象,作成日志。日志作成處理將在后面進行i兌明(步 驟1040)。
      (3) 主適配器A將作成的日志的數(shù)據(jù)大小加到拷貝結(jié)束地址上。
      (4) 拷貝結(jié)束地址在到達正邏輯巻A的容量之前, 一直重復(fù)執(zhí)行上述處理 (步驟1060)。在拷貝結(jié)束地址變?yōu)榕c正邏輯巻A的容量相等的情況下,由于 針對邏輯巻A的所有存儲區(qū)作成了日志,因此,將對狀態(tài)更新為"正常",并開 始另一個正邏輯巻的處理(步驟1070)。
      所述流程圖中,是平均以一個邏輯巻為對象來進行說明的,但也可以同時 處理多個邏輯巻。
      圖11是說明命令接收處理210的處理的圖,圖12是命令接收處理210的 流程圖,圖13是日志作成處理的流程圖。以下,將使用這些圖,就正存儲系 統(tǒng)IOOA在接收了來自主機180的、對數(shù)據(jù)復(fù)制對象的邏輯巻230之寫入命令 的情況下的操作進行說明。
      (1) 存儲系統(tǒng)100A內(nèi)的主適配器A接收來自于主機的訪問命令。訪問命令, 含有讀、寫、后述的日志讀等的命令、命令對象的邏輯地址、數(shù)據(jù)量等。以下, 令訪問命令內(nèi)的邏輯地址為邏輯地址A,邏輯巻編號為邏輯巻A,邏輯巻內(nèi)位 置為邏輯巻內(nèi)位置A,凄t據(jù)量為數(shù)據(jù)量A(步驟1200)。
      (2) 主適配器A調(diào)查訪問命令(步驟1210、 U15)。在步驟1215的調(diào)查中, 在訪問命令為日志讀命令的情況下,執(zhí)行后述的日志接收處理(步驟1220)。訪 問命令除了是日志讀命令和寫命外,例如讀命令的情況下,以與已有技術(shù)相同 的方式執(zhí)行讀處理(步驟1230)。
      (3) 在步驟1210的調(diào)查中,在訪問明令為寫入命令的情況下,參照邏輯巻
      18A的巻信息400來調(diào)查巻狀態(tài)(步驟1240)。在步-驟1240的調(diào)查中,在邏輯巻 A的巻狀態(tài)為"正常"或"正"以外的情況下,由于不可能對邏輯巻A進行訪問, 因此,將主機180報告異常結(jié)束(步驟1245)。
      (4) 在步驟1240的調(diào)查中,在邏輯巻A的巻狀態(tài)為"正常"、"正"的任何一 種情況下,主適配器A確保高速緩沖存儲器130,并將已作好數(shù)據(jù)接收準備之 事通知主機180。主機180接受該通知,并將寫入數(shù)據(jù)傳送給正存儲系統(tǒng)IOOA。 主適配器A接收寫入數(shù)據(jù),并將器保存在該高速緩沖存儲器130內(nèi)(步驟1250、 圖11的1100)。
      (5) 主適配器A參照邏輯巻A的巻狀態(tài),調(diào)查邏輯巻A是否是數(shù)據(jù)復(fù)制對 象(步驟1260)。在步驟1260的調(diào)查中,在巻狀態(tài)為"正"的情況下,由于邏輯 巻A是數(shù)據(jù)復(fù)制對象,因此執(zhí)行后述的日志作成處理(步驟1265)。
      (6) 在步驟1260的調(diào)查中,在巻狀態(tài)為"正常"的情況下,或者在步驟1265 的日志作成處理結(jié)束后,主適配器A,對數(shù)據(jù)適配器120發(fā)出命令,令其將寫 入數(shù)據(jù)寫入存儲裝置150(圖U)的1140,并向主機180進行結(jié)束報告(步驟 1270、 1280)。之后,該盤適配器120,通過讀些處理,將寫入數(shù)據(jù)保存在存4諸 裝置150內(nèi)(圖11的1110)。
      接下來,將就日志作成處理進行說明。
      (1) 主適配器A調(diào)查日志邏輯巻的巻狀態(tài)(步驟1310)。在步驟1310的調(diào)查 中,在日志邏輯巻的巻狀態(tài)為"異常,,的情況下,由于不能向日志邏輯巻存儲曰 志,因此組狀態(tài)變更為"異常",并結(jié)束處理(步驟1315)。這種情況下,執(zhí)行將 曰志邏輯巻變更為正常的邏輯巻等。
      (2) 在步驟1310的調(diào)查中,在日志邏輯巻為正常的情況下,繼續(xù)執(zhí)行曰志 作成處理。日志作成處理,根據(jù)是初期拷貝處理內(nèi)的處理,還是命令接收處理 內(nèi)的處理,其處理不同(步驟1320)。在日志作成處理是命令接收處理內(nèi)的處理 的情況下,執(zhí)行從步驟1330開始的處理。在日志作成處理是初期拷貝處理內(nèi) 的情況下,執(zhí)行從步驟1370開始的處理。
      (3) 在日志作成處理是命令接收處理內(nèi)的處理的情況下,主適配器A調(diào)查 寫入對象的邏輯地址A是否已成為初期拷貝處理的處理對象(步驟1330)。在 邏輯巻A的對狀態(tài)為"未拷貝"的情況下,由于后面要執(zhí)行初期拷貝處理中的曰
      19志作成處理,因此在這里不產(chǎn)生日志而是結(jié)束處理(步驟1335)。邏輯巻A的 對裝置為"拷貝中,,的情況下,當(dāng)拷貝結(jié)束地址等于或小于邏輯地址內(nèi)位置A 時,由于在后面會^^f亍初期拷貝處理中的日志作成處理,因此,在這里不產(chǎn)生 曰志而是結(jié)束處理(步驟1335)。除上述情況外,即當(dāng)邏輯巻A的對狀態(tài)為"拷 貝中,,,且拷貝結(jié)束地址為邏輯地址內(nèi)位置A以上的情況時,由于初期拷貝處 理已經(jīng)結(jié)束,因此繼續(xù)執(zhí)行日志作成處理。
      (4) 接下來,主適配器A調(diào)查日志可能存儲在日志邏輯巻內(nèi)。使用指針信 息700,來調(diào)查是否有更新信息區(qū)域的未使用區(qū)域(步驟1340)。在指針信息700 的更新信息最新地址與更新信息最舊地址相等的情況下,由于更新信息區(qū)域中 不存在未使用區(qū)域,因此結(jié)束處理,作為日志作成失敗(步驟1390)。
      在步驟1340的調(diào)查中,在更新信息區(qū)域中存在未使用區(qū)域的情況下,使 用指針信息700,來調(diào)查能否在寫入數(shù)據(jù)區(qū)內(nèi)存儲寫入數(shù)據(jù)(步驟1345)。在寫 入數(shù)據(jù)最新地址和數(shù)據(jù)量A的和,等于或大于寫入數(shù)據(jù)最老地址的情況下, 由于不能存儲在寫入凄t據(jù)區(qū)內(nèi),因此結(jié)束處理,作為日志作成失敗(步驟1390)。
      (5) 在可能存儲日志的情況下,主適配器A獲取用來存儲更新編號和更新 信息之邏輯地址,以及用于存儲寫入數(shù)據(jù)之邏輯地址,并在高速緩沖存儲器 130內(nèi)作成更新信息。更新編號是從對象組的組信息600中獲取到的,并將加 l后的數(shù)值設(shè)定為組信息600的更新編號。存儲更新信息的邏輯地址,是指針 信息700的更新信息最新地址,將加上了更新信息大小后的數(shù)值設(shè)定為指針信 息700的更新信息最新地址。存儲寫入數(shù)據(jù)的邏輯地址是指針信息700的寫入 數(shù)據(jù)最新地址,將寫入數(shù)據(jù)最新地址加上了數(shù)據(jù)量A后的數(shù)值,設(shè)定為指針 信息700的寫入凄t據(jù)最新地址。
      主適配器A將上述獲取的數(shù)值和組編號、接收寫命令的時刻、寫命令內(nèi) 的邏輯地址A、數(shù)據(jù)量A設(shè)定為更新信息(步驟1350、圖11的1120)。例如, 在圖6所示的組信息600、圖7所示的指針信息700的狀態(tài)下,在從組1所屬 的正邏輯巻1的存儲區(qū)開頭開始的800的位置處接收到數(shù)據(jù)大小100的寫命令 的情況下,作成圖22所示的更新信息。組信息的更新編號變?yōu)?,指針信息 的更新信息最近地址變?yōu)?00(設(shè)最近信息的大小為100),寫入數(shù)據(jù)最新地址 變?yōu)?300。C6)主適配器A對盤適配器120發(fā)出命令,令其將日志的更新信息和寫入 數(shù)據(jù)寫入存儲裝置150內(nèi),并正常結(jié)束(步驟1360、圖11的1130、 1140、 1150)。
      (7) 日志作成處理,在是初期拷貝處理內(nèi)的處理的情況下,執(zhí)行從步驟1370 開始的處理。主適配器A調(diào)查日志是可以作成的。使用指針信息700,來調(diào)查 有無更新信息區(qū)域的未使用區(qū)域(步驟1370)。在指針信息700的更新信息最新 地址和更新信息最舊地址相等的情況下,由于在更新信息區(qū)域內(nèi)不存在未使用 區(qū)域,因此結(jié)束處理,作為日志作成失敗(步驟1390)。在本實施例中,在所示 的初期拷貝處理的情況下,日志的寫入數(shù)據(jù)是從正邏輯巻中讀出的,由于沒有 使用寫入數(shù)據(jù)區(qū),因此不需要確認寫入數(shù)據(jù)區(qū)的未使用區(qū)域。
      (8) 在步驟1370的調(diào)查中,在可以作成日志的情況下,主適配器A獲取在 更新信息內(nèi)設(shè)定的數(shù)值,并在高速緩沖存儲器130內(nèi)作成更新信息。更新編號 是從對象組的組信息600中獲取的,并將加1后的數(shù)值設(shè)定為組信息600的更 新編號。存儲更新信息的邏輯地址,是指針信息700的更新信息最新地址的位 置,將加上更新信息大小后的數(shù)值設(shè)定為指針700的更新信息最新地址。
      主適配器A將初期拷貝處理對象的邏輯地址,設(shè)定為存儲上述獲取的數(shù) 值、以及組編號、本處理的開始時刻、處理拷貝處理對象的邏輯地址、初期拷 貝一次的處理量、以及寫入數(shù)據(jù)的日志邏輯巻的邏輯地址(步驟1380,圖11 的1120)。
      (9) 主適配器A對盤適配器120發(fā)出命令,令其將更新信息寫入存儲裝置 150內(nèi),并正常結(jié)束(步驟1385、圖11的1140、 1160)。
      在上述說明中,盡管是以更新信息存在于高速緩沖存儲器130內(nèi)的方式進 行記載的,但是也可以將其存儲于公共存儲器140內(nèi)。
      將寫入數(shù)據(jù)寫入存儲裝置150的寫入操作也可以是非同步的,即也可以不 必緊跟著步驟1360和步驟1385。但是,在主機180再次對邏輯地址A執(zhí)行寫 命令的情況下,由于沒有寫上日志的寫入數(shù)據(jù),因此,在從主機接收寫入數(shù)據(jù) 之前,日志的寫入數(shù)據(jù),必須要寫入與更新信息的日志邏輯巻的邏輯地址相對 應(yīng)的存儲裝置150中?;蛘呤?,也可以退避到別的高速緩沖存儲器內(nèi),之后, 執(zhí)行寫入到與更新信息的日志邏輯巻的邏輯地址對應(yīng)的存儲裝置150內(nèi)。
      在所述日志作成處理中,將日志保存在存儲裝置150內(nèi),但是,由于為曰志用途準備了預(yù)定量的高速緩沖存儲器130,因而使用了所有的高速緩沖存儲
      器,因此,也可以將日志保存在存儲裝置150內(nèi)。日志用的高速緩沖存儲器的 量例如可以從維修端進行指定。
      讀寫處理220是盤適配器120實施接受來自于主適配器110或盤適配器 120的命令的處理。實施的處理是將被指定的高速緩沖存儲器130的數(shù)據(jù)寫入 與被指定的邏輯地址相對應(yīng)的存儲裝置150內(nèi)的存儲區(qū)之處理、從與被指定的 邏輯地址對應(yīng)的存儲裝置150內(nèi)的存儲區(qū)中讀出數(shù)據(jù)至高速緩沖存儲器130 的處理等。
      圖14是說明接收了日志讀命令的正存儲系統(tǒng)100A的主適配器的操作(日 志讀接收處理)的圖,圖15是流程圖。以下,使用這些圖,來說明正存儲系統(tǒng) IOOA接收了來自于副存儲系統(tǒng)100B的日志讀命令情況下之操作。
      (1) 正存儲系統(tǒng)100A內(nèi)的主適配器A接收來自于副存儲系統(tǒng)100B的訪問 命令。訪問命令包含顯示為日志讀命令的標識符、命令對象的組編號、有無 重試指示。以下,設(shè)訪問命令內(nèi)的組編號為組編號A(步驟1220、圖14的1410)。
      (2) 主適配器A調(diào)查組編號A的組狀態(tài)是否為"正常"(步驟1510)。在步驟 1510的調(diào)查中,組狀態(tài)為"正常"之外例如為"故障"的情況下,將組狀態(tài)通知副 存儲系統(tǒng)100B,并結(jié)束處理。副存儲系統(tǒng)IOOB根據(jù)所接收的組狀態(tài)來執(zhí)行處 理。例如,在組狀態(tài)為"故障,,的情況下,結(jié)束日志讀處理(步驟1515)。
      (3) 在步驟1510的調(diào)查中,在組編號A的組狀態(tài)為"正常,,的情況下,主適 配器A調(diào)查日志邏輯巻的狀態(tài)(步驟1520)。在步驟1520的調(diào)查中,在日志邏 輯巻的邏輯狀態(tài)不是"正常"的情況下,例如在"故障"的情況下,組狀態(tài)變更為 "故障",將給組狀態(tài)通知給副存儲系統(tǒng)100B,并結(jié)束處理。副存儲系統(tǒng)100B 根據(jù)所接收的組狀態(tài)來執(zhí)行處理。例如,在組狀態(tài)為"故障"的情況下,結(jié)束日 志讀處理(步驟1525)。
      (4) 在步驟1520的調(diào)查中,在日志邏輯巻的邏輯狀態(tài)為"正常,,的情況下, 調(diào)查日志讀命令是否是重試指示(步驟1530)。
      (5) 在步驟1530的調(diào)查中,在調(diào)查日志讀命令是重試指示的情況下,主適 配器A將前一次發(fā)送的日志再次傳送給副存儲系統(tǒng)IOOB。主適配器A,確保 高速緩沖存儲器130,并命令盤適配器從指針信息700的重試開始地址開始,將更新信息之大小的信息讀入高速緩沖存儲器內(nèi)(圖14的1430)。
      盤適配器的讀寫處理,從存儲裝置150中讀出更新信息,將其保存在高速 緩沖存儲器130內(nèi),并通知給主適配器A(圖14的1430)。
      主適配器A接受更新信息的讀結(jié)束的通知,并從更新信息中獲取寫入數(shù) 據(jù)的邏輯地址以及寫入數(shù)據(jù),確保高速緩沖存儲器130,并命令盤適配器將寫 入數(shù)據(jù)讀入高速緩沖存儲器內(nèi)(步驟1540,圖14的1440)。
      盤適配器的讀寫處理,從存儲裝置150中讀出寫入數(shù)據(jù),將其保存于高速 緩沖存儲器內(nèi),并通知給主適配器A(圖14的1450)。
      主適配器A接受寫入數(shù)據(jù)的寫入結(jié)束通知,將更新信息和寫入數(shù)據(jù)傳送 到副存儲系統(tǒng)100B,釋放保持日志的高速緩沖存儲器130,并結(jié)束處理(步驟 1545,圖14的1460)。
      (6) 在步驟1530的調(diào)查中,在不是重試指示的情況下,主適配器A調(diào)查是 否存在沒有發(fā)送的日志,如果存在,則將日志傳送給副存儲系統(tǒng)IOOB。主適 配器A對指針信息700的讀開始地址和更新信息最新地址進行比較(步驟 1550)。
      在讀開始地址與更新信息最新地址相等的情況下,由于將所有的日志都傳 送給了副存儲系統(tǒng)IOOB,因此,向副存儲系統(tǒng)100B傳送"無日志,,(步驟1560), 并釋放前一次的日志命令時,傳送給副存儲系統(tǒng)100B的日志的存儲區(qū)(步驟 1590)。
      日志的存儲區(qū)的釋放處理,是將重試開始地址設(shè)定為指針信息700的更新 信息最舊地址。在更新信息最舊地址變?yōu)閷懭霐?shù)據(jù)區(qū)開始地址的情況下,令更 新信息最舊地址為零。指針信息700的寫入數(shù)據(jù)最舊地址,變更為加上了根據(jù) 前一次的讀日志命令所發(fā)送的寫入數(shù)據(jù)之大小后的數(shù)值。在寫入數(shù)據(jù)最舊地址 變?yōu)槿罩具壿嫀喌娜萘恳陨系倪壿嫷刂返那闆r下,減去寫入數(shù)據(jù)區(qū)開始地址來 進行々務(wù)正。
      (7) 在步驟1550的調(diào)查中,在存在未發(fā)送的日志的情況下,主適配器A確 保高速緩沖存儲器130,并命令盤適配器將從指針信息700的讀出開始地址 開始的、更新信息之大小的信息讀入高速緩沖存儲器內(nèi)(圖14的1420)。
      主適配器A的讀寫處理是從存儲裝置150中讀出更新信息,并將其保存于高速緩沖存儲器130內(nèi),并通知給主適配器(圖4的1430)。
      主適配器A接受更新信息的讀結(jié)束通知,并從更新信息中獲取寫入數(shù)據(jù) 的邏輯地址以及寫入數(shù)據(jù)的大小,確保高速緩沖存儲器130,并命令盤適配器 將寫入數(shù)據(jù)讀入高速緩沖存儲器內(nèi)(步驟1570,圖14的1440)。
      主適配器A的讀寫處理是從存儲裝置150中讀出寫入數(shù)據(jù),并將其保存 于高速緩沖存^f諸器130內(nèi),并通知給主適配器(圖4的1450)。
      主適配器A接受寫入數(shù)據(jù)的讀結(jié)束通知,將更新信息以及寫入數(shù)據(jù)傳送 到副存儲系統(tǒng)100B內(nèi)(步驟"80),并釋放保持日志的高速緩沖存儲器130 (圖 14的1460)。于是,將讀開始地址設(shè)定為指針信息700的重試開始地址,并將 加上了發(fā)送的日志之更新信息大小后的數(shù)值設(shè)定為讀開始地址。
      (8)主適配器A釋放在前一次日志讀命令的處理時,發(fā)送給副存儲系統(tǒng) 100B的日志的存儲區(qū)(步驟l590)。
      在前述日志讀接收處理中,正存儲系統(tǒng)IOOA,是將日志發(fā)送給平均一個 副存儲系統(tǒng)100B,但是,也可以將其同時發(fā)送給多個副存儲系統(tǒng)IOOB。在一 個日志讀命令中,發(fā)送的日志數(shù)目也可以由副存儲系統(tǒng)100B在日志讀命令中 進行指定,在組登錄時等情況中,也可以由用戶指定給正存儲系統(tǒng)IOOA和副 存儲系統(tǒng)100B。另外,也可以根據(jù)正存儲系統(tǒng)IOOA和副存儲系統(tǒng)100B的連 接總線200的傳輸能力或負荷等,動態(tài)地利用一個日志讀命令來改變發(fā)送的曰 志數(shù)。也可以不考慮日志數(shù)而是考慮日志的寫入數(shù)據(jù)的大小,來指定日志的傳 輸量。
      在所述日志讀接收處理中,將日志從存儲裝置150中讀入到高速緩沖存儲 器130內(nèi),但是,在存在于高速緩沖存儲器130內(nèi)的情況下,就不需要該處理。
      前述日志讀接收處理內(nèi)的日志的存儲區(qū)的釋放處理,是在下一個日志讀命 令的處理時刻進行的,但是,也可以直接在將日志發(fā)送給副存儲系統(tǒng)IOOB后 就釋放。副存儲系統(tǒng)100B設(shè)定也可以在日志讀命令內(nèi)進行釋放的更新編號, 正存儲系統(tǒng)IOOA也可以根據(jù)其指示,釋放日志的存儲區(qū)。
      圖16是說明日志讀命令處理240的圖,圖17是流程圖,圖18是日志存 儲處理的流程圖。以下,將使用這些流程圖,對副存儲系統(tǒng)100B的主適配器 B從正存儲系統(tǒng)100A中讀出日志,并將其存儲于日志邏輯巻內(nèi)的操作進行說明。
      (1) 副存儲系統(tǒng)100B內(nèi)的主適配器B,確保存儲日志的高速緩沖存儲器 130,并向正存儲系統(tǒng)100A發(fā)送包含顯示是日志讀命令之標識符、命令對象 的正存儲系統(tǒng)100A的組編號、以及有無重試指示的訪問命令。以下,設(shè)訪問 命令內(nèi)的組編號為組編號A(步驟1700,圖16的1610)。
      (2) 主適配器B接收正存儲系統(tǒng)100A的應(yīng)答以及日志(圖16的1620)。主 適配器調(diào)查應(yīng)答,當(dāng)來自正存儲系統(tǒng)IOOA的應(yīng)答為"無日志"的情況下,由于 在正存儲系統(tǒng)100A中不存在指定組的日志,因此,在一定時間后,將讀日志 命令發(fā)送給正存儲系統(tǒng)IOOA(步驟1720、 1725)。
      (4) 當(dāng)正存儲系統(tǒng)100A的應(yīng)答為"組狀態(tài)故障,,或者是"組狀態(tài)未使用"的情 況下,副存儲系統(tǒng)100B的組狀態(tài)改變?yōu)榻邮諣顟B(tài),并結(jié)束日志讀處理(步驟 1730、 1735)。
      (5) 當(dāng)正存儲系統(tǒng)IOOA的應(yīng)答為上述情況之外,即正常結(jié)束的情況下,調(diào) 查日志邏輯巻的巻狀態(tài)(步驟1740)。在日志邏輯巻的巻狀態(tài)為"異常"的情況 下,由于不可能在日志邏輯巻中存儲日志,因此,組狀態(tài)改變?yōu)?異常",并結(jié) 束處理(步驟1745)。這種情況,執(zhí)行將日志邏輯巻變更為正常邏輯巻等,并正 常返回組的狀態(tài)。
      (6) 在步驟1740的調(diào)查中,在日志邏輯巻的巻狀態(tài)為"正常"的情況下,執(zhí) 行后述的日志存儲處理1800。在日志存儲處理1800正常結(jié)束的情況下,發(fā)送 下一個日志讀命令。或者是在經(jīng)過一定時間后,發(fā)送下一個日志讀命令(步驟 1760)。發(fā)送下一個日志命令的定時,可以以一定的時間間隔定期發(fā)送,也可 以由接收的日志的個數(shù),或者是,連接線200的通信量、副存儲系統(tǒng)100B保 持的日志的存儲容量,副存儲系統(tǒng)100B的負荷等來決定。此外,也可以從副 存儲系統(tǒng)100B中,讀出存儲系統(tǒng)IOOA保持的日志的存儲容量,或者正存儲 系統(tǒng)100A的指針信息,從而根據(jù)該數(shù)值來作決定。上述信息的傳輸,也可以 用專用的指令來執(zhí)行,也可以包含于日志讀命令的應(yīng)答內(nèi)。此后的處理,與步 驟1710后的相同。
      (7) 在步驟1800的日志存儲處理沒有正常結(jié)束的情況下,由于不足日志邏 輯巻的未使用區(qū)域,因此舍棄接收的日志,并在一定時間后發(fā)送重試指示的曰
      25志讀命令(步驟1755)。或者是,將日志保持在高速緩沖存儲器內(nèi),并在一定時 間后,再次執(zhí)行日志存儲處理。這是因為,由于執(zhí)行后述的重新啟動處理250, 因此,在一定時間后,存在日志邏輯巻內(nèi)的未使用區(qū)域增加的可能性。在這種 方式的情況下,就不需要日志讀命令內(nèi)的重試指示的有無。 接下來,就圖18所示的日志存儲處理1800進行說明。
      (1) 主適配器B調(diào)查日志是否可能存儲在日志邏輯巻內(nèi)。使用指針信息 700,來調(diào)查更新信息區(qū)域內(nèi)的未使用區(qū)域的有無(步驟1810)。在指針信息700 的更新信息最新地址和更新信息最舊地址相等的情況下,由于在更新信息區(qū)域 內(nèi)不存在未使用區(qū)域,因此以日志作成失敗而結(jié)束了處理(步驟1820)。
      (2) 在步驟1810的調(diào)查中,當(dāng)更新信息區(qū)域內(nèi)存在未使用區(qū)域的情況下, 使用指針信息700,來調(diào)查是否能夠在寫入數(shù)據(jù)區(qū)內(nèi)存儲寫入數(shù)據(jù)(步驟1830)。 在寫入數(shù)據(jù)最新地址和接收的日志的寫入數(shù)據(jù)的數(shù)據(jù)量的和,等于或大于寫入 數(shù)據(jù)最舊地址的情況下,由于不能在寫入凄丈據(jù)區(qū)內(nèi)存儲寫入數(shù)據(jù),因此以日志 作成失敗而結(jié)束了處理(步驟1820)。
      (3) 在日志可存儲的情況下,主適配器B改變接收的更新信息的組編號, 和曰志邏輯巻的邏輯地址。組編號變更為副存儲系統(tǒng)100B的組編號,日志邏 輯巻的邏輯地址變更為指針信息700的寫入數(shù)據(jù)最新地址。主適配器B,將指 針信息700的更新信息最新地址變更為在更新信息最新地址上加上了更新信 息之大小后的數(shù)值。主適配器B,將指針信息700的寫入數(shù)據(jù)最新地址,變更 為在寫入數(shù)據(jù)最新地址上加上了寫入數(shù)據(jù)之大小后的數(shù)值(步驟1840)。
      (4) 主適配器B,命令盤適配器120:將跟新信息和寫入數(shù)據(jù)讀入存儲裝置 150內(nèi),并以日志作成成功而結(jié)束該處理(步驟1850,圖16的1630)。之后, 盤適配器120通過讀寫處理,將更新信息和寫入數(shù)據(jù)寫入存儲裝置150,并釋 放高速緩沖存儲器130(圖16的1640)。
      在前述的日志存儲處理中,是將日志保存于存儲裝置150內(nèi)的,但是由于 為日志用途準備了一定量的高速緩沖存儲器130,因而使用了所有的高速緩沖 存儲器,因此,也可以將日志保存于存儲裝置150內(nèi)。日志用的日志存儲器量 例如從維修終端進行指定。
      圖19是說明重新啟動處理250的圖。圖20是流程圖。以下,使用這些附
      26圖,對副存儲系統(tǒng)100B的主適配器B利用日志,來執(zhí)行數(shù)據(jù)更新之操作進行 說明。重新啟動處理250也可以是副存儲系統(tǒng)100B的盤適配器12(H丸行處理。
      (1) 主適配器B,調(diào)查組編號B的組狀態(tài)是否為"正常,,(步驟2010)。在步驟 2010的調(diào)查中,在組狀態(tài)為"正常"以外,例如"故障"的情況下,結(jié)束重新啟動 處理(步驟2015)。
      (2) 在步驟2010的調(diào)查中,當(dāng)組狀態(tài)為"正常"的情況下,調(diào)查曰志邏輯巻 的巻狀態(tài)(步驟2020)。在步驟2020的調(diào)查中,在日志邏輯巻的巻狀態(tài)為"異常" 的情況下,由于不可能進行訪問,組狀態(tài)改變?yōu)?異常",并結(jié)束處理(步驟 2025)。
      (3) 在步驟2020的調(diào)查中,在日志邏輯巻的巻狀態(tài)為"正常"的情況下,調(diào) 查是否存在重新啟動對象的日志。主適配器B獲取指針信息700的更新信息 最舊地址和更新信息最新地址。當(dāng)更新信息最舊地址和更新信息最新地址相等 的情況下,由于不存在日志,因此一旦重新啟動處理結(jié)束,則會在一定時間后, 再次開始重新啟動處理(步驟2030)。
      (4) 在步驟2030的調(diào)查中,在存在重新啟動對象的日志的情況下,針對持 有最舊(最小)的更新編號之日志執(zhí)行下一個處理。持有最舊(最小)的更新編號 之日志的更新信息,從指針信息700的更新信息最舊地址開始被保存。主適配 器B,確保高速緩沖存儲器130,命令盤適配器從更新信息最舊地址開始, 將更新信息之大小信息讀入高速援沖存儲器130內(nèi)(圖19的1910)。
      盤適配器的讀寫處理,從存儲裝置150中讀出更新信息,保存于高速緩沖 存儲器130內(nèi),并通知給主適配器B(圖19的1920)。
      主適配器B接受更新信息的讀結(jié)束通知,并從更新信息中獲取寫入數(shù)據(jù) 的邏輯地址以及寫入數(shù)據(jù)的大小,確保高速緩沖存儲器130,并命令盤適配器 將寫入數(shù)據(jù)讀入高速緩沖存儲器內(nèi)(圖19的1930)。
      主適配器B的讀寫處理是從存儲裝置150中讀出寫入數(shù)據(jù),并將其保存 于高速緩沖存Y者器!30內(nèi),并通知給主適配器(步驟2040、圖19的1940)。
      (5) 主適配器B從更新信息中求出更新的副邏輯巻的邏輯地址,并命令盤 適配器將寫入數(shù)據(jù)寫入副邏輯巻內(nèi)(步驟2050,圖19的1950)。盤適配器的 讀寫處理,將lt據(jù)寫入與副邏輯巻的邏輯地址對應(yīng)的存儲裝置150內(nèi),并釋放高速緩沖存儲器130,之后,通知給主適配器(圖19的1960)。
      (6)主適配器B接受盤適配器的寫入處理結(jié)束的通知,釋放日志的存儲區(qū)。 日志的存儲區(qū)的釋放處理,將指針信息700的更新信息最舊地址變更為加上了 更新信息之大小后的數(shù)值。在最新信息最舊地址變?yōu)閷懭霐?shù)據(jù)區(qū)開始地址的情 況下,寫入數(shù)據(jù)區(qū)開始地址為O。指針信息700的寫入l史據(jù)最舊地址,變更為 加上了寫入數(shù)據(jù)之大小后的數(shù)值。當(dāng)寫入數(shù)據(jù)最舊地址變成日志邏輯巻的容量 以上的邏輯地址的情況下,減去寫入數(shù)據(jù)區(qū)開始地址而進行修正。之后,主適 配器B開始下一個重新啟動處理(步-驟2060)。
      前述重新啟動處理250,將日志從存儲裝置150讀入到高速緩沖存儲器130 內(nèi),但是,當(dāng)其存在與高速緩沖存儲器130內(nèi)的情況下,則不需要該處理。
      在所述日志讀接收處理和日志讀命令處理240中,是利用指針信息700 來決定正存儲系統(tǒng)IOOA發(fā)送的日志的,但是,也可以決定副存儲系統(tǒng)100B 發(fā)送的日志。例如,將更新編號追加到日志讀命令上。在這種情況下,在曰志 讀接收處理中,為了求出副存儲系統(tǒng)IOOB指定的更新編號的更新信息的邏輯 地址,而在正存儲系統(tǒng)IOOA的共用存儲器140內(nèi),設(shè)置了表或檢索方法,用 于從更新編號中求出存儲了更新信息之邏輯地址。
      在前述日志讀接收處理和日志讀命令處理240中,盡管使用了日志讀命 令,但是也可以使用通常的讀命令。例如,將正存儲系統(tǒng)100A的組信息600 和指針信息700預(yù)先傳送到副存儲系統(tǒng)100B內(nèi),副存儲系統(tǒng)100B讀出正存 儲系統(tǒng)100A的日志邏輯巻的數(shù)據(jù)(即日志)。
      在前述的日志讀接收處理中,是以按照更新編號的順序,將日志從正存儲 系統(tǒng)IOOA發(fā)送到副存儲系統(tǒng)100B內(nèi)的情況為例進行說明,但是,也可以不 按更新編號的順序發(fā)送。也可以將多個日志讀命令從正存儲系統(tǒng)IOOA發(fā)送到 副存儲系統(tǒng)100B內(nèi)。這種情況下,為了在重新啟動處理中按照更新編碼順序 處理日志,因此,在副存儲系統(tǒng)100B中,設(shè)置了從更新編號中求出存儲了更 新信息之邏輯地址的表或檢索方法。
      在前述本發(fā)明的數(shù)據(jù)處理系統(tǒng)中,正存儲系統(tǒng)獲取了日志,副存儲系統(tǒng)執(zhí) 行數(shù)據(jù)的復(fù)制。由此,與正存儲系統(tǒng)相連的主機,不承擔(dān)與數(shù)據(jù)復(fù)制相關(guān)的負 荷。此外,由于在正存儲系統(tǒng)和副存儲系統(tǒng)之間傳輸日志,因此,沒有使用正存儲系統(tǒng)和與正存儲系統(tǒng)相連的主機的通信線。
      圖23是顯示本發(fā)明第二實施例的邏輯結(jié)構(gòu)的圖。
      主機180和存儲系統(tǒng)100C通過連接總線190相連,存儲系統(tǒng)100C和正 存儲系統(tǒng)100A通過連接總線200相連,正存儲系統(tǒng)100A和副存儲系統(tǒng)100B 通過連接總線200而連接構(gòu)成。存儲系統(tǒng)100C,在對存儲系統(tǒng)100C的邏輯巻 (ORGl)執(zhí)行數(shù)據(jù)更新時,執(zhí)行邏輯巻(ORGl)的數(shù)據(jù)更新和正存儲系統(tǒng)100A 內(nèi)的邏輯巻(DATA1)的數(shù)據(jù)更新。
      正存儲系統(tǒng)100A,如第一實施中所說明的那樣,在對正邏輯巻(DATA1) 進行數(shù)據(jù)更新時,還利用前述的命令接收處理210和讀寫處理220,而在日志 邏輯巻(JNL1)內(nèi)執(zhí)行日志的保存(2310)。
      副存儲系統(tǒng)IOOB,利用前述的日志讀處理240,從正存儲系統(tǒng)100A中讀 出日志,利用讀寫處理220,將日志保存到日志邏輯巻(JNL2)內(nèi)(2320)。
      正存儲系統(tǒng)IOOA在接收到從副存儲系統(tǒng)100B中讀出日志的命令后,利 用命令接收處理210和讀寫處理220,從日志邏輯巻(JNL1)中讀出日志,并將 其傳送給副存儲系統(tǒng)100B(2320)。
      副存儲系統(tǒng)100B利用前述的重新啟動處理250和讀寫處理220,按照更 新編號,從日志邏輯巻(JNL2)中讀出日志,并更新作為正邏輯巻(DATA1)之副 本的副邏輯巻(COPYl)的數(shù)據(jù)(2330)。如此,由于按照更新編號的順序來更新 數(shù)據(jù),因此能夠確保邏輯巻之間的數(shù)據(jù)的一致性。
      在前述的本發(fā)明的數(shù)據(jù)處理系統(tǒng)中,正存儲系統(tǒng)獲取日志,并將其存儲于 曰志專用的存儲區(qū)內(nèi)。另外,副存儲系統(tǒng)將從正存儲系統(tǒng)中接收的日志存儲在 日志專用的存儲區(qū)內(nèi)。日志專用的存儲區(qū)可能比數(shù)據(jù)復(fù)制對象的存儲區(qū)更少, 但利用這更少的存儲容量,能夠在副存儲系統(tǒng)中,實現(xiàn)正存儲系統(tǒng)的凄史據(jù)的復(fù) 制。
      圖24是顯示第三實施例的邏輯結(jié)構(gòu)的圖。
      主機180和存儲系統(tǒng)100C通過連接總線190進行連接,存儲系統(tǒng)100C 和正存儲系統(tǒng)100A通過連接總線200進行連接,正存儲系統(tǒng)100A和副存儲 系統(tǒng)100B通過連接總線200連接而構(gòu)成。存儲系統(tǒng)100C就像是在已有技術(shù) 中說明的那樣,在執(zhí)行對存儲系統(tǒng)IOOC的邏輯巻(ORGI)的數(shù)據(jù)更新時,執(zhí)行邏輯巻(ORGl)的數(shù)據(jù)更新和正存儲系統(tǒng)100A的邏輯巻(DATAl)的凄t據(jù)更新。
      正存儲系統(tǒng)100A是以相對于存儲系統(tǒng)100C的、具有正邏輯巻(DATA1) 的方式顯現(xiàn)的,但是實際的存儲區(qū),即存儲裝置150并沒有分割。例如,在巻 信息400的物理地址中,設(shè)定了顯示沒有分割存儲裝置150的數(shù)值。正存儲系 統(tǒng)IOOA,在從存儲系統(tǒng)IOOC到正邏輯巻(DATAI)的數(shù)據(jù)的寫入命令接收時, 不執(zhí)行前述的命令接收處理210內(nèi)的步驟1270的處理,而僅僅在日志邏輯巻 (JNL1)中執(zhí)行日志的保存(2410)。
      副存儲系統(tǒng)100B通過所述日志讀處理240,從正存儲系統(tǒng)100A中讀出 日志,并利用讀寫處理220,將日志保存于日志邏輯巻(JNL2)內(nèi)(2420)。
      正存儲系統(tǒng)100A,在從副存儲系統(tǒng)100B接收了讀出如之的命令之后, 利用命令接收處理210和讀寫處理220,從日志邏輯巻(JNL1)中讀出日志,并 將其發(fā)送到存儲系統(tǒng)100B內(nèi)(2420)。
      副存儲系統(tǒng)100B,利用所述重新啟動處理250和讀寫處理220,根據(jù)更 新編號,從日志邏輯巻(JNL2)中讀出日志,并更新作為邏輯巻(0RG1)之副本 的副邏輯巻(COPYl)的數(shù)據(jù)(2430)。這樣,由于按照跟新編號的順序來更新數(shù) 據(jù),因此,可能保持邏輯巻間的數(shù)據(jù)的一致性。
      在前述的本發(fā)明的數(shù)據(jù)處理系統(tǒng)中,在存儲系統(tǒng)100C,或者與存儲系統(tǒng) IOOC相連的主機180中產(chǎn)生故障的情況下,由于對副存儲系統(tǒng)100B的邏輯巻 (COPYl),反映了正存儲系統(tǒng)100A內(nèi)的日志(JNL1),因此,利用與存儲系統(tǒng) 100B相連的主機,可以執(zhí)行最新數(shù)據(jù)的對照、更新。此外,通過在正存儲系 統(tǒng)100A內(nèi)不保持數(shù)據(jù)副本,而僅僅存儲日志,從而可使數(shù)據(jù)復(fù)制中所需的存 儲容量減少。
      以上,是基于實施例的形式來具體說明本發(fā)明的發(fā)明人所作出的發(fā)明,但 是,本發(fā)明并不僅僅限于實施例例,在不脫離其主旨的范圍內(nèi),也可以有各種 改變。
      (發(fā)明效果)
      根據(jù)本發(fā)明,能夠提供這樣一種存儲系統(tǒng)不對存儲系統(tǒng)的上一級計算機 施加影響,而可以在多個存儲系統(tǒng)間執(zhí)行數(shù)據(jù)傳輸或數(shù)據(jù)復(fù)制。此外,能夠提 供對存儲系統(tǒng)和計算機之間的通信也不施加影響的存儲系統(tǒng)。此外,根據(jù)本發(fā)明,能夠減少在多個存儲系統(tǒng)內(nèi)保持的數(shù)據(jù)存儲區(qū)。又, 能夠以不對多個存儲系統(tǒng)的上一級計算機的業(yè)務(wù)施加影響的方式,高速且有效 地在多個存儲系統(tǒng)之間執(zhí)行數(shù)據(jù)傳輸或數(shù)據(jù)的復(fù)制。
      3權(quán)利要求
      1.一種具有正存儲系統(tǒng)和副存儲系統(tǒng)的系統(tǒng),其特征在于,所述正存儲系統(tǒng)具有與從外部裝置進行訪問的正邏輯卷和第一邏輯卷相對應(yīng)的多個第一盤驅(qū)動器;以及保存應(yīng)從所述正存儲系統(tǒng)發(fā)送到所述副存儲系統(tǒng)的數(shù)據(jù)的第一高速緩沖存儲器,該數(shù)據(jù)是從所述外部裝置對所述正邏輯卷發(fā)送的數(shù)據(jù),所述第一邏輯卷用于當(dāng)保存在所述第一高速緩沖存儲器中的數(shù)據(jù)的量達到由用戶指定的量之后、存儲從所述外部裝置發(fā)送的數(shù)據(jù),所述副存儲系統(tǒng)具有保存從所述正存儲系統(tǒng)發(fā)送的數(shù)據(jù)的第二高速緩沖存儲器;以及與第二邏輯卷和副邏輯卷相對應(yīng)的多個第二盤驅(qū)動器,該第二邏輯卷用于當(dāng)保存在所述第二高速緩沖存儲器中的數(shù)據(jù)的量達到由用戶指定的量之后、存儲從所述正存儲系統(tǒng)發(fā)送的數(shù)據(jù),該副邏輯卷是與所述正邏輯卷之間具有對關(guān)系的邏輯卷,并且該副邏輯卷是存儲從所述第二邏輯卷讀出的數(shù)據(jù)的邏輯卷。
      2. 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述正存儲系統(tǒng)經(jīng)由多個連接線路向所述副存儲系統(tǒng)發(fā)送所述第一高速 緩沖存儲器或者所述第一邏輯巻中存儲的數(shù)據(jù)。
      3. 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,連接所述外部裝置和所述正存儲系統(tǒng)的路徑與連接所述正存儲系統(tǒng)和所 述副存儲系統(tǒng)的路徑是不同的路徑。
      4. 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,關(guān)于所述第一高速緩沖存儲器的、由所述用戶指定的量,是由用戶經(jīng)由與 所述正存儲系統(tǒng)通信的計算機而指定的量,關(guān)于所述第二高速緩沖存儲器的、由所述用戶指定的量,是由用戶經(jīng)由與 所述副存儲系統(tǒng)通信的計算機而指定的量。
      5. 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于, 所述正邏輯巻為多個,并具有正邏輯巻A和正邏輯巻B,所述副邏輯巻為多個,并具有與所述正邏輯巻A之間具有對關(guān)系的副邏 輯巻A、以及與所述正邏輯巻B之間具有對關(guān)系的副邏輯巻B,將所述第一邏輯巻分配給用于維持所述正邏輯巻A與所述正邏輯巻B之 間的一致性的組,該組至少包含所述正邏輯巻A和所述正邏輯巻B,將所述第二邏輯巻分配給用于維持所述副邏輯巻A與所述副邏輯巻B之 間的一致性的組,該組至少包含所述副邏輯巻A和所述副邏輯巻B。
      6. 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述副存儲系統(tǒng)進行如下控制根據(jù)在所述第一高速緩沖存儲器和所述第 一邏輯巻中存儲的數(shù)據(jù)的量,來決定從所述正存儲系統(tǒng)向所述副存儲系統(tǒng)發(fā)送 在所述第一高速緩沖存儲器或所述第一邏輯巻中存儲的數(shù)據(jù)的時間間隔。
      7. 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述副存儲系統(tǒng)進行如下控制根據(jù)在所述正存儲系統(tǒng)與所述副存儲系統(tǒng) 之間收發(fā)的數(shù)據(jù)的通信量,來決定從所述正存儲系統(tǒng)向所述副存儲系統(tǒng)發(fā)送在 所述第 一高速緩沖存儲器或所述第 一邏輯巻中存儲的數(shù)據(jù)的時間間隔。
      8. 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述副存儲系統(tǒng)進行如下控制根據(jù)所述副存儲系統(tǒng)自身的處理負荷,來 決定從所述正存儲系統(tǒng)向所述副存儲系統(tǒng)發(fā)送在所述第一高速緩沖存儲器或 所述第一邏輯巻中存儲的數(shù)據(jù)的時間間隔。
      9. 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于, 所述正存儲系統(tǒng)擁有關(guān)于所述第 一邏輯巻的管理信息, 所述副存儲系統(tǒng)進行如下控制從所述正存儲系統(tǒng)讀出所述正存儲系統(tǒng)所擁有的關(guān)于所述第一邏輯巻的管理信息,才艮據(jù)所述讀出的管理信息,來決定,人 所述正存儲系統(tǒng)向所述副存儲系統(tǒng)發(fā)送在所述第一高速緩沖存儲器或所述第 一邏輯巻中存儲的翁:據(jù)的時間間隔。
      10. 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述副存儲系統(tǒng)對所述正存儲系統(tǒng)發(fā)送指令,該指令請求發(fā)送在所述第一 邏輯巻中存儲的數(shù)據(jù)以及與所述數(shù)據(jù)有關(guān)的順序信息,所述正存儲系統(tǒng)根據(jù)所述指令對所述副存儲系統(tǒng)發(fā)送在所述第 一邏輯巻 中存儲的數(shù)據(jù)以及與所述數(shù)據(jù)有關(guān)的順序信息。
      11. 一種系統(tǒng),其特征在于,該系統(tǒng)具有正存儲系統(tǒng)和副存儲系統(tǒng),所述正存儲系統(tǒng)具有保存發(fā)送到副存儲系統(tǒng)的復(fù)制數(shù)據(jù)的第一高速緩沖存儲器,該復(fù)制數(shù)據(jù)是 從主計算機發(fā)送的數(shù)據(jù)的復(fù)制數(shù)據(jù);以及與正邏輯巻和第一邏輯巻相對應(yīng)的多個第一盤驅(qū)動器,該正邏輯巻是從外 部裝置進行訪問的對象,該正邏輯巻存儲從所述主計算才幾發(fā)送的數(shù)據(jù),該第一 邏輯巻用于當(dāng)所述第一高速緩沖存儲器中保存的數(shù)據(jù)的量達到由用戶指定的 量之后存儲數(shù)據(jù),所述副存儲系統(tǒng)具有保存從所述正存儲系統(tǒng)發(fā)送的數(shù)據(jù)的第二高速緩沖存儲器;以及 與第二邏輯巻和副邏輯巻相對應(yīng)的多個第二盤驅(qū)動器,該第二邏輯巻用于 當(dāng)所述第二高速緩沖存儲器中保存的數(shù)據(jù)的量達到由用戶指定的量之后存儲 數(shù)據(jù),該副邏輯巻是與所述正邏輯巻之間具有對關(guān)系的邏輯巻,該副邏輯巻存 儲從所述第二邏輯巻讀出的數(shù)據(jù)。
      12. —種與副存儲系統(tǒng)相連接的正存儲系統(tǒng),其特征在于, 該正存儲系統(tǒng)具有多個盤驅(qū)動器和高速緩沖存儲器,所述多個盤驅(qū)動器與正邏輯巻和第一邏輯巻相對應(yīng),該正邏輯巻與所述副 存儲系統(tǒng)所具有的副邏輯巻具有對關(guān)系,所述高速緩沖存儲器保存根據(jù)所述對關(guān)系應(yīng)發(fā)送到所述副存儲系統(tǒng)的復(fù) 制數(shù)據(jù),該復(fù)制數(shù)據(jù)是從主計算機向所述正邏輯巻發(fā)送的數(shù)據(jù)的復(fù)制數(shù)據(jù),所述第一邏輯巻用于當(dāng)保存在所述高速緩沖存儲器中的所述復(fù)制數(shù)據(jù)的 量達到由用戶指定的量之后、存儲根據(jù)所述對關(guān)系應(yīng)發(fā)送到所述副存儲系統(tǒng)的 復(fù)制數(shù)據(jù),該復(fù)制數(shù)據(jù)是從所述主計算機向所述正邏輯巻發(fā)送的數(shù)據(jù)的復(fù)制數(shù) 據(jù)。
      13. —種與正存儲系統(tǒng)相連接的副存儲系統(tǒng),其特征在于, 該副存儲系統(tǒng)具有多個盤驅(qū)動器和高速緩沖存儲器,所述多個盤驅(qū)動器與副邏輯巻和第二邏輯巻相對應(yīng),該副邏輯巻與所述正 存儲系統(tǒng)所具有的正邏輯巻具有對關(guān)系,所述高速緩沖存儲器保存根據(jù)所述對關(guān)系從所述正存儲系統(tǒng)發(fā)送來的復(fù)制數(shù)據(jù),該復(fù)制數(shù)據(jù)是從主計算機向所述正邏輯巻發(fā)送的數(shù)據(jù)的復(fù)制數(shù)據(jù),所述第二邏輯巻用于當(dāng)保存在所述高速緩沖存儲器中的所述復(fù)制數(shù)據(jù)的量達到由用戶指定的量之后、存儲根據(jù)所述對關(guān)系從所述正存儲系統(tǒng)發(fā)送來的 復(fù)制數(shù)據(jù),該復(fù)制數(shù)據(jù)是從所述主計算機向所述正邏輯巻發(fā)送的數(shù)據(jù)的復(fù)制數(shù) 據(jù),所述副邏輯巻存儲從所述第二邏輯巻讀出的數(shù)據(jù)。
      全文摘要
      本發(fā)明涉及具有正存儲系統(tǒng)和副存儲系統(tǒng)的存儲系統(tǒng)。正存儲系統(tǒng)具有與從外部裝置進行訪問的正邏輯卷和第一邏輯卷相對應(yīng)的多個第一盤驅(qū)動器;保存應(yīng)從正存儲系統(tǒng)發(fā)送到副存儲系統(tǒng)的數(shù)據(jù)的第一高速緩沖存儲器,該數(shù)據(jù)是從外部裝置對正邏輯卷發(fā)送的數(shù)據(jù)。副存儲系統(tǒng)具有保存從正存儲系統(tǒng)發(fā)送的數(shù)據(jù)的第二高速緩沖存儲器;與第二邏輯卷和副邏輯卷相對應(yīng)的多個第二盤驅(qū)動器,該第二邏輯卷用于當(dāng)保存在第二高速緩沖存儲器中的數(shù)據(jù)的量達到由用戶指定的量之后、存儲從正存儲系統(tǒng)發(fā)送的數(shù)據(jù),該副邏輯卷是與正邏輯卷之間具有對關(guān)系的邏輯卷,并且該副邏輯卷是存儲從第二邏輯卷讀出的數(shù)據(jù)的邏輯卷。
      文檔編號G06F3/06GK101655813SQ20091017158
      公開日2010年2月24日 申請日期2004年6月24日 優(yōu)先權(quán)日2003年6月27日
      發(fā)明者佐藤孝夫, 平川裕介, 武田貴彥, 荒川敬史 申請人:株式會社日立制作所
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1