CN106055435A - 在部署时验证存储介质 - Google Patents
在部署时验证存储介质 Download PDFInfo
- Publication number
- CN106055435A CN106055435A CN201610239371.4A CN201610239371A CN106055435A CN 106055435 A CN106055435 A CN 106055435A CN 201610239371 A CN201610239371 A CN 201610239371A CN 106055435 A CN106055435 A CN 106055435A
- Authority
- CN
- China
- Prior art keywords
- storage
- subregion
- storage medium
- processing system
- identify
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/48—Arrangements in static stores specially adapted for testing by means external to the store, e.g. using direct memory access [DMA] or using auxiliary access paths
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test input/output devices or peripheral units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2247—Verification or detection of system hardware configuration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3485—Performance evaluation by tracing or monitoring for I/O 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/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0401—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals in embedded memories
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Debugging And Monitoring (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
在此描述的是用于在部署时验证存储介质和存储子系统的系统、方法和软件。在一个示例中,用于测试存储子系统中的存储介质的计算机装置包括处理指令,其命令计算系统识别存储子系统的启动,启动所述存储介质的测试处理,并且识别用于所述存储介质的分区可用性事件。所述处理指令还命令所述计算系统响应于所述分区可用性事件而使得所述存储介质的分区对于主机处理系统可用,其中所述分区包括经由所述测试处理测试的所述存储介质中的存储位置,并且在所述存储介质上继续所述测试处理。所述计算机装置还包括:存储所述处理指令的一个或多个非瞬时计算机可读介质。
Description
背景技术
诸如硬盘驱动器和固态驱动器之类的存储子系统提供用于主机处理系统存储和读取各种数据对象存储介质。这些数据对象可以包括图像、视频、文字文档、电子表单以及能够由主机处理系统处理的各种其它文件类型。为了使得存储介质对于主机系统可用,可以使用小型计算机系统接口(SCSI)总线、串行连接SCSI(SAS)总线、串行ATA(SATA)总线、外围组件互连高速(PCIe)总线、光纤信道或一些其它相似的接口或总线,将子系统中的一个或多个通信地耦接到系统。
在将存储子系统通信地耦接到主机处理系统之前,子系统内的区域可以在制造商处进行测试或验证,以确保区域对于端计算系统处的用户可用。因此,当子系统耦接时,任何不能存储数据的子系统的分段或部分对于用户将是不可见的。然而,随着制造商所生产的驱动器大小和驱动器数量已经增加,在将驱动器提供给端用户之前测试和验证子系统内的部分已经变得更低效。
发明内容
在此所公开的示例提供在部署时测试存储介质和存储子系统的系统、方法和软件。在一个示例中,一种测试用于主机处理系统的存储子系统的计算机装置,包括:一个或多个非瞬时计算机可读介质;以及处理指令,其被存储在一个或多个非瞬时计算机可读介质上,其命令(direct)处理系统:当部署包括存储介质的存储子系统时,启动测试处理,以识别(identify)存储介质中的适用于存储主机处理系统的数据的存储块。所述处理指令进一步命令所述处理系统:在启动所述测试处理之后,反复地(iteratively)识别分区可用性事件。所述处理指令还命令所述处理系统:响应于分区可用性事件中的每个分区可用性事件,使得存储介质的分区对于主机处理系统可用,其中所述分区包括经由所述测试处理所测试的存储块的集合,所述存储块不同于先前被使得对于主机处理系统可用的分区中的其它存储块。
在另一实例中,一种在部署时测试存储介质的存储子系统,包括:存储介质;以及存储处理系统,被配置为:当在具有主机处理系统的计算系统中部署存储子系统时,启动测试处理,以识别存储介质中的适用于存储主机处理系统的数据的存储块。所述存储处理系统进一步被配置为:在启动所述测试处理之后,反复地识别分区可用性事件。所述存储处理系统进一步被配置为:响应于分区可用性事件中的每个分区可用性事件,使得存储介质的分区对于主机处理系统可用,其中所述分区包括经由所述测试处理所测试的存储块的集合,所述存储块不同于先前被使得对于主机处理系统可用的分区中的其它存储块。
在另一示例中,一种主机计算系统,包括:主机处理系统;以及存储子系统,包括存储介质和存储处理系统,其中,所述存储处理系统被配置为:当在计算系统中部署存储子系统时,启动测试处理,以识别存储介质中的适用于存储主机处理系统的数据的存储块。所述存储处理系统进一步被配置为:在启动所述测试处理之后,反复地识别分区可用性事件。所述存储处理系统还被配置为:响应于分区可用性事件中的每个分区可用性事件,使得存储介质的分区对于主机处理系统可用,其中所述分区包括经由所述测试处理所测试的存储块的集合,所述存储块不同于先前被使得对于主机处理系统可用的分区中的其它存储块。
附图说明
以下的描述和相关联的附图教导本发明的最佳模式。为了教导本发明原理的目的,可以简化或省略最佳模式的一些传统方面。所附权利要求指定本发明的范围。注意,最佳模式的一些方面可以不落入由权利要求所指定的本发明的范围内。因此,本领域技术人员应当理解落入本发明的范围内的根据最佳模式的变型。本领域技术人员应当理解,以下所描述的特征可以通过各种方式进行组合,以形成本发明的多个变型。因此,本发明不限于以下所描述的具体示例,而仅由权利要求及其等同物限定。
图1是示出用于在部署时测试存储介质的计算系统的框图。
图2是示出用于测试存储介质的存储处理系统的操作的流程图。
图3是示出所部署的存储介质的分区的流程图。
图4是示出将新存储分区提供给主机处理系统的概述的框图。
图5是示出将存储子系统添加到计算环境的概述的框图。
图6是示出用于在部署时测试新存储子系统的计算系统的框图。
具体实施方式
诸如硬盘驱动器、固态驱动器以及混合固态/硬盘驱动器之类的存储子系统通常用于计算系统中,以存储用于主机处理系统的数据对象。这些数据对象通常包括音频文件、电影文件、文字文档、电子表单、图像或任何其它类型的文件。为了使得存储子系统对于主机处理系统是可用的,存储子系统必须通信地链接到主机处理系统,以使能这两个系统之间的通信。这种通信链接可以包括小型计算机系统接口(SCSI)总线、串行连接SCSI(SAS)总线、串行ATA(SATA)总线、外围组件互连高速(PCIe)总线、光纤信道或一些其它相似的接口或总线。
如在此所描述的,附接(attached)到主机处理系统的存储子系统包括在发布之前制造商对于存储数据未测试或验证的存储介质。因此,在可以执行任何操作(诸如,从存储子系统存储和读取)之前,存储介质中的存储块必须由处理系统进行测试。通过在所部署的计算系统上而非在制造设备期间测试存储子系统,对于另外可以由所部署的计算系统执行的任务可以节省时间和资源。
在一些示例中,位于存储子系统上的存储处理系统用于测试或验证存储介质中的存储块。具体地,存储处理系统识别在计算系统中何时启动或部署设备,并且启动存储介质的测试处理,其中测试处理可以验证扇区可用于存储数据、确保介质的部分未破损、或者另外确保介质可用于存储数据。在测试期间,存储处理系统反复地识别分区可用性事件,并且基于所述事件使得新分区对于主机处理系统是可用的。这些新分区对应于已经完成测试处理的存储块的逻辑块地址(LBA),并且对于主机处理系统存储数据对象是可用的。
在至少一个示例中,主机处理系统可以管理包括任何数量的存储子系统和存储分区的分布式文件系统(DFS)。因此,当分区或分组的LBA经由测试处理变得可用时,可以将分区添加到可经由主机处理系统存取的分布式文件系统。
转到作为示例的图1,图1是示出用于在部署时测试存储介质的计算系统100的框图。计算系统100包括存储子系统110和主机处理系统130。存储子系统110还包括存储介质101、存储处理系统120和存储接口115。存储处理系统120通过通信链路140通信地耦接到存储介质101,并且进一步通过通信链路141通信地耦接到存储接口115。主机处理系统130经由通信链路142和存储接口115通信地耦接到存储子系统110。
在操作中,存储子系统(诸如存储子系统110)提供存储介质,以存储用于主机处理系统130的数据对象。该存储介质可以包括硬盘驱动器介质、固态驱动器介质或任何其它相似类型的介质,包括其组合和改进。为了使得存储子系统110对于主机处理系统130是可用的,将驱动器通信地耦接到主机处理系统130,并且在计算系统100内启动或部署该驱动器。一旦启动,就在存储介质101上开始测试,以将多个存储介质分区102-104提供给主机处理系统130。
具体地,存储子系统110中的存储介质101在发布之前关于存储数据未受制造商测试或验证。因此,当部署在计算系统100内时,在可以使得存储介质101内的存储块对于主机处理系统130可用之前,需要测试这些存储块。这种测试可以包括:确定存储介质是否包括任何坏扇区,确定数据是否可以写入到并且读取自介质上的地址,或任何其它相似存储介质测试。一旦已经在介质上测试若干个块地址,就可以供给包括所测试的块地址的存储介质分区,并且将其提供给主机处理系统130以存储数据对象。确定何时供给新分区可以包括:确定何时已经测试完预定义的数量的地址,确定自从测试处理开始预定时间量已经期满(expire),从主机处理系统130识别用于提供新存储介质分区的命令,或一些其它相似的分区可用性事件。
为了进一步展示存储子系统110和存储处理系统120的操作,提供图2。图2是示出用于测试存储介质的存储处理系统的操作200的流程图。操作200包括:识别计算系统100中的存储子系统110的启动或部署,其中存储子系统110包括需要测试或验证的存储介质(201),并且启动存储介质的测试处理(202)。这种测试可以包括:确定存储介质是否包括任何坏扇区,确定数据是否可以写入到并且读取自介质上的块地址,或任何其它相似存储介质测试。如图1所示,存储子系统制造商可能发布具有未验证的存储扇区的驱动器,要求在存储介质可以变为可用之前对存储子系统中的位置运行测试处理。该测试处理可以确保介质不包括错误,确保数据可以存储在介质中的存储位置中的每一个存储位置处,或者介质中的每个位置上的其它各种其它测试。
为了使得所测试的存储介质可用,在操作200中配置存储处理系统120,以识别分区可用性事件(203),并且响应于此而使得存储介质的分区对于主机处理系统130可用,其中分区包括经由测试处理所测试的存储位置(204)。分区可用性事件可以包括:确定何时已经测试完预定义的数量的存储块,确定自从测试处理开始预定时间量已经期满,从主机处理系统130识别用于提供新存储介质分区的命令,或一些其它相似的分区可用性事件。一旦生成分区并且使得该分区对于主机可用,存储处理系统120就继续在所生成的分区中未包含的存储位置上进行测试处理(205)。
例如,返回到图1,当使用主机处理系统130启动存储子系统110时,存储处理系统120启动存储介质101上的测试处理。一旦识别出分区事件,存储处理系统120就识别已经完成测试的存储位置,并且将这些位置作为存储介质分区102提供给主机处理系统130。此外,存储处理系统120继续测试存储介质101中的其余块地址,并且等待后续分区事件以生成存储介质分区103-104。一旦已经测试完所有可用的存储介质,存储处理系统120就停止测试处理。
在一些示例中,可以在发布存储子系统之前测试并且供给存储介质的至少一部分。该所供给的存储介质的部分可以用于在利用主机处理系统部署时启动存储子系统,并且可以进一步启动存储介质上的测试处理。在其它实例中,在由存储处理系统测试其余存储介质的同时,所供给的部分可以包括对于主机处理系统立即可用的预先测试的分区。
参照图3,图3是示出在不同时间实例300-302的所部署的存储介质的分区的流程图。如在时间实例300所描绘的,当在计算系统中部署并且启动存储介质310时,存储子系统310未受测试并且无法包括任何存储介质分区。在由存储处理系统所提供的测试处理期间,测试介质内的存储块,并且使得这些存储块对于主机处理系统可用,以便存储各种数据对象。
在测试处理期间,指示对于新存储介质分区的需求的存储处理系统可以反复地识别分区可用性事件。如在时间实例301中所示的,响应于识别出分区可用性事件,使得存储介质分区320对于主机处理系统可用。存储介质分区320包括已经使用测试处理进行测试和验证并且准备好写入和读取各种数据对象的块地址。虽然生成第一分区,但测试处理继续测试存储介质310内的存储位置,直到测试完整个存储介质并且确定完所有有效存储块为止。
因此,如在时间实例302处所示的,在存储介质310内生成存储介质分区321-322。这些存储介质分区作为后续分区可用性事件的结果而产生,并且包括与存储介质分区320的位置分离并且不同的存储位置。虽然在该实例中未示出,但在一些示例中,存储处理系统可以测试存储介质位置,直到验证完所有存储位置为止。一旦验证完,就可以停止测试处理,并且可以使得所有所测试的存储位置对于主机处理系统可用。
现参照图4,图4是示出将新存储分区提供给主机处理系统的概述400的框图。概述400包括存储子系统410和主机处理系统450。概述400是可以在任何服务计算系统、台式计算系统或任何其它端计算系统中完成的处理的示例。存储子系统410还包括存储介质420和存储处理系统440。存储处理系统440可以包括能够测试存储介质分区并且将其提供给主机处理系统450的任何处理系统。
如图所示,存储处理系统440识别利用主机处理系统450对存储子系统410的启动。这种启动可以发生于以下时候:当存储子系统410通信地耦接到主机处理系统450时,当使用主机处理系统450在计算系统内对存储子系统410提供功率时,或计算系统中的任何其它部署实例。在启动时,存储处理系统440启动存储介质420内的各个存储位置上的测试。如上所述,制造商可能偏好在发布之前在不测试驱动器的情况下发布存储子系统或驱动器。这消除了制造商进行的浪费操作,这些操作可以另外在端计算系统中的发布和部署时完成。
当在存储介质420上执行测试时,存储处理系统440可以识别请求用于主机处理系统450的新分区的分区事件。该分区事件可以发生于以下时候:当已经完成测试预定义的数量的存储位置时,当预定义的测试时间段期满时,当主机处理系统450请求新分区时,或者任何其它实例。例如,存储处理系统440可以被配置为:对于每万亿字节的新存储位置,将新分区提供给主机处理系统450。因此,当存储处理系统440识别出已经测试完新的万亿字节的存储位置时,存储处理系统440可以将该新位置提供给主机处理系统450作为新分区。
在该实例中,存储介质420已经包括分区425-426,每个分区分别具有块地址430-431。然而,由存储处理系统440所运行的测试处理可以继续进行,直到测试完整个存储介质420为止。因此,在识别出分区事件时,存储处理系统440确定第三地址432是可用的,并且生成包括第三地址432的新分区427。一旦生成,就可以经由存储处理系统440将新分区427提供给主机处理系统450,以允许主机处理系统450存储和检索多个数据对象。
在至少一个实例中,主机处理系统450可以管理DFS,该DFS使用多个驱动器、分区和其它计算系统以将单个文件系统视图提供给端用户。因此,主机处理系统450可以不需要单个分区,而可以将新分区添加到文件系统中所使用的存储堆栈。使用该处理,可以利用在此所描述方法来测试任何数量的驱动器或存储子系统并且使得其对于主机处理系统450可用。
为了进一步示出多个存储子系统的部署,提供图5。图5是示出将未测试的存储子系统添加到计算环境的概述500的框图。概述500包括存储子系统510-511和主机处理系统550。存储子系统510-511还包括存储介质520-521和存储处理系统540-541。
如该示例中所示的,存储子系统511当前对于主机处理系统550是可用的。因此,主机处理系统550可以从存储介质521内的分区532-533读取、写入并且删除各种数据对象。然而,当需要另一存储空间时,可以在计算系统内启动存储子系统510,以将附加的存储介质提供给主机处理系统550。在可以包括通信地耦接存储子系统510并且对其进行供能的存储子系统510的启动或部署时,存储处理系统540启动存储介质520中的存储块的测试。这种测试可以包括:确定存储介质是否包括任何坏扇区,确定数据是否可以写入到并且读取自介质上的地址,或任何其它存储介质测试。
在测试存储介质520期间,存储处理系统540识别用于在存储介质520内生成新分区的分区事件。该分区事件可以由存储处理系统540生成,或者可以由主机处理系统550生成。例如,存储处理系统540可以包括预定义的存储块阈值,在达到该阈值时触发新分区的生成。与之对比,存储处理系统540可以向主机处理系统550通知正在存储介质520上运行测试以使得新存储介质可用。基于该通知,主机处理系统550可以向存储处理系统540通知何时需要新分区。
在识别出第一分区事件时,在继续其它存储位置上的测试处理的同时,存储处理系统540可以生成存储分区530并且将该新分区提供给主机处理系统550。响应于识别出第二分区事件,存储处理系统540可以生成第二存储分区531并且将该分区提供给主机处理系统550。可以根据需要多次重复这种测试以及识别分区事件的处理,直到测试完整个存储介质520为止。在一些示例中,当已经测试完整个存储介质并且准备好将其提供给主机处理系统时,可以产生最后的分区事件。
如在此所描述的,在一些示例中,主机处理系统550可以用于管理允许使用多个存储子系统和分区来存储数据对象的DFS。因此,当主机处理系统550需要附加的存储时,管控者(administrator)可以通信地耦接采用存储子系统510的形式的新的未测试存储介质。该未测试存储介质可以包括固态存储介质、硬盘存储介质或任何其它相似存储介质,包括其改进。一旦在计算系统内耦接并且启动,存储处理系统540就可以启动用于测试和验证存储介质520内的多个存储位置的测试处理,并且将存储介质520的所测试的部分作为分区530-531提供给主机处理系统550。
虽然在先前示例中示出为将分区提供给DFS,但应当理解,可以将分区提供给计算系统,以提供任何类型的存储系统。例如,主机处理系统550可以仅要求新存储分区存储用于在主机处理系统550上执行的处理的附加数据。此外,虽然在该示例中通过两个存储子系统示出,但应当理解,任何数量的存储子系统或设备可以被包含在计算系统中,以提供足够的存储介质。
在一些示例中,从制造商发布的存储子系统可以包括不同量的可用存储。例如,存储子系统510可以包括2.2万亿字节的可用存储,而存储子系统511可以包括1.9万亿字节的可用存储。虽然每个子系统或驱动器可以包括不同量的存储,但制造商可以基于驱动器中的每一个的平均产量(yield)来销售驱动器。使用先前示例,制造商可以销售产生平均至少2万亿字节的存储容量的驱动器。因此,虽然一些驱动器可能不包含2万亿字节的存储空间,但在部署更多驱动器时,每个驱动器平均应当为用户提供必需的存储。
图6是示出用于测试新存储子系统并且使得它们可用于存储数据对象的计算系统600的框图。计算系统600代表可以在任何计算装置、系统或设备或其集合中采用以适当地实现图1–图5中在此所描述的存储处理系统的计算系统。计算系统600包括通信接口601、用户接口602和处理系统603。处理系统603通信地链接到通信接口601和用户接口602。处理系统603包括处理电路605以及存储操作软件607的存储器设备606。
通信接口601包括通过通信链路进行通信的组件,诸如网络卡、端口、RF收发机、处理电路和软件或一些其它通信设备。通信接口601可以被配置为通过金属、无线或光链路进行通信。通信接口601可以被配置为使用时分复用(TDM)、互联网协议(IP)、以太网、光联网、无线协议、通信信令、SAS、SATA、光纤信道或一些其它通信格式——包括其组合。具体地,通信接口601可以通信地耦接到诸如硬盘介质和固态介质之类的存储介质。此外,在一些实例中,通信接口601可以被配置为与计算设备的主处理系统进行通信。该主处理系统可以运行用于端用户的各种应用、操作系统和处理,但将存储处理的至少一部分卸载到计算系统600。
用户接口602包括与用户进行接口连接的组件。用户接口602可以包括键盘、显示屏幕、鼠标、触摸板或一些其它用户输入/输出装置。在一些示例中可以省略用户接口602。
处理电路605包括微处理器以及从存储器设备606检索并且运行操作软件607的其它电路。存储器设备606包括非瞬时存储介质,诸如盘驱动器、闪速驱动器、数据存储电路或一些其它存储器装置。操作软件607包括计算机程序、固件或一些其它形式的机器可读处理指令。操作软件607包括识别模块608、测试模块609和可用模块610,然而任何数量的软件模块可以提供相同操作。操作软件607还可以包括操作系统、实用程序、驱动、网络接口、应用或一些其它类型的软件。当由电路605运行时,操作软件607命令处理系统603如在此所描述地操作计算系统600。
具体地,识别模块608被配置为:当由计算系统600和处理系统603运行时,识别何时在计算系统或环境内启动或部署存储子系统。在一些示例中,计算系统600可以驻留在存储子系统上,但应当理解,其也可以驻留作为存储子系统外部的处理系统。一旦部署了存储子系统,测试模块609就启动存储子系统上的存储介质的未测试部分上的测试处理。在一些示例中,制造商可以将存储子系统或驱动器发布给端设备,而不测试其中所包含的存储介质。因此,在驱动器可以用于存储各种数据对象之前,存储介质内的存储块必须在它们可以变为可用之前进行测试和验证。
在存储位置的测试期间,可用模块610被配置为:识别分区可用性事件,并且响应于该事件,生成包括经由测试处理所测试的存储介质中的存储位置的用于主机处理系统的分区。该分区可用性事件可以包括经由测试处理进行测试或验证的预定义数量的存储位置、用于执行测试处理的预定义的时间量、对于将要对主机可用的分区的外部请求、或任何其它分区可用性事件。一旦使用可用模块610生成分区,该分区于是就被提供给主机处理系统,这允许主机处理系统从该分区存储、读取并且删除数据。同时,测试模块609将继续测试存储介质的未测试存储块,以验证用于附加存储分区的新存储位置。因此,当第二可用性事件产生时,可以使得包括最新测试的存储块的新分区对于主机处理系统可用。
在至少一个示例中,存储子系统可以部署在DFS计算环境或系统内。因此,虽然可以经由存储处理系统生成分区,但主机处理系统可以使用软件呈现包括多个存储子系统和分区的统一文件系统视图。此外,由于DFS能够管理多个存储设备和分区,因此当分区在部署时进行测试和验证时可以将分区添加到文件系统。
返回图1的元件,存储子系统110可以包括硬盘驱动器、固态驱动器或任何其它相似的存储装置。存储处理系统120可以包括能够测试存储介质并且将所测试的存储介质作为分区提供给主机处理系统130的各种处理元件、存储器元件和接口元件。存储接口115可以包括能够与主机处理系统130进行接口连接的任何接口,并且可以包括一个或多个集成电路和处理元件。主机处理系统130可以包括能够执行要求使用存储子系统110的数据存储的处理的一个或多个处理元件、存储器设备、接口以及其它计算元件。
通信链路140-142各自使用金属、玻璃、光、空气、空间或一些其它材料作为传输介质。通信链路140-141可以各自使用时分复用(TDM)、异步传送模式(ATM)、通信信令或任何其它形式的存储子系统内可用的通信。通信链路142可以使用小型计算机系统接口(SCSI)、串行连接SCSI(SAS)、串行ATA(SATA)、外围组件互连高速(PCIe)、光纤信道或一些其它相似的接口或总线。
上面的描述和相关联的附图教导本发明的最佳模式。所附权利要求指定本发明的范围。应当注意,最佳模式的一些方面可以不落入如权利要求所指定的本发明的范围内。本领域技术人员将理解,以上所描述的特征可以通过各种方式进行组合,以形成本发明的多个变型。因此,本发明不限于以上所描述的具体实施例,而仅由所附权利要求及其等同物限定。
Claims (20)
1.一种测试用于主机处理系统的存储子系统的计算机装置,所述计算机装置包括:
一个或多个非瞬时计算机可读介质;
处理指令,其被存储在一个或多个非瞬时计算机可读介质上,所述处理指令在由处理系统运行时命令所述处理系统:
在部署包括存储介质的存储子系统时,启动测试处理,以识别存储介质中的适用于存储主机处理系统的数据的存储块;
在启动所述测试处理之后,反复地识别分区可用性事件;
响应于分区可用性事件中的每个分区可用性事件,使得存储介质的分区对于主机处理系统可用,其中所述分区包括经由所述测试处理所识别的存储块的集合,所述存储块不同于先前被使得对于主机处理系统可用的分区中的其它存储块。
2.如权利要求1所述的计算机装置,其中,存储子系统包括固态驱动器。
3.如权利要求1所述的计算机装置,其中,存储子系统包括硬盘驱动器。
4.如权利要求1所述的计算机装置,其中,用于反复地识别分区可用性事件的处理指令命令处理系统反复地识别主机处理系统何时请求新分区。
5.如权利要求1所述的计算机装置,其中,用于反复地识别分区可用性事件的处理指令命令处理系统反复地识别经由所述测试处理何时测试预定数量的存储块。
6.如权利要求1所述的计算机装置,其中,用于反复地识别分区可用性事件的处理指令命令处理系统反复地识别所述测试处理何时运行达一预定义时段。
7.如权利要求1所述的计算机装置,其中,用于反复地识别分区可用性事件的处理指令命令处理系统至少识别与完成存储介质的测试的所述测试处理对应的最后分区可用性事件。
8.如权利要求1所述的计算机装置,其中存储子系统包括存储介质的至少一个已测试分区,并且其中处理指令进一步命令处理系统:在部署存储子系统时,使得存储介质的所述至少一个已测试分区对于主机处理系统可用。
9.一种在部署时测试存储介质的存储子系统,所述存储子系统包括:
存储介质;
存储处理系统,被配置为:
当在具有主机处理系统的计算系统中部署存储子系统时,启动测试处理,以识别存储介质中的适用于存储主机处理系统的数据的存储块;
在启动所述测试处理之后,反复地识别分区可用性事件;
响应于分区可用性事件中的每个分区可用性事件,使得存储介质的分区对于主机处理系统可用,其中所述分区包括经由所述测试处理所识别的存储块的集合,所述存储块不同于先前被使得对于主机处理系统可用的分区中的其它存储块。
10.如权利要求9所述的存储子系统,其中,存储介质包括固态存储介质。
11.如权利要求9所述的存储子系统,其中,存储介质包括硬盘存储介质。
12.如权利要求9所述的存储子系统,其中,被配置为反复地识别分区可用性事件的存储处理系统被配置为:反复地识别经由所述测试处理何时测试预定数量的存储块。
13.如权利要求9所述的存储子系统,其中,被配置为反复地识别分区可用性事件的存储处理系统被配置为:反复地识别所述测试处理何时运行达一预定义时段。
14.如权利要求9所述的存储子系统,其中,被配置为反复地识别分区可用性事件的存储处理系统被配置为:反复地识别主机处理系统何时请求新分区。
15.如权利要求9所述的存储子系统,其中,被配置为反复地识别分区可用性事件的存储处理系统被配置为:至少识别与完成存储介质的测试的所述测试处理对应的最后分区可用性事件。
16.如权利要求9所述的存储子系统,其中存储子系统包括存储介质的至少一个已测试分区,并且其中存储处理系统进一步被配置为:在部署存储子系统时,使得存储介质的所述至少一个已测试分区对于主机处理系统可用。
17.一种计算系统,包括:
主机处理系统;以及
存储子系统,包括存储介质和存储处理系统,其中所述存储处理系统被配置为:
当在计算系统中部署存储子系统时,启动测试处理,以识别存储介质中的适用于存储主机处理系统的数据的存储块;
在启动所述测试处理之后,反复地识别分区可用性事件;
响应于分区可用性事件中的每个分区可用性事件,使得存储介质的分区对于主机处理系统可用,其中所述分区包括经由所述测试处理所识别的存储块的集合,所述存储块不同于先前被使得对于主机处理系统可用的分区中的其它存储块。
18.如权利要求17所述的计算系统,其中,被配置为反复地识别分区可用性事件的存储处理系统被配置为:反复地识别经由所述测试处理何时测试预定数量的存储块。
19.如权利要求17所述的计算系统,其中,主机处理系统被配置为:响应于存储介质的每个分区变得可用,将所述分区添加到分布式文件系统。
20.如权利要求19所述的计算系统,其中,主机处理系统进一步被配置为:启动至少一个数据对象到来自存储子系统的变得可用的每个分区的存储。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/689,770 US9934871B2 (en) | 2015-04-17 | 2015-04-17 | Verification of storage media upon deployment |
US14/689,770 | 2015-04-17 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106055435A true CN106055435A (zh) | 2016-10-26 |
CN106055435B CN106055435B (zh) | 2019-08-06 |
Family
ID=57043497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610239371.4A Active CN106055435B (zh) | 2015-04-17 | 2016-04-18 | 在部署时验证存储介质 |
Country Status (5)
Country | Link |
---|---|
US (2) | US9934871B2 (zh) |
CN (1) | CN106055435B (zh) |
DE (1) | DE102016004567A1 (zh) |
GB (1) | GB2538621A (zh) |
IE (1) | IE20160101A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12009660B1 (en) | 2023-07-11 | 2024-06-11 | T-Mobile Usa, Inc. | Predicting space, power, and cooling capacity of a facility to optimize energy usage |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107357522B (zh) * | 2014-11-05 | 2019-11-15 | 华为技术有限公司 | 数据处理方法和装置 |
US10732869B2 (en) | 2018-09-20 | 2020-08-04 | Western Digital Technologies, Inc. | Customizing configuration of storage device(s) for operational environment |
US10699745B1 (en) | 2019-06-28 | 2020-06-30 | Western Digital Technologies, Inc. | Data storage device defining track trajectory to reduce AC track squeeze |
US10607645B1 (en) | 2019-06-28 | 2020-03-31 | Western Digital Technologies, Inc. | Data storage device generating PES RRO and data sector squeeze RRO for a plurality of zones |
US10748568B1 (en) | 2019-08-06 | 2020-08-18 | Western Digital Technologies, Inc. | Data storage device employing dynamic track trajectories |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1262480A (zh) * | 1999-01-25 | 2000-08-09 | 戴尔美国公司 | 用于计算机系统的可恢复软件安装方法和装置 |
JP2002205804A (ja) * | 2001-01-09 | 2002-07-23 | Mineya Mori | 生物科学用試験材料、培養物、遺伝子などの温度、湿度制御装置を取り付けた自動保管設備 |
CN1493987A (zh) * | 2002-10-31 | 2004-05-05 | 英业达股份有限公司 | 利用单一存储器进行测试的系统及方法 |
CN1525329A (zh) * | 2003-02-25 | 2004-09-01 | 太和科技股份有限公司 | 一种在快闪存储器储存装置中可自动建立档案系统的方法 |
US20080189560A1 (en) * | 2007-02-05 | 2008-08-07 | Freescale Semiconductor, Inc. | Secure data access methods and apparatus |
US20100121855A1 (en) * | 2003-06-25 | 2010-05-13 | Microsoft Corporation | Lookup Partitioning Storage System and Method |
CN101763301A (zh) * | 2008-12-22 | 2010-06-30 | 国际商业机器公司 | 用于测试引导镜像的系统和方法 |
CN102243612A (zh) * | 2010-05-12 | 2011-11-16 | 联发科技股份有限公司 | 创建目标存储布局表的方法以及电子装置 |
CN103235756A (zh) * | 2013-04-22 | 2013-08-07 | 北京航空航天大学 | 一种面向嵌入式系统分区应用程序软件的仿真测试方法 |
US20140181455A1 (en) * | 2012-12-20 | 2014-06-26 | Apple Inc. | Category based space allocation for multiple storage devices |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5828583A (en) | 1992-08-21 | 1998-10-27 | Compaq Computer Corporation | Drive failure prediction techniques for disk drives |
US6289484B1 (en) | 1999-05-19 | 2001-09-11 | Western Digital Technologies, Inc. | Disk drive employing off-line scan to collect selection-control data for subsequently deciding whether to verify after write |
US7406522B2 (en) * | 2001-09-26 | 2008-07-29 | Packeteer, Inc. | Dynamic partitioning of network resources |
US6950967B1 (en) | 2001-09-26 | 2005-09-27 | Maxtor Corporation | Method and apparatus for manufacture test processing a disk drive installed in a computer system |
US7139145B1 (en) | 2004-09-23 | 2006-11-21 | Western Digital Technologies, Inc. | Cluster-based defect detection testing for disk drives |
US7620772B1 (en) | 2005-05-05 | 2009-11-17 | Seagate Technology, Llc | Methods and structure for dynamic data density in a dynamically mapped mass storage device |
US7761867B2 (en) * | 2005-07-29 | 2010-07-20 | International Business Machines Corporation | Method and system for creation of operating system partition table |
US20090083580A1 (en) * | 2007-09-20 | 2009-03-26 | Postage Robert B | Techniques for Background Testing a Hard Disk Drive |
US8004785B1 (en) | 2008-05-09 | 2011-08-23 | Western Digital Technologies, Inc. | Disk drive write verifying unformatted data sectors |
US7929234B1 (en) | 2009-03-27 | 2011-04-19 | Western Digital Technologies, Inc. | Disk drive prioritizing in-the-field defect scanning based on number of write operations in each of a plurality of defect zones |
TWI496161B (zh) * | 2010-08-06 | 2015-08-11 | Phison Electronics Corp | 記憶體識別碼產生方法、管理方法、控制器與儲存系統 |
US8599507B2 (en) | 2011-12-06 | 2013-12-03 | HGST Netherlands B.V. | Distributed field self-test for shingled magnetic recording drives |
US9027020B2 (en) * | 2012-01-06 | 2015-05-05 | Avaya Inc. | Data and state threading for virtualized partition management |
US9936020B2 (en) * | 2012-10-30 | 2018-04-03 | International Business Machines Corporation | Access control of data in a dispersed storage network |
US9798620B2 (en) * | 2014-02-06 | 2017-10-24 | Sandisk Technologies Llc | Systems and methods for non-blocking solid-state memory |
US9262276B2 (en) * | 2014-02-10 | 2016-02-16 | Qognify Ltd. | Storage device as buffer for unreliable storage |
US10754587B2 (en) * | 2015-03-20 | 2020-08-25 | Burlywood, Inc. | Memory partitioning storage controller |
-
2015
- 2015-04-17 US US14/689,770 patent/US9934871B2/en active Active
-
2016
- 2016-04-13 IE IE20160101A patent/IE20160101A1/en not_active IP Right Cessation
- 2016-04-15 DE DE102016004567.1A patent/DE102016004567A1/de active Pending
- 2016-04-15 GB GB1606618.5A patent/GB2538621A/en not_active Withdrawn
- 2016-04-18 CN CN201610239371.4A patent/CN106055435B/zh active Active
-
2018
- 2018-04-02 US US15/942,749 patent/US10607714B2/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1262480A (zh) * | 1999-01-25 | 2000-08-09 | 戴尔美国公司 | 用于计算机系统的可恢复软件安装方法和装置 |
JP2002205804A (ja) * | 2001-01-09 | 2002-07-23 | Mineya Mori | 生物科学用試験材料、培養物、遺伝子などの温度、湿度制御装置を取り付けた自動保管設備 |
CN1493987A (zh) * | 2002-10-31 | 2004-05-05 | 英业达股份有限公司 | 利用单一存储器进行测试的系统及方法 |
CN1525329A (zh) * | 2003-02-25 | 2004-09-01 | 太和科技股份有限公司 | 一种在快闪存储器储存装置中可自动建立档案系统的方法 |
US20100121855A1 (en) * | 2003-06-25 | 2010-05-13 | Microsoft Corporation | Lookup Partitioning Storage System and Method |
US20080189560A1 (en) * | 2007-02-05 | 2008-08-07 | Freescale Semiconductor, Inc. | Secure data access methods and apparatus |
CN101763301A (zh) * | 2008-12-22 | 2010-06-30 | 国际商业机器公司 | 用于测试引导镜像的系统和方法 |
CN102243612A (zh) * | 2010-05-12 | 2011-11-16 | 联发科技股份有限公司 | 创建目标存储布局表的方法以及电子装置 |
US20140181455A1 (en) * | 2012-12-20 | 2014-06-26 | Apple Inc. | Category based space allocation for multiple storage devices |
CN103235756A (zh) * | 2013-04-22 | 2013-08-07 | 北京航空航天大学 | 一种面向嵌入式系统分区应用程序软件的仿真测试方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12009660B1 (en) | 2023-07-11 | 2024-06-11 | T-Mobile Usa, Inc. | Predicting space, power, and cooling capacity of a facility to optimize energy usage |
Also Published As
Publication number | Publication date |
---|---|
US20180226137A1 (en) | 2018-08-09 |
DE102016004567A1 (de) | 2016-10-20 |
IE20160101A1 (en) | 2016-12-14 |
US20160307646A1 (en) | 2016-10-20 |
US9934871B2 (en) | 2018-04-03 |
GB2538621A (en) | 2016-11-23 |
US10607714B2 (en) | 2020-03-31 |
CN106055435B (zh) | 2019-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106055435A (zh) | 在部署时验证存储介质 | |
US9164840B2 (en) | Managing a solid state drive (‘SSD’) in a redundant array of inexpensive drives (‘RAID’) | |
TWI595364B (zh) | 自動修復映像檔的方法及伺服器系統 | |
JP2014513338A5 (ja) | 仮想ディスクの最適圧縮のための方法、コンピュータ可読記憶媒体及びシステム | |
US10078460B2 (en) | Memory controller utilizing scatter gather list techniques | |
CN103984641B (zh) | 一种基于精简配置技术的存储空间回收方法及其装置 | |
CN102223394A (zh) | 远程直接存储设备访问 | |
WO2016110004A1 (zh) | 一种磁盘存储空间管理方法、装置及存储设备 | |
JP6526235B2 (ja) | データチェック方法および記憶システム | |
CN104052770A (zh) | 存储空间扩展系统及方法 | |
US9176857B2 (en) | Method and apparatus for managing video memory in embedded device | |
US9870278B2 (en) | Managing spaces in memory | |
CN110825694A (zh) | 数据处理方法、装置、设备和存储介质 | |
JP2013061795A (ja) | 記憶装置、コントローラ、およびリードコマンド実行方法 | |
CN103632092A (zh) | 用于文件扫描的方法和系统 | |
US9245613B2 (en) | Storage interface apparatus for solid state drive tester | |
JP4693589B2 (ja) | 計算機システム、記憶領域割当方法及び管理計算機 | |
CN103544121A (zh) | 一种基于微服务系统管理槽位号的方法、设备及系统 | |
CN104517067A (zh) | 访问数据的方法、装置及系统 | |
CN112596949B (zh) | 一种高效率的ssd删除数据恢复方法及系统 | |
US20180364946A1 (en) | Data storage device | |
US20160124677A1 (en) | Optical cold storage | |
CN105868121B (zh) | 一种信息处理方法及电子设备 | |
US10007602B2 (en) | Flash copy relationship management | |
CN109120674A (zh) | 大数据平台的部署方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20190117 Address after: American California Applicant after: Western Digital Technologies, Inc. Address before: Amsterdam Applicant before: Hitachi Global Storage Technologies Netherlands B. V. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |