TW201945921A - 在固態儲存驅動器陣列中的工作量適應超容量快取 - Google Patents

在固態儲存驅動器陣列中的工作量適應超容量快取 Download PDF

Info

Publication number
TW201945921A
TW201945921A TW108107449A TW108107449A TW201945921A TW 201945921 A TW201945921 A TW 201945921A TW 108107449 A TW108107449 A TW 108107449A TW 108107449 A TW108107449 A TW 108107449A TW 201945921 A TW201945921 A TW 201945921A
Authority
TW
Taiwan
Prior art keywords
state storage
solid
service life
predicted
storage drive
Prior art date
Application number
TW108107449A
Other languages
English (en)
Other versions
TWI740110B (zh
Inventor
喬 德瑞克
Original Assignee
日商東芝記憶體股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日商東芝記憶體股份有限公司 filed Critical 日商東芝記憶體股份有限公司
Publication of TW201945921A publication Critical patent/TW201945921A/zh
Application granted granted Critical
Publication of TWI740110B publication Critical patent/TWI740110B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically

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)
  • Debugging And Monitoring (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

在一實施例中,用於管理在固態儲存驅動器陣列中的超容量快取的方法包含:從複數個固態儲存驅動器之各者接收使用資料,基於至少該使用資料決定用於該複數個固態儲存驅動器之各者的預測服務壽命值,將該預測服務壽命值之各者與用於各個分別的固態儲存驅動器之預定服務壽命值比較,以及基於該比較步驟的結果針對該複數個固態儲存驅動器之至少一者調整可用邏輯儲存容量。在一實施例中,針對該複數個固態儲存驅動器至少一者動態調整該可用邏輯儲存空間的步驟包含:基於用於該固態儲存驅動器的該預定服務壽命值大於用於該固態儲存驅動器的該預定服務壽命值的結果增加該固態儲存驅動器之該可用邏輯容量。

Description

在固態儲存驅動器陣列中的工作量適應超容量快取
本發明一般是關於固態儲存驅動器,且更特別的是關於在固態存儲驅動器陣列中的工作量適應超容量快取。
固態儲存驅動器(SSD; Solid state storage drive)通常帶來比總可用實體記憶體容量還少的邏輯位址空間。作成這類儲存容量的超容量快取(「OP(overprovisioning)」)主要是為了兩個原因:第一,其確保充分的實體記憶體資源可用以儲存還未透過廢料收集(garbage collection)收回的無效資料。第二,由於實體快閃胞元僅能容許有限數目的編程(program)/抹除週期(cycle),故將編程(寫入)在額外實體媒體之上分布允許專用於用以超過底層媒體之者的驅動器之寫入耐久度(write endurance)。除了這些主要功能以外,超容量快取的實體記憶體容量能被使用來儲存後設資料(metadata)和錯誤校正寫碼資料(error correction coding data),並且用來允許驅動器在記憶體失效(壞的區塊及/或晶粒)的事件中留存全部邏輯容量。在給定SSD中超容量快取的數量可取決於SSD的應用而變化,從用於消費者應用的單一位元百分比(例如,用於1TB SSD的64GB)到用於企業例如25%或以上之顯著較高的百分比(例如,用於1TB SSD的224GB)。
SSD係針對驅動器的邏輯容量之寫入的特定數目來額定(rate)。此「寫入耐久度」常常被表達為服務壽命(時間)乘以寫入強度(write intensity)(經一段時間的寫入資料量)。寫入強度典型地按照「每日驅動寫入」(N-DWPD)來特定,其係為SSD之整體邏輯容量其可用不失效的壽命的每日能被覆寫多少次。在特定生產線內可用寫入耐久度額定值的數目可受限制。例如,給定生產線可提供用於5年之服務壽命在1-、3-或5-DWPD或1-、3-或10-DWPD上額定的SSD。
在SSD中OP的數量係指數相關於其額定的寫入耐久度,所以在10-DWPD上額定的SSD比在1-DWPD上額定的SSD將具有顯著較高的OP百分比。進一步而言,在SSD中實施的OP之百分比典型地假定在其服務壽命期間驅動器之最差情形使用(最高數目的寫入、最高溫度運算等)。
來自主機的資料寫入之數目和寫入放大(write amplification)影響SSD所經歷的耗損的比率。寫入放大為必需被寫入到實體媒體的實際資料量超過了從主機接收的邏輯資料量的因子。NAND快閃記憶體胞元可以不被覆寫,但在接受新資料之前必需先被抹除。因為在NAND快閃記憶體中能被抹除的資料之最小單元遠大於能被寫入的最小尺寸,故引起寫入放大。所以,當主機覆寫在特定邏輯位址的資料時,SSD儲存在新的實體位址之新的資料,並且預先將對應於該邏輯位址的資料標記為陳舊(stale)或「無效」的。在稱作區塊(block)的單元中進行抹除。當選擇要被抹除以準備接收新的主機資料的區塊時,任何無效的資料可被忽略但在該區塊中有效的資料必需被整併且移動到他處。與此資料移動關聯的寫入為對於寫入放大負責的底層機制(underlying mechanism)。寫入放大典型地被表達為寫入到SSD之實體記憶體位置的位元組之數目對寫入到在SSD中邏輯記憶體位置的位元組之數目(但如,主機寫入的數目)的比率。一般而言,隨機寫入資料之小區塊生成了比順序寫入資料之大區塊更大的寫入放大,並且SSD的邏輯容量愈滿,其寫入放大愈高。結果是,寫入放大因子非常難以估計,因為其取決於SSD的未來使用。
尋求購買SSD的消費者必須估計他們的寫入流量為何,但正確地估計寫入流量常是困難的,特別是對於針對在將提供用於大數目及各種終端使用者應用(他們的流量型樣會是不可預知的)的網路器械的資料中心中使用的SSD及基於SSD網路器械的購買者而言。消費者典型地保守挑選,因而常常可能購買具有較高DWPD額定的SSD,因而有比實際需要更多的OP。因此,有著基於由SSD經歷的實際工作量而對SSD進行最佳超容量快取的需要。
在一實施例中,用於管理在固態儲存驅動器陣列中的超容量快取的方法包含:從複數個固態儲存驅動器之各者接收使用資料,基於至少該使用資料決定用於該複數個固態儲存驅動器之各者的預測服務壽命值,將該預測服務壽命值之各者與用於各個分別的固態儲存驅動器之預定服務壽命值比較,以及基於該比較步驟的結果針對該複數個固態儲存驅動器之至少一者調整可用邏輯儲存容量。在一實施例中,針對該複數個固態儲存驅動器至少一者動態調整該可用邏輯儲存空間的步驟包含:基於用於該固態儲存驅動器的該預定服務壽命值大於用於該固態儲存驅動器的該預定服務壽命值的結果增加該固態儲存驅動器之該可用邏輯容量。在一實施例中,該方法更包含:基於用於該複數個固態儲存驅動器至少一者的該預測服務壽命值不大於用於該固態儲存驅動器的該預定服務壽命值的結果來重新分配該複數個固態儲存驅動器之間該複數個固態儲存驅動器之至少一者中的至少一命名空間(namespace)。在一實施例中,該方法更包含:基於用於該複數個固態儲存驅動器之至少一者的該預測服務壽命值不大於用於該固態儲存驅動器的該預定服務壽命值的結果來降低用於該複數個固態儲存驅動器之至少一者的可用邏輯儲存容量。
在一實施例中,針對該複數個固態儲存驅動器之各者決定該預測服務壽命值的該步驟包含:在一連串時間索引之增加值之上針對該固態儲存驅動器決定預測原始位元錯誤率分佈(bit error ratio distribution),直到該預測原始位元錯誤率分佈超過指示不可接收表現(unacceptable performance)的臨限(threshold)為止,並且將用於該固態儲存驅動器的該預測服務壽命值界定為該固態儲存驅動器之目前齡期加上當該預測原始位元錯誤率超過該臨限時目前該時間索引之值。在一實施例中,決定該預測原始錯誤率分佈係基於目前原始錯誤比分佈與預測在該固態儲存驅動器中預定未來時間上會發生的編程/抹除週期之數目。
在一實施例中,用於管理在固態驅動器陣列中之超容量快取的系統包含:複數個固態儲存驅動器,各個固態儲存驅動器組構以記錄使用資料,包含通訊地耦接至該複數個固態儲存驅動器之各者的驅動狀態監視器,該驅動狀態監視器組構以從該複數個固態儲存驅動器之各者請求該使用資料,包含遙測資料庫,其組構以儲存從該驅動狀態監視器在一段時間之上接收的該使用資料之一系列值,包含通訊地耦接至該遙測資料庫的分析引擎,該分析引擎組構以基於至少該使用資料決定該複數個固態儲存驅動器之各者的預測服務壽命值,以及包含通訊地耦接至該分析引擎的虛擬器,該虛擬器組構以基於用於該固態儲存驅動器的該預測服務壽命值對用於該固態儲存驅動器的預定服務壽命值比較的結果來針對該複數個固態儲存驅動器之至少一者動態調整可用邏輯儲存容量。在一實施例中,該虛擬器係組構以基於用於該固態儲存驅動器的該預測服務壽命值大於用於該固態儲存驅動器的該預定服務壽命值的結果來增加用於該複數個固態儲存驅動器之至少一者的該可用邏輯儲存容量。在一實施例中,該虛擬器更組構以:基於用於該固態儲存驅動器的該預測服務壽命值不大於用於該固態儲存驅動器的該預定服務壽命值的結果來重新分配該複數個固態儲存驅動器之間該複數個固態儲存驅動器之至少一者中的至少一命名空間(namespace)。在一實施例中,該虛擬器更組構以:基於用於該固態儲存驅動器的該預測服務壽命值不大於用於該固態儲存驅動器的該預定服務壽命值的結果來降低用於該複數個固態儲存驅動器之至少一者的可用邏輯儲存容量。
在一實施例中,該分析引擎係組構以,藉由下列步驟來針對該複數個固態儲存驅動器之各者決定該預測服務壽命值:在一連串時間索引之增加值之上針對該固態儲存驅動器決定預測原始位元錯誤率分佈(bit error ratio distribution),直到該預測原始位元錯誤率分佈超過指示不可接收表現(unacceptable performance)的臨限(threshold)為止,並且將用於該固態儲存驅動器的該預測服務壽命值界定為該固態儲存驅動器之目前齡期加上當該預測原始位元錯誤率超過該臨限時目前該時間索引之值。在一實施例中,該分析引擎係組構以基於目前原始位元錯誤比分佈與預測在該固態儲存驅動器中預定未來時間上會發生的編程/抹除週期之數目來決定該預測原始位元錯誤率分佈。
圖1A為依據本發明包括固態儲存驅動器陣列的網路器械100之一實施例的圖。網路器械100包括(但不限於)複數個固態儲存驅動器(SSD) 110、映射層112、遙測資料庫116、分析引擎120以及虛擬器122。匯流排118提供在SSD 110、映射層112、SSD I/O監視器134以及SSD狀態監視器136之間合適的通訊路徑。非揮發性高速記憶體 (NVMe; Non-Volatile Memory Express)為用於在匯流排118之上通訊的合適匯流排介面協定其中之一範例。在圖1A示例四個SSD 110的同時,並未限定SSD的特定數目。網路器械100可包括在本發明之範圍內的一或多個SSD 110。
映射層112藉由接收及反應於來自主機114的讀取和寫入命令來提供在一或多個主機114與SSD 110之陣列之間的介面。在Fabrics、iSCSI、Fibre Channel之上的NVMe、在快速週邊組件互連(PCIe)、串列ATA(SATA)以及串列附接的SCSI(SAS)之上的NVMe為用於在網路器械100與主機114之間合適的匯流排介面協定。映射層112帶來了具有虛擬化的位址空間(「命名空間」或「容量」)的各個主機114,該主機的I/O命令可對該虛擬化位址空間定址而無關於其它虛擬化位址空間。映射層112藉由將在虛擬化位址空間中的位址映射(轉換(translate))成由SSD 110之一或多者所給予的邏輯位址空間中的位址來實施虛擬化位址空間。在一實施例中,映射層112為在由網路器械100之控制器或處理器(未繪示)執行的韌體上的程式。虛擬器122反應於來自供應機構(provisioning authority)124(例如,管理者或使用者介面)的請求來管理藉由映射層112將虛擬化位址空間映射,用以創建及刪除命名空間、將該些命名空間對主機114顯露(expose)等。命名空間可完全被映射至在一SSD 110中的實體記憶體位置或可被映射至在二或以上的SSD 110中的實體記憶體位置。映射層112和虛擬器122一同提供主機114與SSD 110之陣列之間的抽象層(layer of abstraction),使得主機114未意識到命名空間如何被映射到SSD 110之陣列。虛擬器122藉由管理映射的命名空間來控制在SSD 110中的超容量快取,使得各個SSD 110之邏輯容量的任何分額係對主機114顯露為容量。在一實施例中,虛擬器122為在由網路器械100之控制器或處理器執行的韌體上的程式。
分析引擎120針對在陣列中的各個SSD 110使用在遙測資料庫116中的資料,用以決定各個SSD 110之剩餘服務壽命的估算。在一實施例中,分析引擎120為在由網路器械100之控制器或處理器執行的韌體上的程式。分析引擎120和虛擬器122的功能性係連同圖4及5在下面進一步說明。
SSD狀態監視器136週期地輪詢(poll)SSD 110之各者以提取內部登錄的資訊,包括(但不限於)主機及媒體流量統計、耗損狀態、已被利用的實體容量之分額以及錯誤校正統計。SSD狀態監視器136在將內部狀態資訊提供給遙測資料庫116之前可選擇性地過濾或另以處理此SSD 110的內部狀態資訊。SSD狀態監視器136將識別符與各個SSD 110關聯,並且主動地或反應於受到輪詢其一者將識別符和其關聯的內部狀態資料轉送至遙測資料庫116。SSD狀態監視器136可在任何合適的區間上(例如,一小時一次或一天一次)來輪詢各個SSD 110。網路器械100的使用者或管理者組構了SSD狀態監視器136要多常輪詢SSD 110之陣列。反應於該輪詢,各個SSD 110將其目前日誌資料(log data)報告給SSD狀態監視器136。
主機I/O監視器132記錄主機114與網路器械100之間I/O流量的相關細節,包括(但不限於)分配至各個主機的各個命名空間的容量、至或自各個命名空間的I/O流量之速率以及已被利用的各個命名空間的容量之分額。SSD I/O監視器134記錄映射層112與SSD 110之各者之間的I/O流量之相關細節,包括(但不限於)I/O流量之速率和已被利用的各個SSD 110的邏輯容量之分額。主機I/O監視器132和SSD I/O監視器134之各者在合適的區間(例如,一小時一次或一天一次)上將其收集的資料發送至遙測資料庫116。
遙測資料庫116儲存用於來自主機I/O監視器132、SSD I/O監視器134以及SSD狀態監視器136之資料的時間序列(time-series)值(由時間索引的資訊)。此資料可包括(但不限於)主機使用資料、媒體使用資料以及耗損資料,如下面進一步所解釋的。例如,遙測資料庫116將寫入至在一連串時間上由主機I/O監視器132報告的命名空間的一系列數目的主機資料之位元組儲存為主機使用資料。因此,遙測資料庫116儲存SSD 110之各種使用及耗損的歷使記錄。儲存在遙測資料庫116中的主機使用資料、媒體使用資料以及耗損資料係在下面連同圖3來進一步討論。分析引擎120分析在遙測資料庫116中的歷史時間序列資料,用以估計各個SSD 110之未來耗損以及剩餘服務壽命。基於各個SSD 110之估計的剩餘服務壽命,虛擬器122可重映射SSD 110之間的命名空間、告知網路器械100之管理者需要額外的OP或藉由顯露多多少少的邏輯容量來調整在一或多個SSD 110中OP的數量。
圖1B為依據本發明包括固態儲存驅動器陣列的網路器械之一實施例的圖。在圖1B實施例中,網路器械101包括(但不限於)SSD 110、映射層112、主機I/O監視器132、SSD I/O監視器134及SSD狀態監視器136。遙測資料庫116、分析引擎120以及虛擬器122係位於網路器械101之外側,並且在除了網路器械101以外的一或多個網路器械中可儲存及處理用於SSD的遙測資料。
圖2為依據本發明圖1A之網路器械100的固態儲存驅動器(SSD)110之一實施例的圖。SSD 110包括匯流排介面210,其允許SSD 110通訊地耦接至匯流排118,以用於與其它裝置通訊。SSD 110包括與外部DRAM 214及NAND裝置218之陣列通訊的控制器212。控制器212管理寫入(編程)、讀取以及抹除在NAND裝置218上儲存的資料。控制器212包括(但不限於)在韌體中的快閃轉譯層(FTL; flash translation layer)220,用以將資料的邏輯位址從主機114映射至NAND裝置218的實體頁面及區塊。控制器212實施監控功能230。控制器212可將DRAM 214使用為緩衝器,以用於暫時地儲存主機資料(快取)以及用於暫時地儲存位址映射後設資料以及為了其它目的。
NAND裝置218係以與控制器212通訊的四個通道242、244、246、248來佈設。在佈設於四個通道中的十六個NAND裝置218繪示在圖2的SSD 110中的同時,NAND裝置及通道的特定數目並不限於如此,並且SSD 110可包括在本發明之範圍內的一或多個通道中佈設的一或多個NAND裝置218。在一實施例中,NAND裝置218為SLC NAND裝置、MLC NAND裝置、TLC NAND裝置、QLC NAND裝置或其組合。
監視器230記錄用於SSD 110的操作統計以及媒體耗損資訊。記錄的日誌資料可包括(但不限於)主機使用資料、媒體使用資料以及耗損資料。主機使用資料包括(但不限於)從主機進行寫入的資料之位元組的數目。媒體使用資料包括(但不限於)寫入到NAND裝置218的資料之位元組的數目(包括與廢料收集及刷新(refresh)操作,其中刷新操作為含有自頁面讀取資料、進行任何錯誤校正以及將頁面之資料寫入至新頁面位置的刷新週期)、已進行的編程/抹除週期之數目以及已進行的刷新週期之數目。耗損資料包括(但不限於)原始位元錯誤率(校正前的位元錯誤數目除以位元讀取的總數目)以及標記為不可用(「壞區塊」)之區塊的數目。監視器230將記錄日誌資料儲存於任何適當的記憶體位置,包括(但不限於)在控制器212、DRAM 214或NAND裝置218內部的記憶體。反應於來自SSD狀態監視器136的請求,控制器212將目前日誌資料報告給SSD狀態監視器136
圖3為依據本發明固態儲存驅動器陣列遙測資料庫116之一實施例的圖。主機使用區310儲存用於映射至一或多個SSD 110的各個命名空間的主機使用資料。主機使用資料可包括(但不限於)從主機寫入到命名空間的資料之位元組的數目、命名空間之總邏輯容量以及已被編程(但如含有來自主機的資料)的命名空間之容量的分額。媒體使用區312儲存用於SSD 110之各者的媒體使用資料。媒體使用資料可包括(但不限於)寫入至各個SSD 110的總位元組的數目(包括關於廢料收集及刷新操作的寫入)、編程/抹除週期的數目以及進行的刷新週期之數目。耗損資料區314儲存耗損相關的資料,其可包括(但不限於)原始位元錯誤率(RBER; raw bit error ratio)分佈、壞區塊的數目以及有效OP。RBER分佈為在各個SSD 110中的實體媒體之上表示為百分比之位元錯誤的數目(在錯誤校正之前)除以總讀取位元之數目的分佈。當NAND記憶體隨著耗損增加變得更容易位元錯誤時,RBER分佈為實體記憶體整耗損狀態的指標(indicator)。在一實施例中,原始位元錯誤率分佈為針對在SSD 110中快閃記憶體之所有頁面(或比區塊更小的另一單元)的原始位元錯誤率之直方圖(histogram)。壞區塊之數目代表已被標示為「壞」或不可由SSD之韌體使用的記憶體區塊之數目。有效OP為作為「備用區(spare area)」的實體記憶體之位元組的數目加上未使用的SSD之邏輯容量的位元組的數目,除以SSD之邏輯容量的位元組的總數目。此值為有效OP,因為SSD能使用除了指定為OP的記憶體以外未被指派到主機資料作為「備用區」的邏輯容量。
在遙測資料庫116中的各個輸入係與時間戳(timestamp)及報告資料的命名空間或SSD 110的識別符關聯。在一實施例中,遙測資料庫116儲存在額定SSD 110之使用期限(lifetime)(典型為5年或無限期)之上的時間序列。儲存在遙測資料庫116中的時間序列資料代表SSD 110之各者之實際工作量的以及造成的媒體耗損率的歷史記錄。分析引擎120及虛擬器122使用用於各個SSD 110的此實際工作量資料,用以管理將SSD 110之陣列之間映射命名空間以及各個SSD 110之超容量快取的量。
圖4為依據本發明之一實施例用於在固態儲存驅動器陣列中工作量適應超容量快取之方法步驟的流程圖。在步驟410中,分析引擎120從遙測資料庫116提取目前資料,其儲存用於各個命名空間及各個SSD 110的遙測資料連同用於各個資料輸入的時間戳。在步驟412中,分析引擎120基於如由在遙測資料庫116中的遙測資料代表的SSD之實際歷史工作量來針對各個SSD 110預測服務壽命。用於決定針對SSD 110預測的服務壽命的技術之一實施例係於下方連同圖5來說明。
在步驟414中,分析引擎120將用於SSD 110的預測服務壽命與用於該SSD的服務壽命目標(例如額定的5年服務壽命)進行比較。若SSD之預測的服務壽命大於預定服務壽命目標,接著在步驟418中,虛擬器122增加SSD之顯露的邏輯容量(其減少OP),因此允許SSD之使用者或管理者從SSD補捉更多的值。若SSD之預測服務壽命不大於服務壽命目標,接著在步驟416中,虛擬器122重映射在網路器械100中SSD110之間的一或多個命名空間,使得映射至該特定SSD的命名空間具有較低總體使用及耗損率,或者告知網路器械100之管理者需要額外的OP以符合該服務壽命目標。在另一實施例中,若SSD之預測服務壽命不大於服務壽命目標,則虛擬器122降低SSD之顯露的邏輯容量,其增加OP。
在一實施例中,遙測資料庫116在約一小時或一天一次的頻率來更新,並且分析引擎120在約一星期或約每兩星期一次的頻率來產生用於SSD 110的預測服務壽命。藉由使用代表用於映射至SSD 110中命名空間的實際工作量及耗損的遙測資料庫116中的歷史遙測資料,分析引擎120能夠產生比從SSD傳統耗損指標的外插(extrapolation)更準確地代表驅動器的服務壽命的預測服務壽命。
圖5為依據本發明之一實施例用於決定固態儲存驅動器之預測服務壽命之方法步驟的流程圖。在步驟510中,分析引擎120等於零的時間索引「t」。該時間索引代表時間單位的數目。在一實施例中,時間單位為小時,因而時間索引之值代表小時的數目。在步驟512中,分析引擎120更新預主機寫入強度變數(WIH )。該預測主機寫入強度係為其值代表由SSD 110從個各主機或他們的某種聚合(aggregate)(表達為在一段時間上位元組之數目)接收的寫入之估計速率。分析引擎120藉由從儲存在遙測資料庫116中儲存的主機寫入資料分析歷史主機寫入速率來計算該預測主機寫入強度。此計算可在每命名空間或每主機的基礎上或是在命名空間或主機之較粗略的聚合上完成。在一實施例中,分析引擎120識別在一段時間之上主機寫入活動中局部最大(maxima),以及基於在時間上最大值發生過去了多久來加權他們的值。例如,若最大主機寫入速率在過去已發生相當的一段周期時間(例如,兩年前),該值被加權比若最近發生該最大主機寫入速率(例如,六小時前)還少。在步驟514中,分析引擎120基於有效OP(OPeff )和寫入放大因子常數(kWAF )來決定寫入放大因子(WAF(tn ))。在一實施例中,基於會從對具有給定有效OP的命名空間而均勻分佈隨機寫入的型樣引起的理論「最差情形」寫入放大因子來建模寫入放大因子。寫入放大因子常數為基於歷史媒體寫入和主機寫入的比率來經驗地決定的純量值。在一實施例中,寫入放大因子常數具有在0和1(包含)之間的值。
在步驟516中,分析引擎120基於預測主機寫入強度和寫入放大因子來決定編程/抹除週期(nPE(tn+1 ))的預測數目。編程/抹除週期之預測數目為代表在未來將已發生預定時間(例如從目前時間起一小時)的編程/抹除週期的數目之預測的值。在一實施例中,預測主機寫入強度與寫入放大因子的乘積(product)為用於SSD 110的預測寫入媒體強度。分析引擎120將預測寫入媒體強度乘以得自於快閃媒體之物體特性的常數,用以產生編程/抹除週期的預測數目。該常數的值取決於快閃頁面在位元組上的大小以及在區塊中頁面的數目,如對於編程的page_bytes * pages_per_block(頁面位元組之數目乘以每區塊頁面之數目)位元組,必須進行區塊抹除。在步驟518中,分析引擎120基於編程/抹除週期的預測數目、目前原始位元錯誤率分佈,以及隨編程/抹除週期的變化率觀察的原始位元錯誤率的變化率來決定在SSD 110中快閃記憶體之上的預測原始位元錯誤率分佈。在一實施例中,原始位元錯誤率分佈為針對在該SSD 110中快閃記憶體之所有頁面(或比區塊更小的另一單元)的原始位元錯誤率之直方圖。在此實施例中,分析引擎120預測此直方圖的形狀將如何在一段時間上變化,因為直方圖的「尾部」指示該原始位元錯誤率對於其已到達無法更正值的快閃記憶體的量。藉由追蹤跨SSD 110之快閃記憶體的原始位元錯誤率分佈而取代假定該原始位元錯誤率對於在SSD 110中所有快閃記憶體是恆定的,分析引擎120能夠針對SSD 110提供比從傳統SSD耗損指標進行外插更準確的預測服務壽命。
在步驟520中,分析引擎120基於編程/抹除週期之預測數目、預測原始位元錯誤率分佈以及壞區塊經驗常數(kBB )來決定壞區塊的預測數目(nBbad (tn+1 ))。在步驟522中,分析引擎120基於預測原始位元錯誤率分佈和壞區塊的預測數目來決定預測的有效OP。在一實施例中,分析引擎120決定由壞區塊的預測數目以及由需要將預測原始位元錯誤率分佈定址的額外錯誤校正所消耗的實體容量的量,並且從目前有效OP扣除該實體容量。在步驟524中,分析引擎120將時間索引增加了1。例如,當時間索引反映小時的數目時,時間索引被增加了1小時。
在步驟526中,分析引擎120查找或計算與預測的原始位元錯誤率分佈關聯的效能等級(performance level),其中該原始位元錯誤率典型地反向相關於效能。在原始位元錯誤率中增加將引起在SSD中錯誤校正活動上的增加,其可導致能夠處置較多錯誤數目的增強錯誤校正階段,包括了使用將快閃記憶體讀取除役和使用更計算密集(compute-intensive)錯誤校正譯碼方案,像是LDPC(低密度同位碼)和QSBC(四重擺動碼)。此增強階段一般將導入較高延遲,特別是在解碼期間,其造成增加的讀取延遲和較低的資料傳輸量(data throughput)。用於給定原始位元錯誤率的效能等級可例如藉由在預期SSD之使用期限之上受到各種工作量的SSD上收集測量資料(其可藉由像是使用高溫加速老化來模擬)或是基於正使用的錯誤校正方案之已知延遲來計算。在一實施例中,分析引擎120使用查找表(look up table)來識別與預測原始位元錯誤率分佈關聯的效能等級。在步驟528中,分析引擎120決定與預測原始位元錯誤率分佈關聯的效能等級是否為可接受的。在一實施例中,分析引擎120決定效能等級是否超過預定臨限。若預測的效能等級為可接受的,則接著方法回到步驟512。若預測的效能等級非為可接受的,亦即,若效能等級指示SSD不再符合其保證的效能,則接著在步驟530中,加進t的值的SSD之目前齡期被界定為該SSD之預測服務壽命。
如上面所提出的,圖5之方法在一段時間間隔之上(像是1小時)針對反映出基於由SSD經歷的實際使用及耗損的SSD之效能的屬性產生一連串的預測值。當SSD之預測效能變的不可接受時,與該預測關聯的時間提供SSD的預測服務壽命。預測服務壽命允許SSD之超容量快取的量在一段時間之上被動態地調整,用以相應地最大化從購買SSD了解到的值。
本發明之各種態樣的其它客體、益處及實施例將對於本發明的領域中具有通常知識之該些者是明白的並且在發明說明及附圖的範圍內。例如(但非限制),可與本發明相符合地重佈設結構或功能元件,或重排序方法步驟。同樣地,機器可包含單一實例或複數個機器,這樣的複數可能包含一同提供指示功能的多類型的機器。在各種實施例中說明的機器類型並非意味限制可在本發明態樣的實施例中使用的機器之可能類型,而也可實施可完成類似任務的其它機器。同樣地,依據本發明之原理,體現他們的方法及系統可以被應用到其它範例中,其即使未於此具體詳細地說明,仍然會在本發明的範圍內。
100‧‧‧網路器械
101‧‧‧網路器械
110‧‧‧固態儲存驅動器
112‧‧‧映射層
114‧‧‧主機
116‧‧‧遙測資料庫
118‧‧‧匯流排
120‧‧‧分析引擎
122‧‧‧虛擬器
124‧‧‧供應機構
132‧‧‧主機輸入/輸出(I/O)監視器
134‧‧‧固態儲存驅動器輸入/輸出(SSD I/O)監視器
136‧‧‧固態儲存驅動器(SSD)狀態監視器
210‧‧‧匯流排介面
212‧‧‧控制器
214‧‧‧外部動態隨機存取記憶體(DRAM)
218‧‧‧反及閘型(NAND)裝置
220‧‧‧快閃轉譯層
230‧‧‧監控功能
242‧‧‧通道
244‧‧‧通道
246‧‧‧通道
248‧‧‧通道
310‧‧‧主機使用區
312‧‧‧媒體使用區
314‧‧‧耗損資料區
圖1A為依據本發明包括固態儲存驅動器陣列的網路器械之一實施例的圖。
圖1B為依據本發明包括固態儲存驅動器陣列的網路器械之一實施例的圖。
圖2為依據本發明圖1A之網路器械的固態儲存驅動器之一實施例的圖。
圖3為依據本發明固態儲存驅動器陣列遙測資料庫之一實施例的圖。
圖4為依據本發明之一實施例用於在固態儲存驅動器陣列中工作量適應超容量快取之方法步驟的流程圖。
圖5為依據本發明之一實施例用於決定固態儲存驅動器之預測服務壽命之方法步驟的流程圖。

Claims (22)

  1. 一種用於管理在固態儲存驅動器陣列中的超容量快取的方法,包含: 從複數個固態儲存驅動器之各者接收使用資料; 基於至少該使用資料決定用於該複數個固態儲存區動器之各者的預測服務壽命值; 將預測服務壽命值與用於各個分別固態儲存驅動器的預定服務壽命值比較;以及 基於比較之步驟的結果對於該複數個固態儲存驅動器之至少一者動態地調整可用邏輯儲存容量。
  2. 如申請專利範圍第1項的方法,其中對於該複數個固態儲存驅動器至少一者動態調整該可用邏輯儲存空間的步驟包含:基於用於該固態儲存驅動器的該預定服務壽命值大於用於該固態儲存驅動器的該預定服務壽命值的結果增加該固態儲存驅動器之該可用邏輯容量。
  3. 如申請專利範圍第1項的方法,更包含: 基於用於該複數個固態儲存驅動器至少一者的該預測服務壽命值不大於用於該固態儲存驅動器的該預定服務壽命值的結果來重新分配該複數個固態儲存驅動器之間該複數個固態儲存驅動器之至少一者中的至少一命名空間。
  4. 如申請專利範圍第1項的方法,更包含: 基於用於該複數個固態儲存驅動器之至少一者的該預測服務壽命值不大於用於該固態儲存驅動器的該預定服務壽命值的結果來降低用於該複數個固態儲存驅動器之至少一者的可用邏輯儲存容量。
  5. 如申請專利範圍第1項的方法,其中該使用資料包含主機使用資料和媒體使用資料。
  6. 如申請專利範圍第5項的方法,其中該主機使用資料包含從主機寫入的若干資料位元組,並且該媒體使用資料包括寫入至實體記憶體的若干資料位組。
  7. 如申請專利範圍第1項的方法,更包含:從該複數個固態儲存驅動器接收耗損資料,且其中對於該複數個固態儲存驅動器之各者決定該預測服務壽命值的步驟係基於該使用資料和該耗損資料。
  8. 如申請專利範圍第1項的方法,其中對於該複數個固態儲存驅動器之各者決定該預測服務壽命值的步驟包含: 在一連串時間索引之增加值之上對於該固態儲存驅動器決定預測原始位元錯誤率分佈,直到該預測原始位元錯誤率分佈超過指示不可接受之效能的臨限為止;以及 將用於該固態儲存驅動器的該預測服務壽命值界定為該固態儲存驅動器之目前齡期加上當該預測原始位元錯誤率超過該臨限時的目前時間索引之值。
  9. 如申請專利範圍第8項的方法,其中決定該預測原始錯誤率分佈係基於目前原始錯誤比分佈與預測在該固態儲存驅動器中預定未來時間上會發生的編程/抹除週期之數目。
  10. 如申請專利範圍第9項的方法,其中預測在預定未來時間上會發生的編程/抹除週期之數目係基於用於該固態儲存驅動器的預測寫入放大因子。
  11. 如申請專利範圍第10項的方法,其中該預測寫入放大因子係基於用於該固態儲存驅動器的有效超容量快取值。
  12. 一種用於管理在固態儲存驅動器陣列中的超容量快取的系統,包含: 複數個固態儲存驅動器,各個固態儲存驅動器組構以記錄使用資料; 通訊地耦接至該複數個固態儲存驅動器之各者的驅動狀態監視器,該驅動狀態監視器組構以從該複數個固態儲存驅動器之各者請求使用資料; 遙測資料庫,組構以儲存在一段時間周期之上從該驅動狀態監視器接收的一連串該使用資料之值; 通訊地耦接至該遙測資料庫的分析引擎,該分析引擎組構以基於至少該使用資料決定該複數個固態儲存驅動器之各者的預測服務壽命值;以及 通訊地耦接至該分析引擎的虛擬器,該虛擬器組構以基於用於該固態儲存驅動器的該預測服務壽命值對用於該固態儲存驅動器的預定服務壽命值比較的結果來動態地調整用於該複數個固態儲存驅動器之至少一者的可用邏輯儲存容量。
  13. 如申請專利範圍第12項的系統,其中該虛擬器係組構以基於用於該固態儲存驅動器的該預測服務壽命值大於用於該固態儲存驅動器的該預定服務壽命值的結果來增加用於該複數個固態儲存驅動器之至少一者的該可用邏輯儲存容量。
  14. 如申請專利範圍第12項的系統,其中該虛擬器更組構以基於用於該固態儲存驅動器的該預測服務壽命值不大於用於該固態儲存驅動器的該預定服務壽命值的結果來重新分配該複數個固態儲存驅動器之間該複數個固態儲存驅動器之至少一者中的至少一命名空間。
  15. 如申請專利範圍第12項的系統,其中該虛擬器更組構以基於用於該固態儲存驅動器的該預測服務壽命值不大於用於該固態儲存驅動器的該預定服務壽命值的結果來降低用於該複數個固態儲存驅動器之至少一者的可用邏輯儲存容量。
  16. 如申請專利範圍第12項的系統,其中該使用資料包含主機使用資料和媒體使用資料。
  17. 如申請專利範圍第16項的系統,其中該主機使用資料包含從主機寫入的若干資料位元組,並且該媒體使用資料包括寫入至實體記憶體的若干資料位組。
  18. 如申請專利範圍第12項的系統,其中該驅動狀態監視器更組構以從該複數個固態儲存驅動器請求耗損資料,且其中該分析引擎係組構以基於該使用資料和該耗損資料來決定用於該複數個固態儲存驅動器之各者的該預測服務壽命值。
  19. 如申請專利範圍第12項的系統,其中該分析引擎係組構以藉由下列步驟對於該複數個固態儲存驅動器之各者決定該預測服務壽命值: 在一連串時間索引之增加值之上決定用於該固態儲存驅動器的預測原始位元錯誤率分佈,直到該預測原始位元錯誤率分佈超過指示不可接受之效能的臨限為止;以及 將用於該固態儲存驅動器的該預測服務壽命值界定為該固態儲存驅動器之目前齡期加上當該預測原始位元錯誤率超過該臨限時的目前時間索引之值。
  20. 如申請專利範圍第19項的系統,其中該分析引擎係組構以基於目前原始位元錯誤比分佈與預測在該固態儲存驅動器中預定未來時間上會發生的編程/抹除週期之數目來決定該預測原始位元錯誤率分佈。
  21. 如申請專利範圍第20項的系統,其中該分析引擎係組構以基於用於該固態儲存驅動器的預測寫入放大因子來決定預測在預定未來時間上會發生的編程/抹除週期的數目。
  22. 如申請專利範圍第21項的系統,其中該分析引擎系組構以基於用於該固態儲存驅動器的有效超容量快取來決定該預測寫入放大因子。
TW108107449A 2018-03-08 2019-03-06 在固態儲存驅動器陣列中的工作量適應超容量快取 TWI740110B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/915,716 US11132133B2 (en) 2018-03-08 2018-03-08 Workload-adaptive overprovisioning in solid state storage drive arrays
US15/915,716 2018-03-08

Publications (2)

Publication Number Publication Date
TW201945921A true TW201945921A (zh) 2019-12-01
TWI740110B TWI740110B (zh) 2021-09-21

Family

ID=67843997

Family Applications (2)

Application Number Title Priority Date Filing Date
TW108107449A TWI740110B (zh) 2018-03-08 2019-03-06 在固態儲存驅動器陣列中的工作量適應超容量快取
TW110129894A TWI803940B (zh) 2018-03-08 2019-03-06 在固態儲存驅動器陣列中的工作量適應超容量快取

Family Applications After (1)

Application Number Title Priority Date Filing Date
TW110129894A TWI803940B (zh) 2018-03-08 2019-03-06 在固態儲存驅動器陣列中的工作量適應超容量快取

Country Status (4)

Country Link
US (2) US11132133B2 (zh)
JP (1) JP7123833B2 (zh)
CN (2) CN116881177A (zh)
TW (2) TWI740110B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI774255B (zh) * 2020-05-04 2022-08-11 威盛電子股份有限公司 橋接電路與電腦系統
US11442882B2 (en) 2020-05-04 2022-09-13 Via Technologies Inc. Bridge circuit for providing conversion between PCIe-NVMe protocol and NVMe-TCP protocol and computer system using the same
TWI779300B (zh) * 2019-06-14 2022-10-01 大陸商華為技術有限公司 一種硬碟控制方法及相關設備

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110010518A1 (en) 2005-12-19 2011-01-13 Srinivas Kavuri Systems and Methods for Migrating Components in a Hierarchical Storage Network
US10275320B2 (en) 2015-06-26 2019-04-30 Commvault Systems, Inc. Incrementally accumulating in-process performance data and hierarchical reporting thereof for a data stream in a secondary copy operation
US10831591B2 (en) 2018-01-11 2020-11-10 Commvault Systems, Inc. Remedial action based on maintaining process awareness in data storage management
US11119662B2 (en) 2018-06-29 2021-09-14 International Business Machines Corporation Determining when to perform a data integrity check of copies of a data set using a machine learning module
US11119850B2 (en) * 2018-06-29 2021-09-14 International Business Machines Corporation Determining when to perform error checking of a storage unit by using a machine learning module
US11099743B2 (en) * 2018-06-29 2021-08-24 International Business Machines Corporation Determining when to replace a storage device using a machine learning module
US10847245B2 (en) * 2018-08-24 2020-11-24 Intel Corporation Failure indicator predictor (FIP)
US20200192572A1 (en) 2018-12-14 2020-06-18 Commvault Systems, Inc. Disk usage growth prediction system
US10930365B2 (en) 2019-02-21 2021-02-23 Intel Corporation Artificial intelligence based monitoring of solid state drives and dual in-line memory modules
US11055249B2 (en) 2019-06-25 2021-07-06 Micron Technology, Inc. Access optimization in aggregated and virtualized solid state drives
US11513923B2 (en) 2019-06-25 2022-11-29 Micron Technology, Inc. Dynamic fail-safe redundancy in aggregated and virtualized solid state drives
US11762798B2 (en) * 2019-06-25 2023-09-19 Micron Technology, Inc. Aggregated and virtualized solid state drives with multiple host interfaces
US10942846B2 (en) 2019-06-25 2021-03-09 Micron Technology, Inc. Aggregated and virtualized solid state drives accessed via multiple logical address spaces
US11768613B2 (en) * 2019-06-25 2023-09-26 Micron Technology, Inc. Aggregation and virtualization of solid state drives
US11573708B2 (en) 2019-06-25 2023-02-07 Micron Technology, Inc. Fail-safe redundancy in aggregated and virtualized solid state drives
US10942881B2 (en) * 2019-06-25 2021-03-09 Micron Technology, Inc. Parallel operations in aggregated and virtualized solid state drives
US11049570B2 (en) * 2019-06-26 2021-06-29 International Business Machines Corporation Dynamic writes-per-day adjustment for storage drives
US11163482B2 (en) 2019-06-26 2021-11-02 International Business Machines Corporation Dynamic performance-class adjustment for storage drives
US11137915B2 (en) * 2019-06-27 2021-10-05 International Business Machines Corporation Dynamic logical storage capacity adjustment for storage drives
US11256595B2 (en) * 2019-07-11 2022-02-22 Dell Products L.P. Predictive storage management system
US11150812B2 (en) * 2019-08-20 2021-10-19 Micron Technology, Inc. Predictive memory management
US11042322B2 (en) 2019-09-13 2021-06-22 Toshiba Memory Corporation SSD supporting low latency operation
CN111142796A (zh) * 2019-12-20 2020-05-12 北京浪潮数据技术有限公司 一种ssd寿命预测方法、装置、设备及可读存储介质
CN112000497B (zh) * 2020-08-20 2022-03-08 苏州浪潮智能科技有限公司 固态硬盘的寿命预测方法、装置及计算机可读存储介质
US11947806B2 (en) * 2020-11-03 2024-04-02 Micron Technology, Inc. Life expectancy monitoring for memory devices
CN115620793A (zh) * 2021-07-12 2023-01-17 长鑫存储技术有限公司 一种半导体存储器及其上存储块的容量配置方法
EP4377959A1 (en) * 2021-07-30 2024-06-05 Robert Bosch GmbH A method to extend lifespan of an electronic control unit (ecu) and the ecu thereof
US20230067208A1 (en) * 2021-08-30 2023-03-02 Kioxia Corporation Workload-Adaptive Overprovisioning in Solid State Storage Drive Arrays
US20230195354A1 (en) * 2021-12-22 2023-06-22 Micron Technology, Inc. Adaptive scans of memory devices of a memory sub-system
CN116610249A (zh) * 2022-02-09 2023-08-18 华为云计算技术有限公司 一种ssd的规格参数的调节方法及相关产品
US11995321B2 (en) * 2022-05-25 2024-05-28 Micron Technology, Inc. Lifespan forecasting of memory devices and predictive device health management

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7653778B2 (en) 2006-05-08 2010-01-26 Siliconsystems, Inc. Systems and methods for measuring the useful life of solid-state storage devices
WO2009124320A1 (en) * 2008-04-05 2009-10-08 Fusion Multisystems, Inc. Apparatus, system, and method for bad block remapping
US9720616B2 (en) * 2008-06-18 2017-08-01 Super Talent Technology, Corp. Data-retention controller/driver for stand-alone or hosted card reader, solid-state-drive (SSD), or super-enhanced-endurance SSD (SEED)
JP2010061578A (ja) 2008-09-05 2010-03-18 Jds:Kk 半導体記憶装置の使用限界予想解析用プログラム又はシステム
US9274714B2 (en) 2008-10-27 2016-03-01 Netapp, Inc. Method and system for managing storage capacity in a storage network
US8479080B1 (en) * 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8464106B2 (en) * 2009-08-24 2013-06-11 Ocz Technology Group, Inc. Computer system with backup function and method therefor
US8489966B2 (en) * 2010-01-08 2013-07-16 Ocz Technology Group Inc. Solid-state mass storage device and method for failure anticipation
US8214580B2 (en) * 2009-10-23 2012-07-03 International Business Machines Corporation Solid state drive with adjustable drive life and capacity
EP2549482B1 (en) 2011-07-22 2018-05-23 SanDisk Technologies LLC Apparatus, system and method for determining a configuration parameter for solid-state storage media
CN103176752A (zh) * 2012-07-02 2013-06-26 晶天电子(深圳)有限公司 带有耐用转换层及临时文件转移功能从而实现闪速存储器磨损降低的超耐用固态驱动器
US9141532B2 (en) * 2012-12-26 2015-09-22 Western Digital Technologies, Inc. Dynamic overprovisioning for data storage systems
US9804960B2 (en) * 2013-03-14 2017-10-31 Western Digital Technologies, Inc. Overprovision capacity in a data storage device
AU2013397052B2 (en) * 2013-06-29 2016-09-29 Huawei Technologies Co., Ltd. Storage array management method and device, and controller
US9317367B2 (en) * 2013-08-01 2016-04-19 Globalfoundries Inc. Re-distributing high usage data in a raid solid state drive array
US10073630B2 (en) 2013-11-08 2018-09-11 Sandisk Technologies Llc Systems and methods for log coordination
US9619381B2 (en) 2013-12-24 2017-04-11 International Business Machines Corporation Collaborative health management in a storage system
US20150261451A1 (en) 2014-03-13 2015-09-17 International Business Machines Corporation Lifecycle management of solid state memory adaptors
US9348761B1 (en) 2014-06-30 2016-05-24 Emc Corporation Weighted-value consistent hashing for balancing device wear
US9569120B2 (en) 2014-08-04 2017-02-14 Nvmdurance Limited Adaptive flash tuning
US9158681B1 (en) * 2014-09-02 2015-10-13 Sandisk Technologies Inc. Process and apparatus to reduce declared capacity of a storage device by conditionally trimming
US10120592B2 (en) 2014-09-26 2018-11-06 Hitachi, Ltd. Storage device and maintenance/operation system therefor
US9678677B2 (en) * 2014-12-09 2017-06-13 Intel Corporation Determining adjustments to the spare space in a storage device unavailable to a user based on a current consumption profile of a storage device
WO2016117026A1 (ja) 2015-01-20 2016-07-28 株式会社日立製作所 ストレージシステム
US9372628B1 (en) * 2015-01-23 2016-06-21 International Business Machines Corporation Deduplication tracking for accurate lifespan prediction
US9696935B2 (en) 2015-04-24 2017-07-04 Kabushiki Kaisha Toshiba Storage device that secures a block for a stream or namespace and system having the storage device
JPWO2016175028A1 (ja) 2015-04-28 2018-02-22 日本電気株式会社 情報処理システム、記憶制御装置、記憶制御方法および記憶制御プログラム
JP6403162B2 (ja) 2015-07-23 2018-10-10 東芝メモリ株式会社 メモリシステム
JP6554990B2 (ja) 2015-08-11 2019-08-07 富士通株式会社 ストレージ制御装置およびストレージ制御プログラム
US10235057B2 (en) * 2015-09-04 2019-03-19 Western Digital Technologies, Inc. Operating parameters for flash memory devices
US20170131948A1 (en) 2015-11-06 2017-05-11 Virtium Llc Visualization of usage impacts on solid state drive life acceleration
US20170131947A1 (en) 2015-11-06 2017-05-11 Pho Hoang Data and collection methods to analyze life acceleration of SSD with real usages
JP6286622B2 (ja) 2015-11-27 2018-02-28 株式会社日立製作所 ストレージシステム
US9946483B2 (en) 2015-12-03 2018-04-17 Sandisk Technologies Llc Efficiently managing unmapped blocks to extend life of solid state drive with low over-provisioning
JP6523193B2 (ja) 2016-03-08 2019-05-29 東芝メモリ株式会社 ストレージシステム、情報処理システムおよび制御方法
US10055159B2 (en) 2016-06-20 2018-08-21 Samsung Electronics Co., Ltd. Morphic storage device
US10474371B1 (en) * 2016-06-30 2019-11-12 EMC IP Holding Company LLC Method and apparatus for SSD/flash device replacement policy
US10372606B2 (en) * 2016-07-29 2019-08-06 Samsung Electronics Co., Ltd. System and method for integrating overprovisioned memory devices
US10032488B1 (en) * 2016-12-29 2018-07-24 Sandisk Technologies Llc System and method of managing data in a non-volatile memory having a staging sub-drive
US20180275922A1 (en) * 2017-03-27 2018-09-27 Siamack Nemazie Solid State Disk with Consistent Latency
US10452536B2 (en) * 2017-06-12 2019-10-22 Western Digital Technologies, Inc. Dynamic management of garbage collection and overprovisioning for host stream storage

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI779300B (zh) * 2019-06-14 2022-10-01 大陸商華為技術有限公司 一種硬碟控制方法及相關設備
TWI774255B (zh) * 2020-05-04 2022-08-11 威盛電子股份有限公司 橋接電路與電腦系統
US11442882B2 (en) 2020-05-04 2022-09-13 Via Technologies Inc. Bridge circuit for providing conversion between PCIe-NVMe protocol and NVMe-TCP protocol and computer system using the same

Also Published As

Publication number Publication date
US11132133B2 (en) 2021-09-28
CN110245093A (zh) 2019-09-17
US20190278498A1 (en) 2019-09-12
JP2019169141A (ja) 2019-10-03
TW202213067A (zh) 2022-04-01
US11693568B2 (en) 2023-07-04
CN110245093B (zh) 2023-07-25
US20220004327A1 (en) 2022-01-06
CN116881177A (zh) 2023-10-13
JP7123833B2 (ja) 2022-08-23
TWI740110B (zh) 2021-09-21
TWI803940B (zh) 2023-06-01

Similar Documents

Publication Publication Date Title
TWI803940B (zh) 在固態儲存驅動器陣列中的工作量適應超容量快取
US9298534B2 (en) Memory system and constructing method of logical block
US20210182166A1 (en) Zoned namespace management of non-volatile storage devices
US9811288B1 (en) Managing data placement based on flash drive wear level
US10324633B2 (en) Managing SSD write quotas in data storage systems
US10254970B1 (en) System, method and computer readable medium for obtaining consistent read performance for a plurality of flash drives or raid groups using workload and capacity limits
US9940033B1 (en) Method, system and computer readable medium for controlling performance of storage pools
US9965218B1 (en) Techniques using multiple service level objectives in connection with a storage group
US9507887B1 (en) Adaptive techniques for workload distribution across multiple storage tiers
US10282107B1 (en) Controlling I/O response time to meet service levels
US10338825B2 (en) Managing SSD wear rate in hybrid storage arrays
JP5844473B2 (ja) 複数の不揮発性の半導体記憶媒体を有し、ホットデータを長寿命記憶媒体に配置しコールドデータを短寿命記憶媒体に配置するストレージ装置、及び、記憶制御方法
US20190188058A1 (en) Using response time objectives in a storage system
US10318163B2 (en) Balancing SSD wear in data storage systems
US10222984B1 (en) Managing multi-granularity flash translation layers in solid state drives
US10261717B1 (en) Optimizing performance of snapshots based on service level objectives
US11899952B2 (en) Lossless namespace metadata management system
US9946465B1 (en) Adaptive learning techniques for determining expected service levels
US10809931B1 (en) Techniques for use with physical media types having varying allowable write quotas
US20200285391A1 (en) Retention-aware data tiering algorithm for hybrid storage arrays
US20220147279A1 (en) Heat management solid-state data storage system
KR102302649B1 (ko) 고체-상태 드라이브들에 대한 동적 대역폭 리포팅
CN113924546A (zh) 非易失性存储器中的磨损感知块模式转换
US11061814B1 (en) Managing data storage caching and tiering
US9652352B1 (en) Techniques for storage capacity configuration