專利名稱:收集轉(zhuǎn)儲數(shù)據(jù)的設(shè)備和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及恢復(fù)數(shù)據(jù)的系統(tǒng)、設(shè)備和方法,更具體地,涉及收集轉(zhuǎn)儲 數(shù)據(jù)的系統(tǒng)、設(shè)備和方法。
背景技術(shù):
轉(zhuǎn)儲數(shù)據(jù)(dump data )通常包括在處理餘溪或故障時位于數(shù)字系統(tǒng)的 易失性存儲器(例如存儲控制器)中的數(shù)據(jù)。在評價數(shù)字系統(tǒng)的性能時, 轉(zhuǎn)儲數(shù)據(jù)是很重要的。轉(zhuǎn)儲數(shù)據(jù)可以直接與數(shù)字系統(tǒng)的一個或多個硬件和/ 或軟件組件的性能關(guān)聯(lián)。雖然轉(zhuǎn)儲數(shù)據(jù)的價值是顯然的,但當前收集轉(zhuǎn)儲 數(shù)據(jù)的方法包含某些缺陷。例如,很多轉(zhuǎn)儲數(shù)據(jù)收集方法包括不方便地重啟數(shù)字系統(tǒng),這通常稱 為熱啟動(warmstart)。熱啟動可以有效的收集轉(zhuǎn)儲數(shù)據(jù),因為熱啟動中 止掃描循環(huán)(也稱為事件循環(huán)或工作調(diào)度程序)的操作,以確保在易失性 存儲器的數(shù)據(jù)被收集之前不會改變。除了需要時間之外,熱啟動數(shù)字設(shè)備 經(jīng)常會導致向關(guān)聯(lián)的主機發(fā)送存儲控制器忙碌信號,從而中止系統(tǒng)操作。 在包括多個主機、存儲控制器和存儲設(shè)備的系統(tǒng)中中止系統(tǒng)操作是很嚴重 的。發(fā)明內(nèi)容根據(jù)相關(guān)技術(shù)的當前狀況,具體地,根據(jù)現(xiàn)有技術(shù)中通過目前可用的 故障數(shù)據(jù)收集方法無法完全解決的問題和需求,提出本發(fā)明。因此,提出 本發(fā)明以提供收集轉(zhuǎn)儲數(shù)據(jù)的設(shè)備,系統(tǒng)和方法。在本發(fā)明的一個方面,轉(zhuǎn)儲數(shù)據(jù)收集系統(tǒng)包括與存儲控制器通信的一個或多個主機,存儲控制器依次與存儲設(shè)備通信。每個存儲控制器可以接收按需數(shù)據(jù)(ODD)的轉(zhuǎn)儲請求,暫停一個或多個存儲控制器掃描循環(huán), 將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間,解除對掃描循環(huán)的暫停,并從 ODD轉(zhuǎn)儲緩沖器空間將轉(zhuǎn)儲數(shù)據(jù)卸栽到存儲設(shè)備。在本發(fā)明的另一個方面,轉(zhuǎn)儲數(shù)據(jù)收集設(shè)備包括通信模塊,接收按 需數(shù)據(jù)(ODD)轉(zhuǎn)儲請求;掃描循環(huán)管理模塊,響應(yīng)于ODD轉(zhuǎn)儲請求暫 停一個或多個掃描循環(huán);和轉(zhuǎn)儲數(shù)據(jù)傳輸模塊,將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD 轉(zhuǎn)儲緩沖器空間。該掃描循環(huán)管理模塊還可以解除對掃描循環(huán)的暫停,以 使得掃描循環(huán)恢復(fù)正常操作,該轉(zhuǎn)儲數(shù)據(jù)傳輸模塊可以從ODD轉(zhuǎn)儲緩沖 器空間將轉(zhuǎn)儲數(shù)據(jù)卸載到存儲設(shè)備。在特定實施例中,掃描循環(huán)管理模塊可以暫停一個或多個掃描循環(huán), 啟動掃描循環(huán)暫停定時器,在該掃描循環(huán)定時器到期之前嘗試暫停任意剩 余的掃描循環(huán),如果在掃描循環(huán)暫停定時器到期之前并非所有掃描循環(huán),皮 暫停,則解除對所有掃描循環(huán)的暫停。在特定實施例中,掃描循環(huán)管理才莫 塊還可以在休止定時器到期時重新嘗試暫停所有的掃描循環(huán)并重新啟動掃 描循環(huán)暫停定時器。在特定實施例中,該設(shè)備還包括轉(zhuǎn)儲數(shù)據(jù)優(yōu)先級模塊,在將轉(zhuǎn)儲數(shù)據(jù) 傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間之前為轉(zhuǎn)儲數(shù)據(jù)設(shè)置優(yōu)先級。在特定實施例 中,該轉(zhuǎn)儲數(shù)據(jù)優(yōu)先級模塊進一步被配置為實時注冊和注銷-現(xiàn)圖轉(zhuǎn)儲數(shù)據(jù) 以便于轉(zhuǎn)儲數(shù)據(jù)的優(yōu)先級設(shè)置。在特定實施例中,設(shè)備包括負載平衡模塊, 在多個處理線程間平衡轉(zhuǎn)儲數(shù)據(jù),所述多個處理線程同時將轉(zhuǎn)儲數(shù)據(jù)傳輸 到該ODD轉(zhuǎn)儲緩沖器空間的不同段中。在特定實施例中,轉(zhuǎn)儲數(shù)據(jù)傳輸模塊還將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn)儲 緩沖器空間,直到轉(zhuǎn)儲數(shù)據(jù)傳輸定時器到期為止。在特定實施例中,掃描 循環(huán)管理模塊還重新開始對掃描循環(huán)的正常處理而不管未完成的數(shù)據(jù)轉(zhuǎn) 儲。在特定實施例中,該設(shè)備包括卸載調(diào)度模塊,其調(diào)度從ODD轉(zhuǎn)儲緩 沖器到存儲器對轉(zhuǎn)儲數(shù)據(jù)的卸載,以達到最大性能。本發(fā)明還提出了用于收集轉(zhuǎn)儲數(shù)據(jù)的方法。已公開實施例中的方法實質(zhì)上包括實現(xiàn)關(guān)于所述系統(tǒng)和i殳備的上述功能的必要^Mt。在一個實施例中,該方法包括接收基于按需數(shù)據(jù)(ODD)轉(zhuǎn)儲請求,暫停一個或多個 掃描循環(huán),將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間,解除對所述掃描循 環(huán)的暫停,并將轉(zhuǎn)儲數(shù)據(jù)從ODD轉(zhuǎn)儲緩沖器空間卸載到存儲器。而且,本發(fā)明的所述特征,優(yōu)點和特性可以在一個或多個實施例中以 任何合適的方式組合起來。相關(guān)領(lǐng)域的技術(shù)人員可以意識到無需特定實施 例的一個或多個具體特性或優(yōu)點就可以實現(xiàn)本發(fā)明。在其它例子中,在本 發(fā)明的所有實施例中沒有提及的額外的特征和優(yōu)點可以在特定實施例中被 意識到。本發(fā)明的這些特征和優(yōu)點在下面的說明書和附加的權(quán)利要求中可 以變得更加明顯,也可以通過如下文所述的本發(fā)明的實現(xiàn)方式來獲得。
為了使本發(fā)明的優(yōu)點容易理解,將參考由附圖示出的特定實施例來對 上述簡要描述的本發(fā)明進行更詳細的說明??梢岳斫獾氖沁@些附圖僅^U t 本發(fā)明的一般實施例進行描述,不能因此而認為它們對本發(fā)明的范圍進行 限制,通過使用下列附圖對本發(fā)明的特征及細節(jié)進行描述及解釋圖1是根據(jù)本發(fā)明的轉(zhuǎn)儲數(shù)據(jù)收集系統(tǒng)的一個實施例的示意性框圖。 圖2是根據(jù)本發(fā)明的存儲控制器的一個實施例的示意性框圖。 圖3是根據(jù)本發(fā)明的轉(zhuǎn)儲數(shù)據(jù)收集方法的一個實施例的流程圖。 圖4是才艮據(jù)本發(fā)明的暫停一個或多個掃描循環(huán)的方法的一個實施例的 流程圖。圖5是根據(jù)本發(fā)明的優(yōu)先化轉(zhuǎn)儲數(shù)據(jù)方法的一個實施例的流程圖。 圖6是根據(jù)本發(fā)明的轉(zhuǎn)儲數(shù)據(jù)收集系統(tǒng)的一個實施例的示意性框圖。將此說明書中描述的許多功能性單元標記為模塊,從而更具體地強調(diào) 它們實現(xiàn)的獨立性。例如,模塊可以作為硬件電路實現(xiàn),所述硬件電路包 括傳統(tǒng)VLSI電路或門陣列、成品半導體(例如邏輯芯片、晶體管或其他離散組件)。模塊也可以在可編程硬件設(shè)備(例如現(xiàn)場可編程門陣列、可 編程陣列邏輯、可編程邏輯設(shè)備等)中實現(xiàn)。模塊也可以由多種類型處理器可以執(zhí)行的軟件來實現(xiàn)。例如,可執(zhí)行 代碼的識別才莫塊可以包括計算機指令的一個或多個物理塊或邏輯塊,這些 計算機指令例如可組織成對象、過程或函數(shù)。不過,識別模塊的可執(zhí)行文 件不必物理地位于一起,但可以包括存儲于不同位置的不同指令,當它們 邏輯地連在一起時,可組成模塊以及實現(xiàn)模塊的特定目的。當然,可執(zhí)行代碼的模塊可以是單個指令或多個指令,甚至可以被分 配到幾個不同的代碼段,分配到不同程序中,分配到不同處理器中,以及 分配在幾個存儲設(shè)備之間。同樣地,在這里,運算數(shù)據(jù)可以在模塊中識別 和示出,可以具體化為任何合適的形式并在任何合適類型的數(shù)據(jù)結(jié)構(gòu)中被 組織。運算數(shù)據(jù)可以收集為單獨的數(shù)據(jù)集,或被分配到包括不同存儲設(shè)備 的不同位置,并且可至少部分地僅僅作為系統(tǒng)或網(wǎng)絡(luò)上的電子信號存在。在本說明書中的"一個實施例","實施例"或類似術(shù)語表示關(guān)于該 實施例所述的特定特征、結(jié)構(gòu)或特性被包含于本發(fā)明的至少一個實施例中。 因此,在本說明書中出現(xiàn)的術(shù)語"在一個實施例中","在實施例中"及 類似術(shù)語,可以但不是必須指示同一個實施例。對于計算機可讀介質(zhì)的引用可以采用在數(shù)字處理設(shè)備上能夠產(chǎn)生信號、促使產(chǎn)生信號或促使執(zhí)行機器可讀指令的程序的任何形式。計算機可讀介質(zhì)具體化為傳輸線、壓縮盤、數(shù)字視頻磁盤、磁帶、伯努利(Bernoulli) 驅(qū)動器、全息磁盤或磁帶、穿孔卡、閃存、磁阻存儲器、集成電路或其它 數(shù)字處理設(shè)備存儲器裝置。而且,在一個或多個實施例中本發(fā)明所述的特征、結(jié)構(gòu)或特性可以以 任何合適的方式組合。然而,相關(guān)領(lǐng)域的技術(shù)人員會意識到?jīng)]有一個或多 個細節(jié),或利用其他方法,組件,材料等等均可實現(xiàn)本發(fā)明。在其它情況 下,沒有詳細示出或說明已知的結(jié)構(gòu)、材料或^作,以避免混淆本發(fā)明的 特征。圖1是根據(jù)本發(fā)明的轉(zhuǎn)儲數(shù)據(jù)收集系統(tǒng)100的一個實施例的示意性框圖。所述系統(tǒng)100包括主機110、存儲控制器120和數(shù)據(jù)存儲設(shè)備130。系 統(tǒng)100的各部件配合收集轉(zhuǎn)儲數(shù)據(jù)。在特定實施例中,主機100通過存儲控制器120與存儲設(shè)備130通信 并執(zhí)行與存儲設(shè)備130相應(yīng)的輸^/輸出操作。在特定實施例中,存儲控制 器120接收按需(on demand)數(shù)據(jù)(ODD)轉(zhuǎn)儲請求。響應(yīng)ODD轉(zhuǎn)儲 請求,存儲控制器120可以暫停任何存儲控制器掃描循環(huán),以確保不改變 位于存儲控制器120的非易失存儲器中的數(shù)據(jù)。在特定實施例中,存儲控制器120將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn)儲緩沖 器空間(參見圖2),從而解除對掃描循環(huán)的暫停以執(zhí)行正常操作。存儲 控制器120可以從ODD轉(zhuǎn)儲緩沖器空間將轉(zhuǎn)儲數(shù)據(jù)卸載到存儲設(shè)備130 用于長期存儲和分析。由此,存儲控制器200的各部件配合收集并存儲轉(zhuǎn) 儲數(shù)據(jù),而沒有實質(zhì)降低正常存儲控制器的處理性能。圖2是才艮據(jù)本發(fā)明的存儲控制器200的一個實施例的示意性框圖。所 述的存儲控制器200包括通信模塊210、掃描循環(huán)管理模塊220、轉(zhuǎn)儲數(shù)據(jù) 優(yōu)先^^莫塊230、負載平衡模塊240、轉(zhuǎn)儲數(shù)據(jù)傳輸模塊250、按需數(shù)據(jù)轉(zhuǎn) 儲緩沖器空間260、卸載調(diào)度模塊270和轉(zhuǎn)儲數(shù)據(jù)卸載^=莫塊280。在特定實 施例中,存儲控制器200對應(yīng)于圖1中的存儲控制器120。在特定實施例中,通信模塊210接收ODD轉(zhuǎn)儲請求。ODD轉(zhuǎn)儲請求 可以來自于例如用戶/操作者、主機110、對等(companion)存儲控制器 (參見圖6)等多個來源,或者可由存儲控制器120檢測到的所選擇的內(nèi)部 事件所觸發(fā)。響應(yīng)ODD轉(zhuǎn)#*求,掃描循環(huán)模塊220可以暫停任何存儲 控制器中的掃描循環(huán)操作以保護轉(zhuǎn)儲數(shù)據(jù)的完整性。對圖4的說明提供了 關(guān)于暫停掃描循環(huán)的具體討論。在特定實施例中,轉(zhuǎn)儲數(shù)據(jù)可以包括在 ODD轉(zhuǎn)儲請求期間位于存儲控制器200的易失性存儲器中的任意或所有數(shù) 據(jù)。在特定實施例中,轉(zhuǎn)儲數(shù)據(jù)優(yōu)先 塊230對轉(zhuǎn)儲數(shù)據(jù)設(shè)置優(yōu)先級。 對轉(zhuǎn)儲數(shù)據(jù)設(shè)置優(yōu)先級確保首先將最高優(yōu)先級的轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn) 儲緩沖器空間260。對圖5的說明提供了對轉(zhuǎn)儲數(shù)據(jù)設(shè)置優(yōu)先級的具體細節(jié)。負載平衡模塊240可以在多個處理線程間平衡要傳輸?shù)絆DD轉(zhuǎn)儲緩 沖器空間260的轉(zhuǎn)儲數(shù)據(jù),以將要到達ODD轉(zhuǎn)儲緩沖器空間260的轉(zhuǎn)儲 數(shù)據(jù)的有效傳輸最大化。轉(zhuǎn)儲數(shù)據(jù)傳輸模塊250可以將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)?ODD轉(zhuǎn)儲緩沖器空間260。在特定實施例中,轉(zhuǎn)儲數(shù)據(jù)傳輸模塊250將轉(zhuǎn) 儲數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間260,直到轉(zhuǎn)儲數(shù)據(jù)傳輸定時器到期為 止,以確保掃描循環(huán)不會暫停不期望的太長時間。ODD轉(zhuǎn)儲緩沖器空間260可以包括用于臨時存儲轉(zhuǎn)儲數(shù)據(jù)的易失性存 儲器的選擇巻。由于轉(zhuǎn)儲數(shù)據(jù)已經(jīng)傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間260,所以 掃描循環(huán)管理模塊220可以解除對掃描循環(huán)的暫停和/或重啟掃描循環(huán),以 使得循環(huán)掃描恢復(fù)正常操作。提供ODD轉(zhuǎn)儲緩沖器空間260能夠?qū)εR時 存儲的轉(zhuǎn)儲數(shù)據(jù)進行有效的重新分配,并確保在不會被轉(zhuǎn)儲數(shù)據(jù)卸載模塊 280改變的情況下將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)椒且资Т鎯ζ鳌P遁d調(diào)度才莫塊270可 以以存儲控制器200性能的最小負荷來調(diào)度將轉(zhuǎn)儲數(shù)據(jù)向存儲器的傳輸。 同樣地,本發(fā)明提供了執(zhí)行按需數(shù)據(jù)(ODD)轉(zhuǎn)儲的有效解決方法。圖3是根據(jù)本發(fā)明的轉(zhuǎn)儲數(shù)據(jù)收集方法300的一個實施例的流程圖。 所述方法300包括以下操作接收ODD轉(zhuǎn)儲請求310,暫停掃描循環(huán)320, 設(shè)置轉(zhuǎn)儲數(shù)據(jù)優(yōu)先級330,負載平衡轉(zhuǎn)儲數(shù)據(jù)340,將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD 轉(zhuǎn)儲緩沖器空間350,解除對掃描循環(huán)的暫停360,調(diào)度轉(zhuǎn)儲數(shù)據(jù)的卸載 370,以及卸載轉(zhuǎn)儲數(shù)據(jù)380。方法300的操作可以配合,以有效地收集非 易失存儲器的轉(zhuǎn)儲數(shù)據(jù)。接收ODD轉(zhuǎn)儲請求310可以包括從主機或存儲控制器操作者接收 ODD轉(zhuǎn)儲請求。暫停掃描循環(huán)320可以包括暫停與存儲控制器相關(guān)聯(lián)的一 個或多個掃描循環(huán),從而不改變位于易失性存儲器中的數(shù)據(jù)。設(shè)置轉(zhuǎn)儲數(shù) 據(jù)優(yōu)先級330可以包括根據(jù)所選的優(yōu)先級設(shè)置指令對易失性存儲器巻中的 數(shù)據(jù)設(shè)置優(yōu)先級,以確保首先將最高優(yōu)先級的數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn)儲緩沖 器空間。負載平衡轉(zhuǎn)儲數(shù)據(jù)340可以包括在任意或所有處理線程間平衡將 要傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間的轉(zhuǎn)儲數(shù)據(jù),以最大化有效數(shù)據(jù)傳輸。將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間350可以包括在轉(zhuǎn)儲數(shù)據(jù)傳輸定時器的持續(xù)時間內(nèi),將轉(zhuǎn)儲數(shù)據(jù)從為更通用而指定的易失性存儲器傳 輸?shù)阶鳛檗D(zhuǎn)儲數(shù)據(jù)緩沖器運行而指定的所選易失性存儲器巻。在特定實施 例中,提供轉(zhuǎn)儲數(shù)據(jù)傳輸定時器可以確保存儲控制器在可接受的時間段內(nèi) 返回到正常操作條件。解除對掃描循環(huán)的暫停360可以包括使得掃描循環(huán)重啟或恢復(fù)正常操 作。調(diào)度轉(zhuǎn)儲數(shù)據(jù)從緩沖器空間到存儲器的卸載370可以包括在存儲控制 器的正常輸^/輸出操作內(nèi)調(diào)度轉(zhuǎn)儲數(shù)據(jù)的卸載,從而少量影響或者幾乎不 影響存儲控制器的性能。卸載轉(zhuǎn)儲數(shù)據(jù)380可以包括將轉(zhuǎn)儲數(shù)據(jù)從ODD 轉(zhuǎn)儲緩沖器空間傳輸?shù)接糜诖鎯Φ姆且资源鎯ζ?。圖4是才艮據(jù)本發(fā)明的暫停一個或多個掃描循環(huán)方法400的一個實施例 的流程圖。所述方法400包括以下操作接收ODD轉(zhuǎn)儲數(shù)據(jù)請求410,暫 停第一掃描循環(huán)420,啟動掃描循環(huán)暫停定時器430,嘗試暫停任意剩余的 掃描循環(huán)435,確定任意剩余的掃描循環(huán)是否繁忙440,解除對所有掃描循 環(huán)的暫停450,啟動休止定時器455,等待休止定時器到期460,以及執(zhí)行 任意剩余的ODD轉(zhuǎn)儲操作470。方法400的操作提供了暫停多個掃描循環(huán) 的解決方法。接收ODD轉(zhuǎn)儲數(shù)據(jù)請求410可以包括從主機、操作者或存儲控制器 處接收ODD轉(zhuǎn)儲請求。暫停第一掃描循環(huán)420可以包括暫停對ODD轉(zhuǎn)儲 請求的接收進行處理的掃描循環(huán)。啟動掃描循環(huán)暫停定時器430可以包括 啟動用于嘗試暫停剩余的掃描循環(huán)的定時器。掃描循環(huán)暫停定時器可以確 保在不期望的很長時間內(nèi)系統(tǒng)不會使得對暫停剩余掃描循環(huán)的嘗試失敗。 嘗試暫停任意剩余的掃描循環(huán)435可以包括指示任意其它掃描循環(huán)中止處 理輸入/輸出請求,以保持易失性存儲器中轉(zhuǎn)儲數(shù)據(jù)的完整性。確定任意剩余的掃描循環(huán)是否忙碌440可以包括在由操作435啟動的 掃描循環(huán)暫停定時器到期時確定對暫停剩余掃描循環(huán)的嘗試是否成功。假 定至少一個剩余的掃描循環(huán)忙碌(可能是因為該掃描循環(huán)正在處理更高優(yōu) 先級的指令),解除對所有掃描循環(huán)的暫停450能使得已暫停的掃描循環(huán) 恢復(fù)正常的輸入/輸出操作。啟動休止定時器455以及等待休止定時器到期460可以包括在重新嘗 試暫停第一掃描循環(huán)等之前,在給定時間段允許掃描循環(huán)執(zhí)行正常的輸X/ 輸出操作。 一旦所有的掃描循環(huán)被成功暫停,則通過執(zhí)行如圖3所述的剩 余ODD轉(zhuǎn)儲操作470來繼續(xù)方法400。由此,本發(fā)明提供了暫停多個掃描 循環(huán)以保護易失性存儲器中轉(zhuǎn)儲數(shù)據(jù)的解決方法。圖5是根據(jù)本發(fā)明的優(yōu)先化轉(zhuǎn)儲數(shù)據(jù)方法500的一個實施例的流程圖。 所述的方法500包括以下操作確定部件的優(yōu)先級510,確定部件緩沖器 空間最小值520,確定空閑緩沖器空間530,以及確定部件緩沖器空間最大 值540。方法500的操作提供了對傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間的轉(zhuǎn)儲數(shù)據(jù) 設(shè)置優(yōu)先級的一個方法實例。確定部件的優(yōu)先級510可以包括從用戶/操作者處接收部件優(yōu)先級指 令。在特定實施例中,優(yōu)先級指令可以包括如何對一個部件相對于另一個 部件設(shè)置優(yōu)先級以及應(yīng)該如何設(shè)置對應(yīng)于每個部件的轉(zhuǎn)儲數(shù)據(jù)的優(yōu)先級。 在特定實施例中,操作者可以實時的注冊或注銷對應(yīng)于視圖(perspective) 轉(zhuǎn)儲數(shù)據(jù)的優(yōu)先級信息,以便于數(shù)據(jù)的優(yōu)先級設(shè)置,這使得開發(fā)者可以在 整個開發(fā)周期將注意力集中不同類型的轉(zhuǎn)儲數(shù)據(jù)。確定部件緩沖器空間的最小值520可以包括確定任意部件是否被分配 了超于所需的緩沖器空間。確定空閑緩沖器空間530可以包括確定已分配 了部件緩沖器空間最小值的緩沖器空間。在將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn)儲 緩沖器空間時根據(jù)部件的優(yōu)先級,可以將空閑的緩沖器空間動態(tài)地分配給 另一個部件。確定部件緩沖器空間的最大值540可以包括確定緩沖器空間 的最大量,每個部件可以使用該最大量以確保不會向具有最高優(yōu)先權(quán)的部 件分配所有的空閑緩沖器空間。由此,當轉(zhuǎn)儲數(shù)據(jù)被傳輸?shù)絆DD轉(zhuǎn)儲緩存器空間時,根據(jù)操作510 確定的優(yōu)先級,首先關(guān)于部件緩沖器空間的最小值,然后關(guān)于根據(jù)部件優(yōu) 先級順序的空閑緩沖器空間以及根據(jù)該部件緩沖器空間最大值來傳輸該數(shù) 據(jù)。本領(lǐng)域的技術(shù)人員可以意識到,在特定實施例中,這種更加通用的優(yōu) 先級設(shè)置方法500可以依據(jù)ODD轉(zhuǎn)條清求的來源、ODD轉(zhuǎn)條清求的類型(用戶指定的測試情況)或由存儲控制器執(zhí)行的操作類型來改變。圖6是根據(jù)本發(fā)明的轉(zhuǎn)儲數(shù)據(jù)收集系統(tǒng)600的一個實施例的示意性框 圖。所述系統(tǒng)600包括主機610、存儲控制器620及數(shù)據(jù)存儲設(shè)備630。系 統(tǒng)600為分別對應(yīng)于圖1中主機110、存儲控制器120以及存^i殳備130 的多個主機610、多個存儲控制器620及多個存儲設(shè)備630提供了一種解 決方法。主機610可以與存儲控制器620通信并由此執(zhí)行關(guān)于數(shù)據(jù)存儲設(shè)備630 的輸入/輸出操作。存儲控制器620可以從主機610、操作者/用戶或存儲控 制器620處接收ODD轉(zhuǎn)儲請求。同樣地,存儲控制器可以存儲任一數(shù)據(jù) 存#^殳備630中的已收集的轉(zhuǎn)儲數(shù)據(jù)。以這種方式,可以用多個部件并在 局域網(wǎng)或分布式網(wǎng)絡(luò)上實施本發(fā)明。在不脫離其精神或本質(zhì)特性的情況下,本發(fā)明可以以其他特定方式實 現(xiàn)。所描述的實施例在所有方面都僅僅是示例性而非限制性的。因此,本 發(fā)明的范圍由附加的權(quán)利要求而不是前述的說明書來指明。所有落入權(quán)利 要求等價物的意義和范圍之內(nèi)的變化都包含在本發(fā)明的范圍內(nèi)。
權(quán)利要求
1.一種轉(zhuǎn)儲數(shù)據(jù)收集裝置,該裝置包括通信模塊,被配置為接收按需數(shù)據(jù)(ODD)轉(zhuǎn)儲請求;掃描循環(huán)管理模塊,被配置為響應(yīng)于接收所述ODD轉(zhuǎn)儲請求暫停至少一個掃描循環(huán),該掃描循環(huán)管理模塊進一步被配置為解除對所述至少一個掃描循環(huán)的暫停;轉(zhuǎn)儲數(shù)據(jù)傳輸模塊,被配置為將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間;以及轉(zhuǎn)儲數(shù)據(jù)卸載模塊,被配置為將轉(zhuǎn)儲數(shù)據(jù)從所述ODD轉(zhuǎn)儲緩沖器空間卸載到存儲器。
2. 如權(quán)利要求l的裝置,其中該掃描循環(huán)管理模塊進一步被配置為暫 停所述至少一個掃描循環(huán),啟動掃描循環(huán)暫停定時器,在該掃描循環(huán)暫停 定時器到期之前嘗試暫停任意剩余的掃描循環(huán),以及如果在該掃描循環(huán)暫 停定時器到期之前并非所有掃描循環(huán)被暫停,則解除對所有掃描循環(huán)的暫停。
3. 如權(quán)利要求2的裝置,其中該掃描循環(huán)管理模塊進一步被配置為在 休止定時器到期時重新嘗試暫停所有掃描循環(huán)并重新啟動該掃描循環(huán)暫停 定時器。
4. 如權(quán)利要求l的裝置,進一步包括轉(zhuǎn)儲數(shù)據(jù)優(yōu)先級模塊,被配置 為在將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)皆揙DD轉(zhuǎn)儲緩沖器空間之前為轉(zhuǎn)儲數(shù)據(jù)設(shè)置優(yōu)先 級。
5. 如權(quán)利要求4的裝置,其中該轉(zhuǎn)儲數(shù)據(jù)優(yōu)先,塊進一步被配置為 實時注冊和注銷視圖轉(zhuǎn)儲數(shù)據(jù)以便于轉(zhuǎn)儲數(shù)據(jù)的優(yōu)先級設(shè)置。
6. 如權(quán)利要求l的裝置,進一步包括負載平衡模塊,被配置為在多 個處理線程間平衡轉(zhuǎn)儲數(shù)據(jù),所述多個處理線程被配置為同時將轉(zhuǎn)儲數(shù)據(jù) 傳輸?shù)皆揙DD轉(zhuǎn)儲緩沖器空間的不同段中。
7. 如權(quán)利要求l的裝置,其中該轉(zhuǎn)儲數(shù)據(jù)傳輸模塊進一步被配置為將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)皆揙DD轉(zhuǎn)儲緩沖器空間,直到轉(zhuǎn)儲數(shù)據(jù)傳輸定時器到期為 止。
8. 如權(quán)利要求7的裝置,其中該掃描循環(huán)管理模塊進一步被配置為重 新開始對至少一個掃描循環(huán)的正常處理而不管未完成的數(shù)據(jù)轉(zhuǎn)儲。
9. 如權(quán)利要求l的裝置,進一步包括卸栽調(diào)度模塊,被配置為調(diào)度 從該ODD轉(zhuǎn)儲緩沖器空間到存儲器的對轉(zhuǎn)儲數(shù)據(jù)的卸載。
10. —種轉(zhuǎn)儲數(shù)據(jù)收集方法,其操作包括以下步驟 接收按需數(shù)據(jù)(ODD )轉(zhuǎn)儲請求; 暫停至少一個掃描循環(huán);將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間; 解除對所述至少一個掃描循環(huán)的暫停;及 將轉(zhuǎn)儲數(shù)據(jù)從該ODD轉(zhuǎn)儲緩沖器空間卸載到存儲器。
11. 如權(quán)利要求10的方法,其中暫停至少一個掃描循環(huán)的步驟包括 暫停第一掃描循環(huán),啟動掃描循環(huán)暫停定時器,在該掃描循環(huán)暫停定時器 到期之前嘗試暫停任意剩余的掃描循環(huán),以及如果在該掃描循環(huán)暫停定時 器到期之前并非所有掃描循環(huán)被暫停,則解除對所有掃描循環(huán)的暫停。
12. 如權(quán)利要求ll的方法,其中暫停至少一個掃描循環(huán)的步驟進一步 包括在休止定時器到期時重新嘗試暫停所有掃描循環(huán)并重新啟動該掃描 循環(huán)暫停定時器。
13. 如權(quán)利要求10的方法,進一步包括以下步驟在將轉(zhuǎn)儲數(shù)據(jù)傳輸 到該ODD轉(zhuǎn)儲緩沖器空間之前為轉(zhuǎn)儲數(shù)據(jù)設(shè)置優(yōu)先級。
14. 如權(quán)利要求13的方法,進一步包括以下步驟實時注冊和注銷視 圖轉(zhuǎn)儲數(shù)據(jù)以便于適當?shù)膬?yōu)先級設(shè)置。
15. 如權(quán)利要求10的方法,進一步包括以下步驟在多個處理線程間 平衡轉(zhuǎn)儲數(shù)據(jù),所述多個處理線程^皮配置為同時將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)皆揙DD 轉(zhuǎn)儲緩沖器空間的不同段中。
16. 如權(quán)利要求10的方法,其中將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空 間的步驟包括將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)皆揙DD轉(zhuǎn)儲緩沖器空間,直到轉(zhuǎn)儲數(shù)據(jù)傳輸定時器到期為止。
17. 如權(quán)利要求16的方法,進一步包括以下步驟重新開始對至少一 個掃描循環(huán)的正常處理而不管未完成的數(shù)據(jù)轉(zhuǎn)儲。
18. 如權(quán)利要求10的方法,進一步包括以下步驟調(diào)度從該ODD轉(zhuǎn)儲 緩沖器空間到存儲器的對轉(zhuǎn)儲數(shù)據(jù)的卸載。
19. 一種轉(zhuǎn)儲數(shù)據(jù)收集系統(tǒng),該系統(tǒng)包括 多個主機,3皮配置為與至少一個存儲控制器通信;以及 至少一個存儲設(shè)備,被配置為在數(shù)據(jù)承栽介質(zhì)上存儲數(shù)據(jù); 至少一個存儲控制器,被配置為接收按需數(shù)據(jù)(ODD )轉(zhuǎn)儲請求; 暫停至少一個掃描循環(huán); 將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間; 解除對所述至少一個掃描循環(huán)的暫停;及 將轉(zhuǎn)儲數(shù)據(jù)從該ODD轉(zhuǎn)儲緩沖器空間卸栽到該存儲設(shè)備。
全文摘要
一種轉(zhuǎn)儲數(shù)據(jù)收集裝置,收集過程包括,接收按需數(shù)據(jù)(ODD)轉(zhuǎn)儲請求,暫停一個或多個掃描循環(huán),將轉(zhuǎn)儲數(shù)據(jù)傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間,解除對掃描循環(huán)的暫停,并將轉(zhuǎn)儲數(shù)據(jù)從ODD轉(zhuǎn)儲緩沖器空間卸載到存儲設(shè)備。該裝置還可以為傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間的轉(zhuǎn)儲數(shù)據(jù)設(shè)置優(yōu)先級,負載平衡傳輸?shù)絆DD轉(zhuǎn)儲緩沖器空間的轉(zhuǎn)儲數(shù)據(jù),以及調(diào)度從ODD轉(zhuǎn)儲緩沖器空間到非易失性存儲器的對轉(zhuǎn)儲數(shù)據(jù)的卸載。
文檔編號G06F11/07GK101403984SQ20081017148
公開日2009年4月8日 申請日期2008年9月27日 優(yōu)先權(quán)日2007年10月1日
發(fā)明者B·D·海特菲爾德, D·W·杜威, I·R·奧爾京二世, W·G·謝爾曼 申請人:國際商業(yè)機器公司