TWI524348B - 用於複合式非揮發性儲存裝置之資料遷移 - Google Patents
用於複合式非揮發性儲存裝置之資料遷移 Download PDFInfo
- Publication number
- TWI524348B TWI524348B TW102105367A TW102105367A TWI524348B TW I524348 B TWI524348 B TW I524348B TW 102105367 A TW102105367 A TW 102105367A TW 102105367 A TW102105367 A TW 102105367A TW I524348 B TWI524348 B TW I524348B
- Authority
- TW
- Taiwan
- Prior art keywords
- unit
- data storage
- storage device
- data structure
- volatile
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/123—Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/068—Hybrid storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/217—Hybrid disk, e.g. using both magnetic and solid state storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
本申請案主張2012年2月16日申請之臨時申請案第61/599,930號的權利,且此臨時申請案特此以引用的方式併入。本申請案亦與同在申請中之申請案第61/599,927號相關,該同在申請中之申請案亦在2012年2月16日申請且特此以引用的方式併入。
本發明係關於用於管理資料在複合式非揮發性記憶體中之儲存的方法,該複合式非揮發性記憶體為緩慢記憶體裝置及快速記憶體裝置之複合式裝置。
在複合式磁碟系統中,大而緩慢且便宜之磁性硬碟可與諸如固態磁碟的小而快速但昂貴之儲存裝置組合,以形成邏輯磁碟區。此可提供如下優點:經由固態磁碟(SSD)快速存取,同時提供磁性硬碟機(HDD)之大容量。用於管理此複合式磁碟之先前技術已使用演算法,諸如最近最少使用(LRU)演算法,或CLOCK演算法,或藉由Song Jiang所述之ClockPro演算法。此等先前技術可改良資料在複合式磁碟之快速部分與緩慢部分之間的分配,但其傾向於並非空間有效的,此係因為其需要大量主記憶體,諸如大量DRAM,以便實施在此等技術中用於在複合式磁碟之兩個部分之間分配資料的資料結構。因此,需
要改良之空間有效技術,其不需要同樣多的記憶體來儲存資料結構,該等資料結構係在於複合式磁碟之兩個或兩個以上組件之間分配或遷移資料時使用。
在一實施例中,一種用於管理對諸如固態裝置之快速非揮發性儲存裝置及諸如磁性硬碟之較慢非揮發性儲存裝置的存取之方法可包括:維持第一資料結構,該第一資料結構指示對在諸如SSD裝置之快速非揮發性儲存裝置中之單元集合中的每一單元之存取的時近性(recency),且亦維持第二資料結構,該第二資料結構指示諸如HDD裝置之較慢儲存裝置中的單元或區塊是否已被新近參考(諸如,已被新近參考僅一次之單元或區塊)。在一實施例中,第二資料結構可為具有低的記憶體耗用之布隆過濾器佇列。布隆過濾器佇列關於較慢儲存裝置中之單元或區塊是否已被新近參考大多數時間為正確的,但並不保證始終提供正確答案。
本發明之其他特徵將自隨附圖式及自下文之詳細描述顯而易見。
以上概要並不包括本發明之所有態樣的詳盡清單。預期,本發明包括可自上文所概述之各種態樣之所有合適的組合實踐的所有系統及方法,且亦包括在下文之實施方式中所揭示的系統及方法。
10‧‧‧計算系統
12‧‧‧微處理器或其他邏輯單元
14‧‧‧快取記憶體
16‧‧‧揮發性RAM
18‧‧‧匯流排
19‧‧‧非揮發性記憶體
20‧‧‧輸入/輸出控制器
22‧‧‧輸入/輸出裝置
51‧‧‧固態磁碟
52‧‧‧磁性硬碟
53‧‧‧控制器
54‧‧‧控制器
301‧‧‧資料結構
302‧‧‧位置/單元
303‧‧‧位置/單元
304‧‧‧時脈指標
401‧‧‧第二資料結構/重像表
402‧‧‧位置
403‧‧‧位置
404‧‧‧位置
801‧‧‧布隆過濾器
802‧‧‧位置
803‧‧‧位置
804‧‧‧位置
本發明係藉由實例來說明且在隨附圖式之諸圖中並非限制性的,在該等隨附圖式中相似參考指示類似元件。
圖1展示可供本發明之實施例使用的資料處理系統之實例。
圖2展示根據本發明之一實施例之複合式非揮發性記憶體的實例。
圖3展示用於演算法之資料結構的實例,該演算法可被稱為時脈
演算法。
圖4展示可供根據本發明之一實施例在本文中所述之一或多個方法使用的諸如重像表之資料結構的實例。
圖5為描繪根據本發明之至少一實施例之方法的流程圖。
圖6為描繪根據本發明之至少一實施例之方法的流程圖。
圖7為描繪根據本發明之一實施例之方法的流程圖。
圖8展示可供本發明之至少一實施例使用的布隆過濾器資料結構之實例。
圖9為展示根據本發明之一實施例之方法的流程圖。
圖10為展示根據本發明之一實施例之方法的流程圖。
描述用以改良複合式、非揮發性資料儲存裝置之管理的方法。本發明之各種實施例及態樣將參考下文所論述之細節來描述,且隨附圖式將說明各種實施例。以下描述及圖式說明本發明,且並不解釋為限制本發明。眾多特定細節經描述,以提供對本發明之各種實施例的澈底理解。然而,在某些例子中,並未描述熟知或習知的細節,以便提供本發明之實施例的簡明論述。
在本說明書中對「一實施例」或「實施例」之引用意謂:結合實施例所述之特定特徵、結構或特性可包括於本發明的至少一實施例中。短語「在一實施例中」在本說明書中之各種地方的出現未必皆指代同一實施例。在下文之諸圖中所描繪的處理程序係藉由處理邏輯來執行,該處理邏輯包含硬體(例如,電路、專用邏輯等)、軟體(作為非暫時性機器可讀儲存媒體上之指令),或兩者之組合。儘管處理程序在下文中依據一些順序操作來描述,但應瞭解,所述之操作中的一些可以不同次序來執行。此外,一些操作可並行執行而非順序地執行。
圖1展示可供本文所述之一或多項實施例使用的計算系統10之實
例,計算系統10係呈資料處理系統之形式。系統10可為桌上型電腦系統或膝上型電腦系統或智慧電話,或一些其他電子裝置或消費型電子裝置。如此項技術中已知,系統10可包括耦接至選用之快取記憶體14之一或多個微處理器或其他邏輯單元12,快取記憶體14在一實施例中可為SRAM。該一或多個微處理器12經由一或多個匯流排18耦接至系統之剩餘部分,該一或多個匯流排18將該一或多個微處理器12耦接至主記憶體,該主記憶體可為揮發性RAM 16。在一實施例中,揮發性RAM可為在電腦系統中所使用之習知DRAM,其中DRAM經由匯流排耦接至系統10中之組件的剩餘部分。系統10亦可包括一或多個輸入/輸出控制器20,該一或多個輸入/輸出控制器20經由該一或多個匯流排18將一或多個輸入/輸出裝置22耦接至系統之剩餘部分。系統10亦包括非揮發性記憶體19,非揮發性記憶體19可為複合式磁碟,諸如快閃記憶體(其係呈固態形式)、磁碟及習知磁性硬碟之組合。
圖2展示根據一實施例之複合式磁碟的實例。非揮發性記憶體19包括固態磁碟51及磁性硬碟52,固態磁碟51及磁性硬碟52可藉由檔案系統及作業系統對待為單一邏輯磁碟區或區塊裝置,且藉由一或多個控制器來控制,該一或多個控制器諸如包括固態磁碟控制器之控制器54及包括硬碟機控制器的控制器53。該一或多個控制器經由匯流排18將圖2中所示之複合式磁碟耦接至系統10中之組件的剩餘部分。應瞭解,快閃記憶體係一形式之快速非揮發性儲存裝置,且其他快速儲存裝置可或者結合較慢儲存裝置而使用,該較慢儲存裝置可為習知磁性硬碟或慢於較快儲存裝置的其他非揮發性儲存裝置。應理解,在本描述中,對SSD或HDD之引用將解釋為意謂較快非揮發性儲存裝置及較慢非揮發性儲存裝置,且將不會解釋為限於任何儲存裝置技術或對任何儲存裝置技術為特定的。
圖3展示第一資料結構之實例,該第一資料結構係結合根據本發
明之一實施例的時脈演算法而使用。該時脈演算法在一實施例中可類似於在先前技術中所使用之先前時脈演算法。該時脈演算法可使用資料結構301,資料結構301可為包括時脈指標304之循環佇列(circular queue),時脈指標304基於時脈演算法指向佇列中之特定位置。循環佇列中之每一位置對應於快速非揮發性記憶體裝置中之特定單元;諸如,經由快閃記憶體系統所實施的固態磁碟。在某種意義上,第一資料結構類似於藉由檔案系統所維持之區塊分配位元映射,該位元映射指示哪些區塊為可用的且哪些區塊在硬碟上經分配(不可用)。
舉例而言,位置302對應於SSD上之單元0且在右側之下一單元對應於SSD上的單元1,且位置303對應於SSD上的另一單元。每一位置儲存一值,該值指示SSD內之相應儲存單元的狀態。在一實施例中,可使用兩位元值,使得值0可指示SSD上之特定單元中的一或多個區塊或其他組件為可用的,而位置中之值1可指示SSD上之特定單元尚未被新近參考,且值2可指示SSD中之彼單元已被新近參考。值3可指示單元釘選(pin)至SSD,且不可降階(demote)至HDD。或者,在一實施例中,可使用三位元值,其可追蹤對單元之特定數目次存取。在此實施例中,0值亦可指示單元為可用的;值1可指示單元尚未被新近參考,且最大值7可指示單元被釘選。其他值可指示單元已被新近參考之次數,諸如值6,其可指示五次新近參考。
在一實施例中,可如下管理第一資料結構301。當演算法需要尋找候選者以自SSD降階至HDD時,其將使用時脈指標304。在一實施例中,時脈指標304將在順時針方向上自一單元掃掠至下一單元,直至其找到具有值1之單元為止,此意謂該單元尚未被新近參考。在一實施例中,時脈指標304可在逆時針方向上掃掠。若單元中之值設定為最大值,則該單元釘選至SSD且不可降階至HDD。若值大於1但並非最大值,則在時脈指標移動至下一單元之前,該值遞減1,降至最
小值1。當SSD中之特定單元經存取時,對應於SSD上之彼單元的位置中之計數器可加1。使用此方法,SSD上之頻繁存取之單元將在資料結構之對應於SSD上之彼單元的單元中達到愈加變高之計數,達至預設定計數極限。然而,隨著時脈指標304在每次需要用於降階之候選者時在單元間掃掠,每一順序單元(例如,302、303)中之計數將在每次時脈指標304經過彼單元時減1,降至最小值1,此指示該單元尚未被新近存取。結合圖5、圖6及圖7來提供結合相對於第二資料結構使用時脈演算法的其他細節,其將接下來得以描述。
圖4展示第二資料結構之實例,其可被稱為重像表(ghost table),其用以針對超過一次以上新近存取或大於預定數目次新近存取的存取追蹤在較慢非揮發性記憶體(諸如,HDD)上之單元的存取。在一實施例中,第二資料結構在資料結構中之位置的數目方面可與SSD中之單元的數目具有相同大小,或其可與SSD中之單元之數目的大小成比例。在一實施例中,用於HDD中之特定單元號碼的簽章值可儲存於第二資料結構之每一位置中。在一實施例中,自檔案系統之觀點而言,單元可為磁性硬碟上之邏輯區塊。第二資料結構401包括三個位置402、403及404以及其他位置,且彼等位置中之每一者可儲存HDD中之單元號碼的簽章。位置404展示用於HDD中之單元X之簽章值的實例,從而指示HDD上之彼單元中的資料已被新近存取(經由讀取抑或寫入)至少一次或至少預定次數。
圖5展示根據本發明之一實施例之方法的實例,該方法用於利用諸如資料結構301之第一資料結構及諸如資料結構401的第二資料結構來控制資料在諸如SSD之快速儲存裝置與諸如HDD之較慢儲存裝置之間的遷移。圖5之方法可在操作501中開始,其中系統接收針對對非揮發性記憶體之讀取或寫入存取的請求。在一實施例中,檔案系統控制複合式磁碟,且將複合式磁碟對待為單一邏輯磁碟區。檔案系統或資
料處理系統中之另一組件接著進行至判定使用圖5中所示之方法在複合式磁碟之兩個或兩個以上部分之間分配資料的方式。回應於接收到針對讀取或寫入存取之請求,方法進行至操作503,其中其判定所請求資料是否在較快儲存裝置中。若所請求資料係在較快儲存裝置中,則在SSD中存在命中(hit),在該狀況下,處理進行至操作505,其中針對在SSD上所找到之單元的在循環佇列(諸如,資料結構301)中之計數累加1。此係在不移動時脈指標304之情況下進行。以此方式,時脈演算法經由第一資料結構追蹤對SSD中之單元的存取之數目。若操作503判定在SSD中存在未命中(miss),則系統進行至操作507,其中其判定資料是否在第二資料結構(諸如,圖4中所示之重像表401)中,第二資料結構係呈機率性雜湊表之形式。在下文所論述之圖7中說明在第二資料結構中尋找資料。
若操作507判定單元並非已在第二資料結構中,則其進行至操作509,其中單元號碼或單元號碼之表示添加至可為重像表401的第二資料結構。結合下文將描述之圖6來提供關於操作509的其他資訊。若在操作507中,判定含有所請求資料之單元已在第二資料結構中,則處理自操作507進行至操作511,其中判定快速儲存裝置是否為滿的。若其並非滿的,則接著進行操作515。各種習知演算法可用以判定SDD是否未滿,且其不需要依賴於時脈演算法或第一資料結構301之使用。
在操作515中,使用此項技術中已知的技術將經存取之HDD之單元中的資料自HDD遷移至SDD。此外,針對已遷移或待遷移之資料之彼單元的單元號碼自第二資料結構(諸如,重像表401)移除。若在操作511中,系統判定SSD為滿的,則操作513先於操作515。應瞭解,檔案系統將仍回應於在操作515中資料之遷移而維持習知資料結構,該等資料結構指示各種資料之位置。在操作513中,系統在一實施例
中使用時脈演算法在SSD上產生空間。在此狀況下,時脈演算法使用時脈指標304來順序地移動通過循環佇列,以時脈指標之當前位置開始至指示SSD中尚未被新近參考之單元的位置;在一實施例中,此係藉由儲存於循環佇列中之位置中的值1指示。隨著時脈指標304以循環型式移動通過循環佇列,每一位置中之值減量1。隨著時脈指標304移動通過佇列,從而使每一位置中之值減量,最終,單元中之一者將接收指示其為可用單元的值。一旦時脈演算法判定SSD中之下一可用單元位置,則在SSD之彼單元中的資料可被排清至HDD,且在可繼操作513後之操作515中,HDD上之所存取資料可自HDD遷移至SSD中的彼位置或單元。結合圖7進一步描述單元號碼自第二資料結構之移除。
圖6展示用於將資料添加至第二資料結構中之方法的實例,其中X可表示HDD中之單元號碼,諸如硬碟上的一或多個邏輯區塊。可瞭解,圖6及圖7之方法允許機率性雜湊表之產生,該機率性雜湊表可為圖4中所示的資料結構401。機率性雜湊表關於HDD上之單元之存取的數目可能並非始終正確的,此係歸因於事實上雜湊及簽章係在產生儲存於第二資料結構中之值時使用,且雜湊及簽章亦用以指定在彼資料結構內的位置。當使用雜湊時,以下情況為可能的:使通往雜湊函數中之一個以上輸入傳回相同的雜湊值。此意謂:共用與不同單元相同之簽章的單元(而非固有的單元(proper unit))可升階(promote)至SSD。然而,彼情況發生之可能性係小的。因此,儘管雜湊表關於HDD上之單元已接收之存取的數目可能並非始終正確的,但資料結構在大多數時間為正確的,且為空間有效的,此係因為其可相對於所消耗之記憶體量儲存大量資訊。
圖6中所示之方法可實施於圖5之操作509中。在操作601中,系統針對藉由讀取請求抑或寫入請求所存取之HDD中的單元號碼計算雜湊值集合。可自不同雜湊函數集合導出該雜湊值集合。舉例而言,在
一實施例中,可使用三個不同的雜湊函數h1、h2及h3,但可使用大於或等於1之任何數目個雜湊函數。另外,操作601計算可表示為S(X)之X簽章,其中S表示X之值的簽章。可自密碼編譯演算法或自其他演算法導出簽章,該等其他演算法嘗試針對給定輸入產生相對獨特的值,但並不保證針對X之每一可能的值產生獨特值。此無全域獨特性之情況促進雜湊表之機率性本質。在於操作601中計算該等值之後,系統進行至操作603,其中其判定藉由雜湊值所指定之位置中的任一者在第二資料結構中是否為空的。換言之,在一實施例中,在重像表中查驗藉由雜湊值所指定之彼等位置中的每一者,以判定其是否為空的。若該等位置中之任一者為空的,則接著進行操作605,其中將簽章(諸如,HDD之單元號碼的S(X))儲存於彼等空位置中藉由雜湊值中之一者所指定的一空位置中。另一方面,若操作603判定彼等位置中無一者為空的,則執行操作607,其中在操作607中隨機選擇第二資料結構中之隨機位置,且在操作609中將簽章儲存於所選擇之隨機位置中。使用隨機位置可引起覆寫儲存於彼位置中之先前簽章。
圖7展示用於尋找資料抑或自資料結構移除資料之方法的實例。當圖7之方法用於尋找時,不執行操作707。圖7中所示之用於尋找的方法可執行於圖5之操作507中。當圖7中所示之方法用於自重像表移除資料時,則執行操作707,且此方法用作圖5中所示之操作515的部分。圖7之方法可在操作701中開始,其中針對X計算雜湊值集合。藉由在操作601中先前使用之同一雜湊函數集合,此雜湊值集合應對應於同一雜湊值集合。類似地,針對X之值計算簽章,該簽章為類似於在操作601中所計算之簽章的簽章。接著,在操作703中,系統在重像表之位置中尋找簽章值,該等位置係藉由在操作701中所計算的雜湊值集合指定。若在操作705中找到簽章,則在如圖7中所示之操作707中,自第二資料結構移除單元號碼的簽章。在一實施例中,基於資料
結構之效能及可用之記憶體量,資料結構之大小可加倍或減半。
本發明之替代性實施例可使用布隆過濾器(Bloom filter),而非可實施為重像表之機率性雜湊表。布隆過濾器之實例展示於圖8中。布隆過濾器為可用以測試第二儲存裝置上之單元是否可能已被新近存取的機率性資料結構。布隆過濾器為機率性的,此係因為有可能誤判(false positive)結果被傳回,從而意謂在單元實際上並非處於資料結構內時該單元判定為處於資料結構內。然而,誤否定(false negative)結果並非可能的,因此第二資料結構之佇列將傳回如下結果:單元可能已被新近存取,或單元確定地尚未被新近存取。布隆過濾器可具有對應於SSD之每一單元或SSD之成比例數目個單元的多個位置。每一位置在一實施例中儲存1抑或0,其指示HDD上之特定單元之存取數目的狀態。HDD之單元號碼的雜湊值用作存取布隆過濾器中之特定位置的位址。如圖8中所示,布隆過濾器801包括位置802、803及804。位置803係藉由X之指定彼位置的雜湊函數h1予以指定。值1已設定於位置803中且亦已設定於藉由兩個其他位址X之h2及X之h3所指定的兩個其他位置中。藉由在操作507中用布隆過濾器替換重像表及藉由在操作509中用布隆過濾器替換重像表,圖8中所示之布隆過濾器可供圖5之方法使用。然而,當布隆過濾器替代重像表而使用時,在操作515中並不自布隆過濾器移除單元號碼,此係因為自布隆過濾器移除單元係不可能的且確保布隆過濾器將不會產生誤否定結果。因此,在一實施例中,隨著第二資料結構中之布隆過濾器被填滿,額外布隆過濾器可添加於循環佇列中。
圖9展示用於將HDD中之單元添加至布隆過濾器之方法的實例。當布隆過濾器替代重像表而使用時,圖9中所示之操作執行於操作509中。在一實施例中,可使用布隆過濾器之循環佇列,使得存在維持於循環佇列中的多個布隆過濾器,其中最新的布隆過濾器用以儲存值且
較舊的布隆過濾器循環通過循環佇列,如將自圖9顯而易見。當操作509開始時,在圖5之布隆過濾器實施的狀況下,操作901判定最新的布隆過濾器是否為滿的。若該布隆過濾器並非滿的,則接著進行操作905,其中藉由將在雜湊值集合中所指定之每一位置設定為預定值(諸如,1)而將表示HDD上之當前存取單元的資料添加至最新的布隆過濾器。在一實施例中,雜湊值集合係如在操作1001中而計算,且彼等雜湊值中之每一者指定布隆過濾器內之特定位置或位址,且值1寫入至雜湊值集合中所指定的彼等位址或位置中之每一者中。
圖10描繪用於尋找HDD中之特定單元號碼是否在第二資料結構中之方法,該第二資料結構在此狀況下為布隆過濾器。當圖5之方法使用布隆過濾器而非重像表時,圖10可作為操作507之部分而執行。在操作1001中,系統針對HDD中之單元號碼計算雜湊值集合。在一實施例中,可使用三個不同的雜湊函數計算三個雜湊值。接著,在操作1003中,系統檢查在藉由雜湊值集合所指定之每一位置中的位元是否已在佇列中之布隆過濾器中的至少一者中設定為預定值,諸如值1。在操作1005中,判定所有位元是否已在藉由雜湊值集合中之雜湊值所指定之位置中的每一者中設定為1。若佇列中之每一布隆過濾器中之位置中的至少一者尚未被設定,則系統斷定單元尚未被找到且進行至操作1007,此使得接著進行圖5中之操作509。若另一方面,系統判定所有位元已在藉由雜湊值集合所判定之恰當位置中設定,則處理進行至操作1009,此使得接著進行圖5中之操作511。如同圖4中之重像表,本發明之實施例可按需要增大或減小第二資料結構的大小。隨著循環佇列中之布隆過濾器被填滿,額外布隆過濾器可添加至循環佇列。在布隆過濾器之循環佇列的大小超過預定義值之後,最舊的布隆過濾器可自清單移除。
在前述說明書中,已參考本發明之特定實施例描述本發明。然
而,將明顯的是,在不脫離本發明之較廣精神及範疇的情況下,可對本發明進行各種修改及改變。因此,將在說明性意義而非限制性意義上看待說明書及圖式。
Claims (20)
- 一種用於管理對一多裝置複合式資料儲存系統之存取的方法,該方法包含:管理一第一資料結構,該第一資料結構指示針對在一第一非揮發性資料儲存裝置上之一第一單元集合中的每一單元之一被釘選(pin)狀態及新近存取之一計數,其中管理該第一資料結構包含:接收對存取該多裝置複合式資料儲存系統上之一第一區塊的一請求,自該第一非揮發性資料儲存裝置上之該第一單元集合中之一第一單元存取該第一區塊,及更新針對該第一單元之新近存取之該計數;及管理一第二資料結構,該第二資料結構機率性地指示一第二非揮發性資料儲存裝置上之一第二單元是否已被新近參考,其中該第二資料結構為一或多個布隆過濾器之一佇列。
- 如請求項1之方法,其中管理該第二資料結構包含:接收對存取該多裝置複合式資料儲存系統上之一第二區塊的一請求;將資料添加至該第二資料結構,該資料表示該第二資料結構上之一第二單元之一識別符,其中該第二單元含有該多裝置複合式資料儲存系統之該第二區塊;及將該第二單元遷移至該第一非揮發性資料儲存裝置。
- 如請求項2之方法,其中將表示在該第二非揮發性資料儲存裝置上之一單元識別符的資料添加至該第二資料結構包含:計算該第二單元之該識別符的一雜湊;及在藉由該第二單元之該識別符之該雜湊所定義的一索引處設定一值,該值指示該第二單元已被參考。
- 如請求項3之方法,其中使用複數個雜湊函數計算該第二單元之該識別符之複數個雜湊值。
- 如請求項4之方法,其中自該該第二非揮發性資料儲存裝置遷移該第二單元至該第一非揮發性資料儲存裝置包含:針對指示該第二單元已被參考之該值,在藉由每一雜湊所定義之一索引處搜尋該第二資料結構;及若所搜尋之每一索引含有指示該第二單元已被參考之該值,則將該第二單元自該第二非揮發性資料儲存裝置移動至該第一非揮發性資料儲存裝置。
- 如請求項5之方法,其中將該第二單元自該第二非揮發性資料儲存裝置移動至該第一非揮發性資料儲存裝置包含:將多個資料區塊作為一單一單元移動。
- 一種用於管理對一多裝置複合式資料儲存裝置之存取的系統,該系統包含:一第一非揮發性資料儲存裝置,其將資料儲存於一第一單元集合中;一第一資料結構,其指示對在該第一非揮發性資料儲存裝置上之該第一單元集合中的每一單元之存取的一時近性,其中該第一資料結構為藉由一時脈演算法之使用所維持的一循環佇列,該循環佇列指示該第一非揮發性資料儲存裝置上之該第一單元集合中一單元之一被釘選狀態及新近參考之一計數;一第二非揮發性資料儲存裝置,其耦接至該第一非揮發性資料儲存裝置,其將資料儲存於一第二單元集合中;及一第二資料結構,其機率性地指示該第二非揮發性資料儲存裝置上之一單元是否已被新近參考,其中該第二資料結構為布隆過濾器之一佇列,該第二資料結構指示該第二單元集合中遷 移至該第一非揮發性資料儲存裝置之一單元,且該第一單元集合及該第二單元集合中之每一單元包括一或多個邏輯區塊。
- 如請求項7之系統,其中該第一非揮發性資料儲存裝置為一固態磁碟。
- 如請求項8之系統,其中該第二非揮發性資料儲存裝置為一磁性硬碟機,且該第一非揮發性資料儲存裝置及該第二非揮發性資料儲存裝置定址為一單一邏輯磁碟區。
- 如請求項7之系統,其中該第二資料結構係藉由參數來定義,該等參數包含:該第一非揮發性資料儲存裝置上之單元的數目;在該佇列中所允許之布隆過濾器的數目;在該等布隆過濾器中儲存之單元的最大數目;及每一布隆過濾器之大小。
- 如請求項7之系統,其中每一單元包含多個邏輯區塊。
- 如請求項11之系統,其中該第一資料結構針對該第一非揮發性資料儲存裝置上之每一單元含有一元素。
- 如請求項12之系統,其中該第一資料結構之一元素指示該第一非揮發性資料儲存裝置上之一單元為可用的。
- 一種儲存有指令之非暫時性機器可讀儲存媒體,該等指令在藉由一機器執行時使一機器執行用於管理對一多裝置複合式資料儲存系統之存取的操作,該等操作包含:初始化一第一資料結構,該第一資料結構指示針對在一第一非揮發性資料儲存裝置上之一第一單元集合中的一每一單元之一被釘選狀態及新近存取之一計數,其中該第一資料結構係經由一時脈演算法而管理;初始化一第二資料結構,該第二資料結構機率性地指示一第 二非揮發性資料儲存裝置上之一單元已被新近參考,其中該第二非揮發性資料結構為布隆過濾器之一佇列;接收對存取該多裝置複合式資料儲存系統之一邏輯區塊的一請求;若該邏輯區塊含於該第一非揮發性資料儲存裝置上,則自該第一非揮發性資料儲存裝置上之一單元存取所請求之該邏輯區塊,且更新該第一資料結構以指示自該第一非揮發性資料儲存裝置上的一單元新近存取該多裝置複合式資料儲存系統之該邏輯區塊,除非該單元被釘選至該第一非揮發性資料儲存裝置;若於該第一非揮發性資料儲存裝置上之該單元中未找到所請求之該邏輯區塊,則針對所請求之該邏輯區塊搜尋該第二資料結構;若於該第二資料結構中未找到所請求之該邏輯區塊,則將針對含有所請求之該邏輯區塊之該單元之一識別符添加至該第二資料結構;及若於該第二資料結構中找到含有所請求之該邏輯區塊之該單元,則將含有所請求之該邏輯區塊之該單元自該第二非揮發性資料儲存裝置遷移至該第一非揮發性資料儲存裝置。
- 如請求項14之機器可讀儲存媒體,其中針對含有所請求之該邏輯區塊之該單元添加該識別符包含:針對該單元之該識別符計算一雜湊值集合;及在藉由該雜湊值集合中之一雜湊所定義的每一索引處設定一值,該值指示該單元已被參考。
- 如請求項15之機器可讀儲存媒體,其中使用複數個雜湊函數計算該雜湊值集合。
- 如請求項16之機器可讀儲存媒體,其進一步包含在該第二資料 結構中重設一布隆過濾器。
- 如請求項16之機器可讀儲存媒體,其進一步包含將一額外布隆過濾器添加至該第二資料結構。
- 如請求項18之機器可讀儲存媒體,其進一步包含自該第二資料結構移除一布隆過濾器。
- 一種具有指令之非暫時性機器可讀儲存媒體,該等指令在被執行時使一資料處理系統執行如請求項1或請求項2至6中任一項之一方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261599930P | 2012-02-16 | 2012-02-16 | |
US201261599927P | 2012-02-16 | 2012-02-16 | |
US13/605,921 US9710397B2 (en) | 2012-02-16 | 2012-09-06 | Data migration for composite non-volatile storage device |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201335937A TW201335937A (zh) | 2013-09-01 |
TWI524348B true TWI524348B (zh) | 2016-03-01 |
Family
ID=48983237
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102105368A TW201346932A (zh) | 2012-02-16 | 2013-02-08 | 用於複合式非揮發性儲存裝置之資料遷移 |
TW102105367A TWI524348B (zh) | 2012-02-16 | 2013-02-08 | 用於複合式非揮發性儲存裝置之資料遷移 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102105368A TW201346932A (zh) | 2012-02-16 | 2013-02-08 | 用於複合式非揮發性儲存裝置之資料遷移 |
Country Status (8)
Country | Link |
---|---|
US (2) | US9710397B2 (zh) |
EP (2) | EP2798501B1 (zh) |
JP (2) | JP5943095B2 (zh) |
KR (2) | KR101599177B1 (zh) |
CN (2) | CN104115134B (zh) |
AU (2) | AU2013221868B2 (zh) |
TW (2) | TW201346932A (zh) |
WO (2) | WO2013122818A1 (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8700578B1 (en) * | 2012-09-27 | 2014-04-15 | Emc Corporation | System and method for determining physical storage space of a deduplicated storage system |
US10073851B2 (en) | 2013-01-08 | 2018-09-11 | Apple Inc. | Fast new file creation cache |
US9819637B2 (en) * | 2013-02-27 | 2017-11-14 | Marvell World Trade Ltd. | Efficient longest prefix matching techniques for network devices |
CA2930424C (en) | 2013-11-12 | 2021-08-24 | Andrew Michael Wesie | Improved control flow integrity system and method |
CN105701018B (zh) * | 2014-11-24 | 2019-01-11 | 阿里巴巴集团控股有限公司 | 一种用于流计算的数据处理方法与设备 |
JP2016207033A (ja) * | 2015-04-24 | 2016-12-08 | 株式会社東芝 | 情報記憶システムおよび情報記憶装置 |
CN108027826B (zh) * | 2015-09-09 | 2022-05-17 | 亚马逊科技有限公司 | 元素从概率数据结构的删除 |
US10262160B2 (en) | 2015-09-09 | 2019-04-16 | Amazon Technologies, Inc. | Verification of data set components using digitally signed probabilistic data structures |
US10263784B2 (en) | 2015-09-09 | 2019-04-16 | Amazon Technologies, Inc. | Signature verification for data set components using probabilistic data structures |
KR101675694B1 (ko) * | 2015-09-11 | 2016-11-23 | 성균관대학교산학협력단 | 블록 인기도에 기반한 ssd의 블록 교체방법 |
KR101704936B1 (ko) * | 2015-12-07 | 2017-02-09 | 성균관대학교산학협력단 | 블록의 우선성에 기반한 ssd의 블록 교체방법 및 이를 적용하는 하이브리드 저장 시스템 |
US10942844B2 (en) | 2016-06-10 | 2021-03-09 | Apple Inc. | Reserved memory in memory management system |
US10019456B2 (en) * | 2016-06-29 | 2018-07-10 | Microsoft Technology Licensing, Llc | Recovering free space in nonvolatile storage with a computer storage system supporting shared objects |
US10275541B2 (en) | 2016-08-05 | 2019-04-30 | Micron Technology, Inc. | Proactive corrective actions in memory based on a probabilistic data structure |
US10228860B2 (en) * | 2016-11-14 | 2019-03-12 | Open Drives LLC | Storage optimization based I/O pattern modeling |
US11010300B2 (en) * | 2017-05-04 | 2021-05-18 | Hewlett Packard Enterprise Development Lp | Optimized record lookups |
US10811096B2 (en) * | 2017-05-19 | 2020-10-20 | Aspiring Sky Co. Limited | Multi-block non-volatile memories with single unified interface |
CN107678892B (zh) * | 2017-11-07 | 2021-05-04 | 黄淮学院 | 基于跳跃恢复链的连续数据保护方法 |
US11093140B2 (en) * | 2018-01-19 | 2021-08-17 | Micron Technology, Inc. | Performance allocation among users for accessing non-volatile memory devices |
US11243703B2 (en) | 2018-04-27 | 2022-02-08 | Hewlett Packard Enterprise Development Lp | Expandable index with pages to store object records |
US10628063B2 (en) | 2018-08-24 | 2020-04-21 | Advanced Micro Devices, Inc. | Implementing scalable memory allocation using identifiers that return a succinct pointer representation |
Family Cites Families (71)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4132989A (en) | 1977-10-18 | 1979-01-02 | Nasa | Azimuth correlator for real-time synthetic aperture radar image processing |
US4292634A (en) | 1978-12-15 | 1981-09-29 | Nasa | Real-time multiple-look synthetic aperture radar processor for spacecraft applications |
US5059318A (en) | 1990-05-14 | 1991-10-22 | Benesi Steve C | Fluid seal for a traveling sheet filter press |
US5680640A (en) | 1995-09-01 | 1997-10-21 | Emc Corporation | System for migrating data by selecting a first or second transfer means based on the status of a data element map initialized to a predetermined state |
GB2318478B (en) | 1996-10-21 | 2001-01-17 | Northern Telecom Ltd | Network model for alarm correlation |
GB2318479B (en) | 1996-10-21 | 2001-04-04 | Northern Telecom Ltd | Problem model for alarm correlation |
US6266771B1 (en) * | 1997-02-10 | 2001-07-24 | The Regents Of The University Of California | Probabilistic signature scheme |
CA2312444A1 (en) * | 2000-06-20 | 2001-12-20 | Ibm Canada Limited-Ibm Canada Limitee | Memory management of data buffers incorporating hierarchical victim selection |
US6631017B2 (en) | 2000-10-12 | 2003-10-07 | Jed Khoury | Matched amplification and switch joint transform correlator |
US6804763B1 (en) | 2000-10-17 | 2004-10-12 | Igt | High performance battery backed ram interface |
US6920533B2 (en) * | 2001-06-27 | 2005-07-19 | Intel Corporation | System boot time reduction method |
US20030056058A1 (en) | 2001-09-17 | 2003-03-20 | Alistair Veitch | Logical volume data migration |
US6978259B1 (en) | 2001-10-23 | 2005-12-20 | Hewlett-Packard Development Company, L.P. | Automated system adaptation technique particularly for data storage systems |
US7093004B2 (en) | 2002-02-04 | 2006-08-15 | Datasynapse, Inc. | Using execution statistics to select tasks for redundant assignment in a distributed computing platform |
US6918020B2 (en) | 2002-08-30 | 2005-07-12 | Intel Corporation | Cache management |
JP2004102374A (ja) | 2002-09-05 | 2004-04-02 | Hitachi Ltd | データ移行装置を有する情報処理システム |
EP1505506A1 (en) * | 2003-08-05 | 2005-02-09 | Sap Ag | A method of data caching |
US7103740B1 (en) | 2003-12-31 | 2006-09-05 | Veritas Operating Corporation | Backup mechanism for a multi-class file system |
US20110179219A1 (en) | 2004-04-05 | 2011-07-21 | Super Talent Electronics, Inc. | Hybrid storage device |
US20110145489A1 (en) * | 2004-04-05 | 2011-06-16 | Super Talent Electronics, Inc. | Hybrid storage device |
US20060069876A1 (en) * | 2004-09-30 | 2006-03-30 | Sorav Bansal | Method and system of clock with adaptive cache replacement and temporal filtering |
US20060248391A1 (en) | 2005-05-02 | 2006-11-02 | Glover Jeffrey C | State machine-based command line debugger |
US7548908B2 (en) * | 2005-06-24 | 2009-06-16 | Yahoo! Inc. | Dynamic bloom filter for caching query results |
US7548928B1 (en) * | 2005-08-05 | 2009-06-16 | Google Inc. | Data compression of large scale data stored in sparse tables |
JP2007072813A (ja) | 2005-09-07 | 2007-03-22 | Hitachi Ltd | ストレージシステム、ファイル移動方法、及びコンピュータプログラム |
US8099556B2 (en) | 2005-09-13 | 2012-01-17 | Arm Limited | Cache miss detection in a data processing apparatus |
US7730058B2 (en) * | 2005-10-05 | 2010-06-01 | Microsoft Corporation | Searching for information utilizing a probabilistic detector |
US7386673B2 (en) | 2005-11-30 | 2008-06-10 | Red Hat, Inc. | Method for tracking of non-resident pages |
US20070168398A1 (en) | 2005-12-16 | 2007-07-19 | Powerfile, Inc. | Permanent Storage Appliance |
KR100772863B1 (ko) * | 2006-01-13 | 2007-11-02 | 삼성전자주식회사 | 요구 페이징 기법을 적용한 시스템에서 페이지 교체 수행시간을 단축시키는 방법 및 장치 |
US7500050B2 (en) * | 2006-03-20 | 2009-03-03 | International Business Machines Corporation | Wise ordering for writes—combining spatial and temporal locality in write caches for multi-rank storage |
US7908236B2 (en) | 2006-07-20 | 2011-03-15 | International Business Machines Corporation | Using multiple data structures to manage data in cache |
US7555575B2 (en) | 2006-07-27 | 2009-06-30 | Hitachi, Ltd. | Method and apparatus for migrating data between storage volumes of different data pattern |
US7937428B2 (en) * | 2006-12-21 | 2011-05-03 | International Business Machines Corporation | System and method for generating and using a dynamic bloom filter |
US8032529B2 (en) * | 2007-04-12 | 2011-10-04 | Cisco Technology, Inc. | Enhanced bloom filters |
US8745523B2 (en) | 2007-06-08 | 2014-06-03 | Apple Inc. | Deletion in electronic backups |
US7930547B2 (en) * | 2007-06-15 | 2011-04-19 | Alcatel-Lucent Usa Inc. | High accuracy bloom filter using partitioned hashing |
KR101347285B1 (ko) * | 2007-09-28 | 2014-01-07 | 삼성전자주식회사 | 하드디스크 드라이브의 선반입 방법, 이에 적합한 기록매체 그리고 이에 적합한 장치 |
US7788220B1 (en) | 2007-12-31 | 2010-08-31 | Emc Corporation | Storage of data with composite hashes in backup systems |
US8407398B2 (en) * | 2008-10-01 | 2013-03-26 | Lenovo (Singapore) Pte. Ltd. | Cache mapping for solid state drives |
US8301650B1 (en) * | 2008-12-19 | 2012-10-30 | Google, Inc. | Bloom filter compaction |
KR101517767B1 (ko) * | 2009-01-07 | 2015-05-06 | 시게이트 테크놀로지 엘엘씨 | 하이브리드 저장 장치 및 그의 자원 공유 방법 |
JP5025670B2 (ja) * | 2009-01-28 | 2012-09-12 | 株式会社東芝 | 情報処理装置およびデータ記憶装置 |
US8719486B2 (en) | 2009-06-24 | 2014-05-06 | Micron Technology, Inc. | Pinning content in nonvolatile memory |
US8612666B2 (en) * | 2009-06-30 | 2013-12-17 | Intel Corporation | Method and system for managing a NAND flash memory by paging segments of a logical to physical address map to a non-volatile memory |
US8140537B2 (en) | 2009-07-21 | 2012-03-20 | International Business Machines Corporation | Block level tagging with file level information |
US9291712B2 (en) | 2009-09-10 | 2016-03-22 | Nextnav, Llc | Cell organization and transmission schemes in a wide area positioning system (WAPS) |
US9003159B2 (en) | 2009-10-05 | 2015-04-07 | Marvell World Trade Ltd. | Data caching in non-volatile memory |
WO2011068699A1 (en) * | 2009-12-04 | 2011-06-09 | Marvell World Trade Ltd. | Virtualization of storage devices |
US8438334B2 (en) * | 2009-12-22 | 2013-05-07 | International Business Machines Corporation | Hybrid storage subsystem with mixed placement of file contents |
US20110191522A1 (en) * | 2010-02-02 | 2011-08-04 | Condict Michael N | Managing Metadata and Page Replacement in a Persistent Cache in Flash Memory |
US20110320754A1 (en) | 2010-02-23 | 2011-12-29 | Hitachi, Ltd | Management system for storage system and method for managing storage system |
US8732133B2 (en) | 2010-03-16 | 2014-05-20 | Commvault Systems, Inc. | Extensible data deduplication system and method |
US8868487B2 (en) | 2010-04-12 | 2014-10-21 | Sandisk Enterprise Ip Llc | Event processing in a flash memory-based object store |
US8935487B2 (en) | 2010-05-05 | 2015-01-13 | Microsoft Corporation | Fast and low-RAM-footprint indexing for data deduplication |
US20110276744A1 (en) * | 2010-05-05 | 2011-11-10 | Microsoft Corporation | Flash memory cache including for use with persistent key-value store |
US8380949B2 (en) | 2010-05-20 | 2013-02-19 | International Business Machines Corporation | Managing write operations to an extent of tracks migrated between storage devices |
US9401967B2 (en) | 2010-06-09 | 2016-07-26 | Brocade Communications Systems, Inc. | Inline wire speed deduplication system |
US8954669B2 (en) | 2010-07-07 | 2015-02-10 | Nexenta System, Inc | Method and system for heterogeneous data volume |
US8478934B2 (en) * | 2010-07-19 | 2013-07-02 | Lsi Corporation | Managing extended RAID caches using counting bloom filters |
TWI467581B (zh) * | 2010-09-07 | 2015-01-01 | Phison Electronics Corp | 複合式儲存裝置及其複合式儲存媒體控制器與定址方法 |
US8677004B2 (en) | 2010-09-10 | 2014-03-18 | International Business Machines Corporation | Migration of logical partitions between two devices |
US9244779B2 (en) | 2010-09-30 | 2016-01-26 | Commvault Systems, Inc. | Data recovery operations, such as recovery from modified network data management protocol data |
US8583611B2 (en) | 2010-10-22 | 2013-11-12 | Hitachi, Ltd. | File server for migration of file and method for migrating file |
US9032146B2 (en) | 2010-11-30 | 2015-05-12 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Dynamic use of raid levels responsive to workload requirements |
US8862845B2 (en) | 2010-12-06 | 2014-10-14 | Xiotech Corporation | Application profiling in a data storage array |
US8583966B2 (en) | 2011-04-29 | 2013-11-12 | Lsi Corporation | Methods and structure for debugging DDR memory of a storage controller |
US9417794B2 (en) * | 2011-07-26 | 2016-08-16 | Apple Inc. | Including performance-related hints in requests to composite memory |
US8788788B2 (en) | 2011-08-11 | 2014-07-22 | Pure Storage, Inc. | Logical sector mapping in a flash storage array |
US8914381B2 (en) | 2012-02-16 | 2014-12-16 | Apple Inc. | Correlation filter |
US9081503B2 (en) | 2012-02-16 | 2015-07-14 | Apple Inc. | Methods and systems for maintaining a storage volume with holes and filling holes |
-
2012
- 2012-09-06 US US13/605,921 patent/US9710397B2/en active Active
- 2012-09-06 US US13/605,916 patent/US20130219116A1/en not_active Abandoned
-
2013
- 2013-02-07 AU AU2013221868A patent/AU2013221868B2/en active Active
- 2013-02-07 JP JP2014557696A patent/JP5943095B2/ja active Active
- 2013-02-07 CN CN201380009551.8A patent/CN104115134B/zh active Active
- 2013-02-07 EP EP13706810.2A patent/EP2798501B1/en active Active
- 2013-02-07 KR KR1020147022828A patent/KR101599177B1/ko active IP Right Grant
- 2013-02-07 WO PCT/US2013/025224 patent/WO2013122818A1/en active Application Filing
- 2013-02-08 TW TW102105368A patent/TW201346932A/zh unknown
- 2013-02-08 TW TW102105367A patent/TWI524348B/zh active
- 2013-02-11 AU AU2013221855A patent/AU2013221855B2/en active Active
- 2013-02-11 CN CN201380009538.2A patent/CN104115133B/zh active Active
- 2013-02-11 WO PCT/US2013/025597 patent/WO2013122881A1/en active Application Filing
- 2013-02-11 KR KR1020147022659A patent/KR101620773B1/ko active IP Right Grant
- 2013-02-11 EP EP13707949.7A patent/EP2798502B1/en active Active
- 2013-02-11 JP JP2014557710A patent/JP5943096B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
AU2013221868B2 (en) | 2016-03-31 |
AU2013221868A1 (en) | 2014-08-21 |
JP2015508924A (ja) | 2015-03-23 |
US20130219116A1 (en) | 2013-08-22 |
KR20140111346A (ko) | 2014-09-18 |
EP2798501A1 (en) | 2014-11-05 |
EP2798502A1 (en) | 2014-11-05 |
EP2798501B1 (en) | 2020-12-30 |
EP2798502B1 (en) | 2020-04-08 |
US9710397B2 (en) | 2017-07-18 |
CN104115133A (zh) | 2014-10-22 |
KR101599177B1 (ko) | 2016-03-02 |
CN104115133B (zh) | 2017-08-08 |
AU2013221855A1 (en) | 2014-08-21 |
WO2013122818A1 (en) | 2013-08-22 |
KR101620773B1 (ko) | 2016-05-12 |
JP5943096B2 (ja) | 2016-06-29 |
CN104115134A (zh) | 2014-10-22 |
CN104115134B (zh) | 2018-02-13 |
TW201335937A (zh) | 2013-09-01 |
KR20140116933A (ko) | 2014-10-06 |
JP2015512098A (ja) | 2015-04-23 |
US20130219117A1 (en) | 2013-08-22 |
AU2013221855B2 (en) | 2016-03-17 |
TW201346932A (zh) | 2013-11-16 |
JP5943095B2 (ja) | 2016-06-29 |
WO2013122881A1 (en) | 2013-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI524348B (zh) | 用於複合式非揮發性儲存裝置之資料遷移 | |
US9146688B2 (en) | Advanced groomer for storage array | |
US10162554B2 (en) | System and method for controlling a programmable deduplication ratio for a memory system | |
JP6313993B2 (ja) | ホストのサービス品質インジケータに重みを割り当てるための装置および方法ならびに記憶媒体 | |
CN110268391A (zh) | 用于缓存数据的系统和方法 | |
US10366011B1 (en) | Content-based deduplicated storage having multilevel data cache | |
KR101350132B1 (ko) | Nvram을 맵핑 테이블 저장 장치로 사용하는 중복 데이터 제거 시스템 및 방법 | |
US10289558B2 (en) | Apparatus and method for reducing storage class memory write-backs | |
WO2023088535A1 (en) | Cache eviction based on current tiering status | |
US9710514B1 (en) | Systems and methods for efficient storage access using metadata | |
US20170052899A1 (en) | Buffer cache device method for managing the same and applying system thereof | |
JP2019114013A (ja) | 演算処理装置及び演算処理装置の制御方法 | |
US20210263648A1 (en) | Method for managing performance of logical disk and storage array | |
More et al. | Dynamic Cache Resizing in Flashcache |