CN111512280B - 具有针对操作环境定制的配置的存储设备及其系统和方法 - Google Patents

具有针对操作环境定制的配置的存储设备及其系统和方法 Download PDF

Info

Publication number
CN111512280B
CN111512280B CN201980006390.4A CN201980006390A CN111512280B CN 111512280 B CN111512280 B CN 111512280B CN 201980006390 A CN201980006390 A CN 201980006390A CN 111512280 B CN111512280 B CN 111512280B
Authority
CN
China
Prior art keywords
data storage
storage device
data
firmware
operating environment
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.)
Active
Application number
CN201980006390.4A
Other languages
English (en)
Other versions
CN111512280A (zh
Inventor
A·斯特里格尔
T·利伯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Western Digital Technologies Inc
Original Assignee
Western Digital Technologies Inc
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 Western Digital Technologies Inc filed Critical Western Digital Technologies Inc
Publication of CN111512280A publication Critical patent/CN111512280A/zh
Application granted granted Critical
Publication of CN111512280B publication Critical patent/CN111512280B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection 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/2221Detection 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
    • 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/061Improving I/O performance
    • 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
    • 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/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • 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/0673Single storage device
    • G06F3/068Hybrid storage device
    • 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/0689Disk arrays, e.g. RAID, JBOD

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)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本公开的非限制性示例涉及针对数据存储设备的原位制造的执行。原位制造是在部署数据存储设备的操作环境内对数据存储设备进行现场配置。在数据存储设备从制造厂或工厂装运后的任何时候都可以进行原位制造。当已知所述数据存储设备的操作环境时,可以在操作环境内现场配置(或重新配置)所述数据存储设备的参数以优化所述数据存储设备的容量管理以及性能。

Description

具有针对操作环境定制的配置的存储设备及其系统和方法
技术领域
本公开的方面涉及数据存储设备和数据存储系统的领域。
背景技术
数据存储设备(诸如旋转磁盘驱动器、固态驱动器和混合驱动器)通常在装运之前在制造环境中进行测试和配置。为了制造和分配效率,每个存储设备被配置为彼此相同。然而,存储设备最终被部署在的操作环境可能彼此差异很大,其中一些环境与其他环境相比对存储设备的最佳性能更具挑战性。例如,一些环境与其他环境相比可能经受更大振动,温度范围可能变化非常大,并且工作负载可能变化,所有这些因素可影响设备在其速度和容量方面的性能。因此,在制造过程期间对每个设备进行配置,以确保无论操作环境如何,其性能都将满足最低要求。
这种方法的缺点是,在较小挑战性环境的情况下,性能无法充分发挥。例如,如果这样配置,部署在低振动环境中但被配置为承受高振动环境的存储设备可以更快地运行。尽管这种失配相对于单个设备而言可能并不太显著,但其总体而言却可能非常显著。例如,许多现代数据中心包括成千上万个服务器,并且因此包括数千个数据存储设备,其次优性能通常是不期望和浪费的。
发明内容
本公开的非限制性示例涉及针对数据存储设备的原位制造的执行。原位制造是在部署数据存储设备的操作环境内对数据存储设备进行现场配置。在数据存储设备从制造厂或工厂装运后的任何时候都可以进行原位制造。当已知数据存储设备的操作环境时,可以在操作环境内现场配置(或重新配置)数据存储设备的参数以优化数据存储设备的容量管理以及性能。
附图说明
参考以下附图可以更好地理解本公开的许多方面。附图中的部件未必按比例绘制,而是将重点放在清楚地示出本公开的原理。此外,在附图中,贯穿几个视图,相似的附图标号指代对应的部分。尽管结合这些附图描述了若干实施方案,但本公开并不限于本文所公开的实施方案。相反,其旨在涵盖所有另选方案、修改和等同物。
图1是示出示例性数据存储系统的系统图。
图2描绘了示出示例性数据存储系统的各种视图的系统图。
图3A和图3B是示出用于实现数据存储设备的原位配置的方法操作的示例性流程图。
具体实施方式
本公开的非限制性示例涉及针对数据存储设备的原位制造的执行。原位制造是在部署数据存储设备的操作环境内对数据存储设备进行现场配置。在数据存储设备从制造厂或工厂装运后的任何时候都可以进行原位制造。当已知数据存储设备的操作环境时,可以在操作环境内现场配置(或重新配置)数据存储设备的参数以优化数据存储设备的容量管理以及性能。本文描述的示例性处理操作使得能够在操作环境内现场适配数据存储设备的机械性能和参数设置,并且提供针对数据存储设备的技术改善,包括但不限于:在操作环境中现场操纵存储容量;可靠性改善;操作期间的减小的延迟;针对操作环境状况的定制适配/调整;辅助数据恢复的效率和准确性;数据存储设备与主机系统的智能集成;和减小制造成本(例如,金钱、时间、加工要求),以及其他示例。
示例性数据存储设备是被配置用于记录和存储信息(数据)的设备。数据存储设备可以是任何类型的已知数据存储设备,包括但不限于:旋转磁盘驱动器;固态驱动器(SSD);混合磁盘驱动器或任何其他类型的硬盘驱动器(HDD)。数据存储设备可以包括任何已知形式的存储介质,其中存储介质的类型可以包括但不限于:磁介质、固态介质、光学介质、便携式存储介质(例如,闪存驱动器、闪存存储器)或其任何混合组合。示例性数据存储设备可以被配置为与主机(例如,系统、控制器、监控节点)交接,该主机可用于检测与数据存储设备将在其中执行的操作环境相关联的特性。主机系统可以包括一个或多个处理节点以使得能够执行本文所述的操作。主机系统的非限制性示例可以是数据存储机柜(例如,硬盘数据存储盒等),其可被配置为存储多个数据存储设备。在替代示例中,示例性主机系统可以是包括硬盘存储装置的计算机系统,可以将示例性数据存储设备添加或连接到该硬盘存储装置。在一些示例中,数据存储设备可以安装在远离主机系统(诸如数据存储机柜)的位置。例如,主机系统可以存储与数据存储设备将在其内操作的操作环境的环境特性有关的数据。在其他情况下,数据存储设备可以在有或没有来自示例性主机系统的帮助下检测操作环境本身的环境特性。在其他示例中,数据存储设备可以直接与主机系统连接。
示例性数据存储设备可以经由控制器(存储控制器)执行测试和设备配置以优化数据存储设备从而用于在操作环境内执行。当示例性数据存储设备连接在操作环境内时,可能发生这种情况。操作环境(operational/operating environment)包括示例性数据存储设备连接在其中以进行操作的物理和/或虚拟空间。在一个示例中,操作环境可以与主机系统的执行位置相称。在其他示例中,数据存储设备的操作环境远离主机系统。操作环境还可以包括硬件和基础设施,包括但不限于:计算机系统、网络系统和数据存储系统,以及其他示例。在一个示例中,操作环境可以包括数据存储设备连接在其中以进行部署的数据存储系统(例如,主机系统或另一个数据存储设备,诸如数据存储机柜)。此外,操作环境可以是网络使能的,具有与互联网的连接,作为其中主机系统和数据存储设备可以交接的装置。
为了优化数据存储设备的配置,检测与操作环境相关联的环境特性。例如,当数据存储设备连接到操作环境时,可能发生这种情况。可进行评估以配置数据存储设备的示例性环境特性包括但不限于:用于在操作环境内放置数据存储设备和其他计算设备/数据存储设备的位置数据;与操作环境(包括具有操作环境的特定设备)相关的热/温度数据;操作环境(包括具有操作环境的特定设备)内的振动数据;操作环境内的使用、带宽、操作等的基于工作负载的数据;和特定于操作环境的服务水平协议(SLA)数据,以及其他示例。示例性工作负载数据可以包括但不限于:以下中的一者或多者的处理工作负载:数据存储设备和主机系统。例如,这种数据可以包括跨以下中的任一者的读取/写入操作的量:先前已经执行的操作;安排执行的操作;和估计/计划的数据处理操作,以及其他示例。
在一些示例中,示例性数据存储设备被配置为例如通过嵌入在数据存储设备中的一个或多个传感器来检测操作环境的环境特性。在另一个示例中,主机系统被配置为检测环境特性并且与数据存储设备交接(例如,通过通信链路)以将所检测的环境特性(和/或设备测试数据)提供给数据存储设备。在又一个示例中,可以通过检测环境特性的主机系统和数据存储设备的组合来进行对操作环境的环境特性的检测,例如,其中主机系统中的一个或多个传感器可以被配置为检测操作环境的特定环境特性(例如,工作负载、SLA数据、振动),并且示例性数据存储设备的一个或多个传感器可以被配置为检测操作环境的其他环境特性(例如,温度、振动)。本文所述的用于测试和配置数据存储设备的处理操作可以由以下中的任一者执行:数据存储设备的示例性存储控制器;主机系统的示例性部件(例如,控制器或监控节点);和/或其组合。
示例性存储控制器可以被编程用于针对数据存储设备要在其内操作的操作环境定制数据存储设备的配置(或重新配置)。在这样做时,存储控制器被配置为执行多个处理操作。例如,存储控制器被配置为以配置模式启动数据存储设备,该配置模式可用于在数据存储设备可用于工作负载处理之前使数据存储设备适应操作环境。也就是说,配置模式是用于数据存储设备的原位制造的受引导制造模式。当处于示例性配置模式(或受引导制造模式)时,存储控制器可以与主机系统交接,以获得设备测试数据和/或与操作环境相关联的环境参数数据(例如,检测到的环境特性)。存储控制器可以利用设备测试数据和环境参数数据来执行用于在数据存储设备的配置期间调谐环境特定参数的测试处理。也就是说,可以针对数据存储设备连接在其中的操作环境优化数据存储设备。基于所执行的测试的结果,存储控制器进一步执行用于配置(或重新配置)数据存储设备的处理操作。例如,存储控制器可以利用测试结果来格式化/重新格式化数据存储设备,其中自定义环境参数与数据存储设备和特定部件的操作的参数(例如,机械性能)有关。此外,此类自定义参数的配置包括在所述数据存储设备的存储介质上写入所述自定义环境参数,其中固件可以在数据存储设备的操作期间访问该写入数据。
如前所述,数据存储设备的测试和配置可能以示例性配置模式进行。基于数据存储设备的定制配置,存储控制器可以被配置为将数据存储设备的模式从配置模式切换到操作模式。示例性操作模式用于工作负载处理,由此操作模式是客户可以实现所配置的数据存储设备的功能以执行其处理操作(例如,读取/写入操作)的操作模式。在一个示例中,基于数据存储设备的成功格式化/重新格式化,进行在配置模式和操作模式之间的切换。例如,一旦在存储介质上写入自定义环境参数,示例性存储控制器就可以被编程为访问操作模式。自定义环境参数可以在固件的执行期间被访问,该固件可用于引导所配置的数据存储设备的操作。在一些情况下,可以在启用处理操作之前更新示例性固件。可以周期性地更新示例性固件,其中存储控制器(数据存储设备的)或主机系统被配置为将固件更新推送到数据存储设备。
在另外的示例中,示例性数据存储设备可以是主机存储系统的部件。例如,主机存储系统可以是可包括多个数据存储驱动器的硬盘驱动器(HDD)存储盒(或多个HDD存储盒)。示例性数据存储驱动器是数据存储设备的示例,其在前面的描述中已经被引用。示例性主机存储系统可以包括与多个数据存储驱动器连接的监控节点。示例性监控节点被配置为与多个数据存储驱动器中的每一个的存储控制器交接。监控节点、磁盘驱动器的存储控制器或其组合中的任一者被配置为执行如本文所述的用于原位配置的处理操作。在一个示例中,监控节点与磁盘驱动器的存储控制器连接,由此监控节点传送存储控制器对其自身进行配置所必需的数据。
图1是示出数据存储系统100的系统图。数据存储系统100包括数据存储设备110和主机系统140。数据存储设备110可以是本文描述的数据存储设备的先前描述的示例中的任一个,包括旋转驱动器、固态驱动器和混合驱动器,以及其他示例。主机系统140可以是如前面的描述中所述的主机系统(或主机存储系统)的示例中的任一个。示例性主机系统可以是网络连接的,并且包括计算设备,诸如本领域技术人员已知的个人计算机、工作站、服务器系统、云存储系统和其他电子计算/外围设备。主机系统140可以被配置为数据存储系统(例如,主机存储系统),其中主机系统140可以管理用于存储和检索数据的操作。在一个示例中,示例性主机系统140是数据存储机柜,该数据存储机柜被配置为与多个数据存储设备(例如,硬盘驱动器(HDD)存储机柜(或多个HDD存储机柜),其包括计算系统(例如,服务器)(或与计算系统连接))交接。
主机系统140可以特定于将示例性数据存储设备110与其主机系统140集成的特定实体或企业、客户等。主机系统140可以在示例性操作环境150中执行。如前所述,示例性操作环境150(operational/operating environment)包括数据存储设备110连接在其中以进行操作的物理和/或虚拟空间。在一个示例中,操作环境150可以与主机系统140的执行位置相称。在其他示例中,数据存储设备110的操作环境150远离主机系统140。此外,数据存储设备110的示例性操作环境150可以是数据存储系统(例如,主机系统或另一个数据存储设备,诸如数据存储机柜)。也就是说,操作环境150还可以包括硬件和基础设施,包括但不限于:计算机系统、网络系统和数据存储系统,以及其他示例。操作环境150可以是网络使能的,具有与互联网的连接,作为其中主机系统和数据存储设备可以交接的装置。
示例性主机系统140可以包括电子处理部件(例如,计算机系统、处理器(处理节点)、微处理器、电路、控制器、传感器),这些电子处理部件可以被配置为控制以下中的任一者:主机系统140的操作;与数据存储设备110交接;和/或专门被配置用于检测与操作环境150相关联的环境特性。例如,主机系统140可以包括与数据存储设备110交接以实现本文所述的处理操作的一个或多个示例性控制器或监控节点。示例性控制器或监控节点可以是上述电子处理部件中的任一个。在一些替代示例中,主机系统140和/或监控节点的示例性控制器可以是被配置为一个或多个虚拟机/节点的软件。
可进行评估以配置数据存储设备110的操作环境150的示例性环境特性可以包括但不限于:用于在操作环境内放置数据存储设备和其他计算设备/数据存储设备的位置数据;与操作环境(包括具有操作环境的特定设备)相关的热/温度数据;操作环境(包括具有操作环境的特定设备)内的振动数据;操作环境内的使用、带宽、操作等的基于工作负载的数据;和特定于操作环境的SLA数据,以及其他示例。示例性工作负载数据可以包括但不限于:以下中的一者或多者的处理工作负载:数据存储设备110和主机系统140。例如,这种数据可以包括跨以下中的任一者的读取/写入操作的量:先前已经执行的操作;安排执行的操作;和估计/计划的数据处理操作,以及其他示例。主机系统140可以包括用于检测示例性环境特性的一个或多个传感器125。例如,主机系统140可以包括但不限于包括:可检测操作环境150(例如,一个或多个服务器机房、特定HDD存储器(例如,盒))内的温度的一个或多个热传感器;用于振动感测的一个或多个加速度计/加速度传感器;以及被配置为评估以下中的任一者的传感器/电路/处理器:计算设备的规格、存储容量(包括可用空间和已使用空间)、与计算设备和使用相关联的遥测分析数据、设备连接数据、诊断数据、网络连接/使用数据、处理操作/带宽/错误的日志数据和特定于SLA的配置/参数,以及其他示例。
此外,示例性主机系统140可以包括联网能力,其中主机系统140可以通过示例性通信接口系统与一个或多个示例性通信网络建立网络连接。例如,主机系统140可以经由网络连接来连接获得已更新的数据(例如,固件、SLA、配置数据、补丁、更新等)。可以根据如本领域技术人员已知的各种通信协议、协议的组合、或其变型来建立示例性网络连接。通信网络的示例包括内联网、因特网、互联网、局域网、广域网、无线网络、有线网络、虚拟网络、软件定义的网络、数据中心总线、计算背板、或任何其他类型的网络、网络的组合、或它们的变型。
通信接口130可以包括通信连接件和设备,其允许通过通信网络(未示出)与其他计算系统(未示出)进行通信。一起允许系统间通信的连接件和设备的示例可以包括网络接口卡、天线、功率放大器、RF电路、收发器、和其他通信电路。连接件和设备可以通过通信介质(诸如,金属、玻璃、空气、或任何其他合适的通信介质)进行通信,以与其他计算系统或系统网络交换通信。前述介质、连接件和设备是众所周知的并且这里不需要详细讨论。前述通信网络和协议是众所周知的,这里不需要详细讨论。然而,可以使用的一些通信协议包括但不限于互联网协议(IP、IPv4、IPv6等)、传输控制协议(TCP)、和用户数据报协议(UDP)、串行附接SCSI(SAS)、串行高级技术附接(SATA),以及任何其他合适的通信协议、变型、或它们的组合。在交换数据、内容、或任何其他类型信息的上述示例中的任一个中,信息的交换可以根据各种协议中的任一个进行,包括FTP(文件传输协议)、HTTP(超文本传输协议)、REST(表述性状态传输)、WebSocket、DOM(文档对象模型)、HTML(超文本标记语言)、CSS(级联样式表)、HTML5、XML(可扩展标记语言)、JavaScript、JSON(JavaScript对象表示法)和AJAX(异步JavaScript和XML),以及任何其他合适的协议、变型、或其组合。
数据存储设备110和主机系统140通过存储接口130进行通信。尽管在图1中示出了单个链路,但示例性存储接口130可以包括一个或多个链路。存储接口130可以包括存储或磁盘接口,诸如串行附接ATA(SATA)、串行附接小型计算机系统接口(SAS)、光纤通道、通用串行总线(USB)、小型计算机系统接口(SCSI)、无限带宽技术、非易失性存储器主机控制器接口、外围部件互连express(PCIe)、以太网、互联网协议(IP)、或其他并行或串行存储或外围接口,包括其变型和组合。另选地,连接数据存储设备110和主机系统140的示例性链路可以通过无线连接来进行,该无线连接包括但不限于红外、蓝牙和WiFi,以及其他示例。数据存储设备110和主机系统140可以各自被配置有使得能够经由存储接口130来进行交接的连接器。
数据存储设备110包括存储介质111。存储介质111可以是可用于存储计算机数据的任何类型的存储器。存储介质111可以包括先前在前面的描述中提供的存储介质的示例中的任一个。存储器可以包括用于存储信息(如计算机可读指令、数据结构、程序模块或其他数据)的以任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。存储器可以被实现为单个存储设备,但也可以被实现在相对于彼此协同定位或分布的多个存储设备或子系统中。存储介质111的示例包括:随机存取存储器、只读存储器、磁盘、混合磁固态驱动器、光盘、闪存存储器、虚拟存储器和非虚拟存储器、盒式磁带、磁带、磁盘存储装置、或其他磁存储设备、或可用于存储期望信息并且可由指令执行系统访问的任何其他介质、以及其任何组合或变型、或任何其他类型的存储介质。这样,在一些非限制性示例中,存储介质111可以是一种或多种旋转介质,在一些示例中,其可以包括硬盘驱动器的盘片。
存储介质111可以包括多个存储区域113(例如,分区、扇区、目录、文件夹)。在制造期间,可以对一个或多个存储区域113加载数据以使得能够执行本文描述的处理操作。数据存储设备110还可以包括示例性R/W磁头112,以将对存储介质111的特定存储区域113的读取操作和写入操作作为目标。在一些情况下,可以为执行读取/写入操作给予优先级。为读取/写入操作给予优先级可以包括至少在数据存储设备110的空闲时间期间将R/W磁头112保持在当前热区上。当前热区也可以代替存储介质111的其他区域来用于输入的写入数据。以这种方式,输入的写入数据被顺序地写入当前热区(即区域1),并且R/W磁头112的移动限于存储介质111的子部分。在旋转存储介质(诸如硬盘驱动器)的示例中,使R/W磁头112优先到作为限定区域1的旋转存储介质上的受限范围的块的“环”,并且R/W磁头112在当前未执行读取或写入事务时位于区域1上方。在另外的示例中,为数据存储设备110中进行的读取操作给予优先级包括在存储介质111上完成任何存储事务后,使读取/写入磁头112的针对存储介质111的位置返回到热区。
在一个示例中,示例性固件113a存储在存储区域113中的至少一个上。本文描述的处理操作未绑定到特定类型的固件,其中示例性数据存储设备110可以被配置为与任何固件一起工作。固件113a可以用于指示所配置的数据存储设备的操作。在这样做时,固件113a可以包括过程、程序或部件,诸如操作系统软件、数据库软件或应用程序软件。可以将用于数据存储设备110的可执行操作的示例性固件113a预加载在存储介质111上,其中固件的该版本可用于以操作模式执行数据存储设备110。在另外的情况下,可以在制造和装运数据存储设备110之后更新固件113a,其中示例性存储控制器可以被配置为例如在以操作模式执行数据存储设备之前检查对固件113a的更新。固件113a还可以包括可由处理电路执行的软件或某些其他形式的机器可读处理指令。在至少一个实施方式中,程序指令可以包括第一程序指令,其引导示例性存储控制系统120将数据写入到存储区域113的特定区域中。在一些情况下,存储控制系统120可以基于数据存储设备110正在进行操作的模式来限制对某些存储区域113的读取和/或写入访问。例如,如果数据存储设备110以操作模式进行操作,则与配置数据相关联的存储区域113可能无法访问。如前所述,可以周期性地更新固件113a。在此类示例中,可以将固件113a的新版本覆盖在先前版本上,或者可以将固件113a的新版本写入存储区域113的不同区域中。在要求回退固件113a的版本的情况下,后一处理可以是有用的。
在另外的示例中,示例性存储区域113可以包括示例性环境参数113b的存储,这些示例性环境参数用于使数据存储设备110适应操作环境150(例如,通过格式化和/或映射处理操作)。示例性环境参数113b可以与示例性数据存储设备110的机械操作相关,并且可以基于评估操作环境150的环境特性的测试脚本的执行结果来进行设置。环境参数113b可以与可在不同环境情况下应用的特定于参数的决策相关。可以针对与操作环境150相关联的当前状况以及未来状况(例如,根据测试结果预测的多个不同场景)设置示例性环境参数113b。此类场景的非限制性示例可以包括但不限于:在温度升高/降低特定度数的情况下会发生的场景;如果超过了存储介质111上的特定水平的空闲存储空间会发生的场景;如果振动水平增加/减少会发生的场景;如果SLA改变会发生的场景;如果工作负载增加并且有要执行的操作队列会发生的场景,以及其他示例性场景。
如上所述,示例性环境参数113b可以与示例性数据存储设备110的机械操作相关,并且可以基于评估操作环境150的环境特性的测试脚本的执行结果来进行设置。示例性存储控制系统120(或另选地,主机系统140)被编程为执行用于测试示例性环境参数113b的评估和确定的处理操作。环境参数113b可以被配置为应用于可能影响数据存储设备110的读取和/或写入操作的数据存储设备的任何机械部件。例如,可以设置环境参数113b以管理影响数据记录处理和/或数据存储设备110的性能和可靠性的部件。在一个示例中,环境参数113b可以被设置为对应于与以下各项的控制相关联的机械部件:(位置)错误信号数据、热分析数据、振动数据和工作负载数据,以及其他示例。在更特定的实例中,可以设置参数以控制数据存储设备100的特定特征,这些特征包括但不限于:每英寸位数;每英寸磁道数;软错误率;硬错误率;道间串扰刷新率;R/W磁头飞行高度;R/W磁头压力;容量设置;与所述特征中的任一个和风扇操作相关的裕度;以及其他示例。随时间推移,与操作环境150相关联的环境特性可能改变,从而导致示例性环境参数113b的重新配置。在不同的示例中,存储控制系统120被配置为在现有版本上(例如,在相同存储区域中)重新写入环境参数113b的新版本,或者将新版本添加到存储区域113的新存储区域。
即使在数据存储盒/机柜内包括多个数据存储设备110的情况下,示例性环境参数113b也可以在逐设备的基础上变化。例如,对于定位在操作环境150内的不同位置中的数据存储设备110,可以不同地轻微调整特定参数的预留所需的裕度。与环境参数113b相关联的设置也可以在安排情况下以及实时地(或接近实时地)更新。在一些示例中,更新可以有条件地发生或持续特定的持续时间。例如,主机存储系统通常执行大量的顺序数据写入操作,并且不对其数据进行大量重新写入。在该示例中,如果主机存储系统具有其将代替地执行多个重新写入操作的工作负载知识,则可以能够重新获得/调整裕度以应对工作负载变化。
如前所述,数据存储设备110还包括存储控制系统120。存储控制系统120包括一个或多个硬件部件、软件部件或其组合,其中存储控制系统120被编程为控制数据存储设备110的处理操作。示例性存储控制系统120可以包括一个或多个存储控制器。存储控制器可以是上述电子处理部件中的任一个。在一些替代示例中,数据存储设备110的示例性存储控制器可以是被编程为在示例性电子处理部件的顶部上运行的软件。数据存储设备110还可以包括示例性通信接口系统,如前面的描述中所述,其使得能够与示例性主机系统140和/或其他计算设备进行交接。在一些示例中,示例性数据存储设备110还可以包括一个或多个传感器125,如前面的描述中所述,其可以使得能够由数据存储设备110直接检测操作环境150的环境特性。
在操作中,存储控制系统120被配置为经由示例性存储控制器执行处理,以用于针对其中添加了数据存储设备110的操作环境150定制数据存储设备110的配置。在一些示例中,数据存储设备110的配置包括在操作环境150内重新配置数据存储设备110,当数据存储设备110移动到操作环境150内的新位置/地点时,可能会发生这种情况。存储控制系统120被编程为在示例性配置模式(例如,受引导制造模式)和示例性操作模式内处理本文所述的任何处理操作。例如,存储控制系统120与主机系统140交接以执行测试操作,以便配置用于在操作环境150内操作数据存储设备110的自定义环境参数。
在这样做时,示例性存储控制器可以被配置为使用与操作环境150相关联的环境特性来运行设备测试数据(例如,用于执行多阶段诊断配置测试的脚本/代码/模块)的处理。利用示例性设备测试模块(例如,软件)来执行用于对测试数据和测试结果进行排序、配置和记录的处理操作。通过在每个过程步骤完成时收集二进制日志,可以从每个过程步骤保存制造测试结果。这些日志可以与存储在数据存储设备110的存储介质的保留区域中的驱动器定制值一起保存在本地测试服务器上(例如,在操作环境内或通过分布式网络连接来连接)或存储介质上。示例性多阶段诊断配置测试可以包括但不限于:功能测试(例如,基本功能调谐,包括容量);质量测试(例如,缺陷映射、磁道到磁道测试);以及性能测试(例如,包括工作负载优化的性能调谐)。
一旦测试处理完成,存储控制系统120可以被配置为将测试结果(例如,定制环境参数113b)存储为非易失性信息。然后,使用定制环境参数来配置/重新配置数据存储设备110。固件一旦运行,就会按照为已配置的数据存储设备110设置的配置运行。用于配置/重新配置数据存储设备110的处理操作可以包括一系列处理操作以重新格式化驱动器并且重新表征可能基于重新格式化而改变的任何参数(例如,以新磁道间距重新写入所有扇区,为每英寸位数设置新裕度,以及其他定制环境参数)。示例性固件覆盖已配置的数据存储设备110,其中存储控制系统120下载测试过程并执行该测试过程。固件可以覆盖在测试处理的结果(例如,测试结果)上,其中驱动器可以变为可操作(例如,从配置模式切换到操作模式),例如,一旦已经针对操作环境150成功配置了数据存储设备。在确定需要更新固件的示例中,在使得数据存储设备110能够进入操作模式之前,进行处理操作以更新固件。
在处于操作模式时,数据存储设备110可以通过由主机系统140发出的存储接口130或经由通过存储控制系统120发出的命令/处理操作来接收读取或写入事务。响应于读取事务,数据存储设备110通过读取/写入(R/W)磁头112检索存储在介质111上的数据,以用于转移到主机系统140或由存储控制系统120进行后续处理。响应于写入事务,数据存储设备110通过R/W磁头112将数据存储到存储介质111上。R/W磁头112位于介质111的不同区域上方以读取或写入相关联数据。应当理解,为了清楚起见,在图1中省略了数据存储设备110的其他部件,诸如前置放大器、收发器、处理器、放大器、电动机、服务器、电枢、机柜、以及其他电气和机械元件。
图2描绘了示出示例性数据存储系统200的各种视图的系统图。在一个示例中,数据存储系统200是主机系统。在另一个示例中,数据存储系统200可以是与主机系统(例如,一个或多个主机系统节点210)分离(和/或远离)的数据存储机柜。示例性数据存储系统200包括主机系统节点210和存储机柜230、存储组件250、底架260、电源270、风扇(280A和280B)、多个数据存储设备240。随后还将描述数据系统200的另外的部件。例如,主机系统是硬盘驱动器存储机柜等,其中主机系统包括多个部件,这些部件使得能够执行本文所述(包括数据系统100的描述)的处理操作。在前面的描述中已经提供了数据存储设备的示例,其中数据存储设备240可以是所提供的示例中的任一个。
一个或多个主机系统节点210和存储机柜230通过存储链路220进行通信。一个或多个主机系统节点210包括使得能够执行前面的描述中关于主机系统描述的处理操作的处理部件,其中主机系统可以管理示例性操作环境(或与数据存储设备的操作环境分开的操作环境)、客户交互、以及与示例性数据存储设备(例如,数据存储驱动器240)的交接。示例性主机系统节点210是如前面的描述中所述的监控节点(或多个节点)。尽管在图2中示出了一个存储组件250,但应当理解,可以包括多于一个的存储组件并将其链接到数据存储系统200或其他访问系统,诸如在采用许多数据存储阵列的数据存储环境中。
存储组件250包括具有相关联机柜和结构元件的存储组件,该存储组件可插入可保持其他存储组件的机架中(诸如机架式服务器环境)。存储机柜230还可以包括专门配置用于插入多个数据存储设备240的结构元件,诸如底架242和托盘248。存储组件250还可以包括至少一个外部连接器以用于将存储设备可通信地耦接到链路220。
存储组件250可以包括独立磁盘冗余阵列(RAID)阵列或JBOD(“完全磁盘簇”)设备,其包括可扩展并作为一个或多个逻辑驱动器呈现给一个或多个主机系统节点210的多个独立磁盘。在一些示例中,存储组件250包括虚拟磁盘簇(VBOD),其在物理存储驱动器和外部接口之间添加了一个或多个提取层。VBOD可以采用各种类型的磁记录技术并且从特定记录技术中提取前端交互。尽管在图2中示出了单个链路,但存储链路220可以包括一个或多个链路。如在图1的描述中所述的,存储链路220的描述与存储接口130对准。如上所述,一个或多个主机系统节点210与主机系统140的节点对准,如在图1的描述中所述的。一个或多个示例性主机系统节点210可以包括监控节点212以及一个或多个传感器246,如在图1的上面描述中所述。一个或多个主机系统节点210可以被配置为经由存储链路220与存储机柜230进行交接以在它们之间传送数据225。示例性数据225包括用于配置多个数据存储设备240中的每一个的信息,包括环境特性、测试数据、固件数据(更新)以及工作负载数据。如上所述,特定于工作负载的数据可以作为环境特性传输,其中数据存储设备可以利用这种信息来定制其配置。另选地,示例性主机系统可以配置单独数据存储设备。工作负载数据还可以被传输到单独数据存储设备240,其可以包括读取/写入操作以及其他数据存储请求。
如上所述,存储机柜230可以包括多个数据存储设备240(例如,硬盘驱动器(HDD)),其各自安装在相关联载体托盘中,该载体托盘进一步被封装在机柜中以形成存储载体,诸如针对HDD 240A-240N+1所示。可以为每个存储载体提供连接器以将HDD耦接到相关联存储服务器或者一个或多个主机系统节点210。每个HDD可以被插入相关联存储载体中或从其移除,并且该存储载体然后可以被插入存储组件250的相关联导轨或磁道中。其他配置是可能的,诸如单独安装的HDD。
数据存储系统200的示例性详细视图示出了单独数据存储设备240可以包括存储介质244(例如,旋转存储介质)和一个或多个示例性传感器246。每个HDD可以包含类似的元件,诸如旋转存储介质、读取/写入磁头和任选的振动传感器,但HDD之间可能存在差异。HDD可以包括另外的元件,诸如电枢、前置放大器、收发器、处理器、放大器、电动机、服务器、壳体、密封件、机柜、传感器以及其他电气和机械元件。应当理解,对于HDD 240A或其他HDD可能有变化。每个HDD可以替代地包括混合磁盘驱动器,这些混合磁盘驱动器包括协同工作的旋转介质和固态存储部件。在另外的示例中,采用了固态驱动器(SSD)、光存储驱动器、或其他非暂时性计算机可读存储设备。
存储机柜230的存储组件250还包括电源组件270,该电源组件包括电力电子器件,以及用于向存储组件250提供气流的一个或多个通风扇280a和280b。存储组件250还包括存储底架260,该存储底架包括用于容纳并在结构上支撑存储组件260的元件的结构元件。底架260可以包括底架元件、机柜、壳体、框架、紧固元件、机架式特征、通风特征,以及其他元件。包括电源元件以转换外部电源或向存储组件250的元件提供各种形式的电力。风扇280A-280B可以包括任何风扇类型,诸如轴流、离心和错流、或其他风扇类型,包括相关联百叶窗、翅片、或其他定向元件,包括其组合和变型。
图3A和图3B是示出用于实现数据存储设备的原位配置的方法操作的示例性流程图。图3A示出了方法300,该方法提供用于示例性数据存储设备的定制配置(或重新配置)的过程流程。示例性数据存储设备是数据存储设备110(图1)。示例性数据存储设备的另一个示例是数据存储驱动器/设备240(图2)。图3B示出了方法320,该方法提供用于执行已配置的(或重新配置的)示例性数据存储设备的过程流程。方法300和320中描述的处理操作可以由图1和2中描述的部件执行,其中前面的描述支持和补充本文所叙述的处理操作。
方法300(图3A)开始于处理操作302,其中执行一个或多个操作以预配置数据存储设备。处理操作302可以在示例性数据存储设备的工厂制造期间进行。如前所述,可以在运出和最终部署数据存储设备之前在工厂设置中预配置数据存储设备。在工厂中最初配置数据存储设备时,不知道数据存储设备要被部署在的环境。因此,处理操作可以预配置数据存储设备以满足最低性能标准,使得数据存储设备可以解决最具挑战性的操作环境。可以对数据存储设备的部件进行基线调谐和编程,然后将设备运出以供操作使用。用于执行工厂配置(包括基线调谐)的处理操作是本领域技术人员已知的。处理操作302还可以包括将示例性固件加载在数据存储设备的存储介质上。可以执行固件以使得例如在针对特定操作环境更新(重新配置)数据存储设备的配置之后能够以操作模式来操作数据存储设备。
方法300的流程可以行进到处理操作304,其中将数据存储设备连接到电源。处理操作304可以包括将数据存储设备与示例性主机系统或其他数据存储系统(诸如数据存储机柜)连接。作为非限制性示例,数据存储设备可以连接到HDD机柜等中的位置狭槽。处理操作304可以触发数据存储设备的示例性配置模式的启动。
在处理操作306中,以配置模式启动数据存储设备。在前面的描述中已经详细描述了示例性配置模式。方法300的操作可以行进到处理操作308,其中检测示例性操作环境。在前面的描述中已经提供了操作环境的示例。当处于示例性配置模式(或受引导制造模式)时,(数据存储设备的)存储控制器可以与主机系统交接,以获得设备测试数据和/或与操作环境相关联的环境参数数据(例如,检测到的环境特性)。存储控制器(或主机系统)可以利用设备测试数据和环境参数数据来执行测试处理(处理操作310)以针对示例性操作环境配置数据存储设备。在前面的描述中已经提供了用于执行测试处理的示例性处理操作。
基于所执行的测试的结果,方法300的流程可以行进到处理操作312。在处理操作312处,存储控制器(或主机系统)进一步执行用于配置(或重新配置)数据存储设备的操作。例如,存储控制器可以利用测试结果来格式化/重新格式化数据存储设备,其中数据存储设备的机械部件和/或设置被设置为基于测试结果确定的自定义环境参数。也就是说,自定义环境参数与以下有关:数据存储设备和特定部件的操作的参数(例如,机械性能),以及与数据存储设备的配置相关联的其他设置/元数据(其可用于随后与包括一个或多个主机系统的其他数据存储系统进行交接)。此外,数据存储设备的配置包括在数据存储设备的存储介质上存储/写入(处理操作314)自定义环境参数。处理操作314可以进一步使得与自定义参数决定有关的写入数据能够在操作模式下由固件在数据存储设备的操作期间访问。用于配置或格式化存储设备的一般处理操作是本领域技术人员已知的。
方法320(图3B)提供了方法300(图3A)的继续示例,其中方法320在示例性数据存储设备已经被成功配置/重新配置的点开始。在格式化未成功完成的示例中,存储控制器可以与主机系统交接以识别潜在问题和进行修复,如本领域技术人员所已知的。
方法320开始于决策操作322,其中确定在示例性配置模式下是否存在用于操作已配置的数据存储设备的固件的更新。
在检测到已更新固件的示例中,例如,通过与示例性主机系统交接(经由网络连接),决策操作322的流程分支为是,并且方法320的处理行进到处理操作324。在处理操作324中,更新在数据存储设备的存储介质上存储的固件。在一个示例中,处理操作324可以包括诸如以下的操作:与主机系统通信以识别固件的新版本可用;从所述主机系统接收所述已更新固件;以及在存储介质上写入已更新固件。一旦固件已经被更新,方法300的流程可以行进到处理操作326,其中执行已更新固件。
在没有检测到已更新固件的示例中,例如,通过与示例性主机系统交接(经由网络连接),决策操作322的流程分支为否,并且方法320的处理行进到处理操作328。在处理操作328中,执行现有固件(例如,存储在数据存储设备的存储介质上)。
在任一示例中,方法320的流程可以行进到处理操作330,其中以操作模式启动数据存储设备。在前面的描述中已经详细描述了示例性操作模式。方法300的流程可以进一步行进到处理操作332,其中执行一个或多个处理操作以便以操作模式操作数据存储。数据存储设备的操作可以包括在数据存储设备接收工作负载处理操作时应用自定义环境参数。例如,处理操作332包括为已配置的数据存储设备启用读取/写入操作的执行。在通过固件的执行而可访问操作模式的情况下,可以实现该处理。
在本文所述的示例中,主机系统级别(或数据存储设备级别)的逻辑能够检测示例性操作环境的环境特性以最佳地配置示例性数据存储设备(或多个数据存储设备)。在主机系统与示例性数据存储设备之间的交互中还存在新颖性。在一个实例中,示例性主机系统可以将测试数据(例如,设备测试数据和操作环境的环境特性)传输到数据存储设备以实现数据存储设备的定制配置。在测试操作之后,在基于环境评估将示例性数据存储设备配置为某个容量的情况下,主机系统可以进一步传送数据以使得数据存储设备能够与主机系统同步并进入操作模式。这样的数据可以被写入数据存储设备的存储介质中,例如,以使得在后续实例中启用主机系统和数据存储设备之间的继续交接。
这样,每个单独数据存储设备可以被可变地配置,这还可以包括变化的容量。这提供了技术益处,包括但不限于:定制示例性数据存储设备的设备特性时的灵活性(与标准存储设备相比);重新平衡一个或多个数据存储设备上的工作负载以改善整体性能和容量;以及因为针对操作环境优化数据存储设备而引起的示例性数据存储设备的改善的可靠性,以及其他示例。另外,本文描述的示例还可以减小存储设备制造的成本以及减小与标准存储设备相关联的报废成本。
所包括的描述和附图描绘了教导本领域技术人员如何制作和使用最佳模式的具体实施方案。出于教导发明性原理的目的,已经简化或省略了一些常规的方面。本领域技术人员将理解来自落入本发明范围内的这些实施方案的变型。本领域技术人员还将理解,上述特征可以以各种方式组合以形成多个实施方案。因此,本发明不受上述具体实施方案的限制,而是仅受权利要求及其等同物的限制。
本文包括的描述和附图描绘了特定实施方式以教导本领域技术人员如何制作和使用最佳选择。出于教导发明性原理的目的,已经简化或省略了一些常规的方面。本领域技术人员将理解来自落入本公开范围内的这些实施方式的变型。本领域技术人员还将理解,上述特征可以以各种方式组合以形成多个实施方式。因此,本发明不受上述具体实施方式的限制,而是仅受权利要求及其等同物的限制。
在整个说明书中已经引用“一个示例”或“示例”,这意味着在至少一个示例中包括特定描述的特征、结构或特性。因此,此类短语的使用可能涉及不止一个示例。另外,所描述的特征、结构或特性可以在一个或多个示例中以任何合适的方式组合。
然而,相关领域的技术人员可以认识到,可以在没有一个或多个特定细节的情况下,或者在其他方法、资源、材料等的情况下实践示例。在其他情况下,仅为了观察示例的模糊方面而没有详细示出或描述众所周知的结构、资源或操作。
尽管已经示出和描述了示例性示例和应用,但应当理解,示例不限于上述精确的配置和资源。在不背离所要求保护的示例的范围的情况下,可以在本文公开的方法和系统的布置、操作和细节中进行本领域技术人员显而易见的各种修改、改变和变化。

Claims (19)

1.一种数据存储设备,包括:
旋转存储介质;和
存储控制器,所述存储控制器连接到所述存储介质并且被配置为连接到主机系统,其中所述存储控制器被编程为通过执行处理操作来针对所述数据存储设备的操作环境定制所述数据存储设备的配置,所述处理操作包括:
在所述数据存储设备可用于工作负载处理之前启动所述数据存储设备的配置模式,
在处于所述配置模式时,从所述主机系统接收或者检测与所述操作环境相关联的环境参数数据,其中所述环境参数数据对应于影响机械部件的环境参数,所述机械部件影响所述数据存储设备的读取操作或写入操作或读取和写入操作,
用与所述数据存储设备的机械性能有关的基于所述环境参数数据的定制环境参数来配置所述数据存储设备,
将所述定制环境参数写入所述数据存储设备的非易失性存储装置以供固件在所述数据存储设备的操作期间访问,以引导所述数据存储设备的操作,
基于用于适应性调整所述数据存储设备的机械操作的所述定制环境参数来格式化所述数据存储设备,以及
至少部分地基于所述定制环境参数以操作模式操作所述数据存储设备,在所述操作模式中,所述数据存储设备可用于执行读取/写入操作。
2.根据权利要求1所述的数据存储设备,其中:
所述存储介质包括存储在所述存储介质上的所述固件;
所述处理操作还包括以所述操作模式执行所述固件;并且
所述操作包括在所述数据存储设备处于所述操作模式时执行所述固件。
3.根据权利要求1所述的数据存储设备,其中:
所述存储介质包括存储在所述存储介质上的所述固件;
所述处理操作还包括更新所述固件;并且
所述操作包括在所述数据存储设备处于所述操作模式时执行已更新固件。
4.根据权利要求1所述的数据存储设备,其中所述处理操作还包括:
将所述数据存储设备从所述配置模式切换到所述操作模式,所述操作模式使得客户能够使用已配置的数据存储设备。
5.根据权利要求1所述的数据存储设备,其中所述存储控制器被进一步配置为基于所述数据存储设备与电源的连接来自动启动所述配置模式。
6.根据权利要求1所述的数据存储设备,其中所述环境参数数据包括选自以下的一者或多者:错误信号数据、热分析数据、振动数据和工作负载数据,所述工作负载数据包括以下中的一者或多者的处理工作负载:所述数据存储设备和所述主机系统。
7.根据权利要求1所述的数据存储设备,其中所述环境参数被设置用于控制所述数据存储设备的一个或多个特征,所述一个或多个特征来自下列项组成的组:每英寸位数;每英寸磁道数;软错误率;硬错误率;道间串扰刷新率;读/写磁头飞行高度;读/写磁头压力;容量设置;和风扇操作。
8.一种主机存储系统,包括:
监控节点,所述监控节点与被配置为容纳多个数据存储设备的系统连接,其中所述监控节点被配置为与所述多个数据存储设备中的数据存储设备的存储控制器交接,
并且其中所述存储控制器被配置为:
在所述数据存储设备可用于工作负载处理之前启动所述数据存储设备的配置模式,
在处于所述配置模式时,从所述监控节点接收或者检测与所述数据存储设备的操作环境相关联的环境参数数据,其中所述环境参数数据对应于影响机械部件的环境参数,所述机械部件影响所述数据存储设备的读取操作或写入操作或读取和写入操作,
用与所述数据存储设备的机械性能有关的基于所述环境参数数据的定制环境参数来配置所述数据存储设备,
将所述定制环境参数写入所述数据存储设备的非易失性存储装置以供固件在所述数据存储设备的操作期间访问,以引导所述数据存储设备的操作,
基于用于适应性调整所述数据存储设备的机械操作的所述定制环境参数来格式化所述数据存储设备,所述格式化包括为每英寸位数设置新裕度,以及
至少部分地基于所述定制环境参数以操作模式操作所述数据存储设备,在所述操作模式中,所述数据存储设备可用于执行读取/写入操作。
9.根据权利要求8所述的主机存储系统,其中:
所述数据存储设备包括存储介质,所述存储介质存储包括所述固件的数据;
所述存储控制器被进一步配置为更新所述固件;并且
所述操作包括在所述数据存储设备处于所述操作模式时执行已更新固件。
10.根据权利要求8所述的主机存储系统,其中所述存储控制器被进一步配置为:
将所述数据存储设备切换到操作模式,所述操作模式使得客户能够使用所述数据存储设备。
11.根据权利要求8所述的主机存储系统,其中所述存储控制器被进一步配置为基于所述数据存储设备与电源的连接来自动进入所述配置模式。
12.根据权利要求8所述的主机存储系统,其中所述环境参数数据包括选自以下的一者或多者:错误信号数据、热分析数据、振动数据和工作负载数据,所述工作负载数据包括以下中的一者或多者的处理工作负载:所述数据存储设备和所述主机存储系统。
13.一种用于数据存储的方法,包括:
在数据存储设备可用于工作负载处理之前以配置模式启动所述数据存储设备,所述配置模式能够用于对所述数据存储设备的配置数据进行编程;
在处于所述配置模式时,从主机系统接收或者检测与所述数据存储设备的操作环境相关联的环境参数数据,其中所述环境参数数据对应于影响机械部件的环境参数,所述机械部件影响所述数据存储设备的读取操作或写入操作或读取和写入操作;以及
基于定制环境参数来配置所述数据存储设备进行操作,其包括:
用与所述数据存储设备的机械性能有关的基于所述环境参数数据的定制环境参数来配置所述数据存储设备,
将所述定制环境参数写入所述数据存储设备的非易失性存储装置以供固件在所述数据存储设备的操作期间访问,以引导所述数据存储设备的操作,以及
基于用于适应性调整所述数据存储设备的机械操作的所述定制环境参数来格式化所述数据存储设备,所述格式化包括为每英寸位数设置新裕度。
14.根据权利要求13所述的方法,其中:
所述数据存储设备包括存储介质,所述存储介质存储包括用于操作所述数据存储设备的所述固件的数据;
所述方法还包括基于所执行的测试处理的结果以操作模式操作所述数据存储设备;并且
所述操作包括执行所述固件。
15.根据权利要求13所述的方法,其中:
所述数据存储设备包括存储介质,所述存储介质存储包括所述固件的数据;
所述方法还包括:
更新所述固件;以及
基于所执行的测试处理的结果以操作模式操作所述数据存储设备;并且
所述操作包括执行已更新固件。
16.根据权利要求15所述的方法,其中所述固件的所述更新还包括:
从所述主机系统接收所述已更新固件;
在所述存储介质上写入所述已更新固件;以及
在以所述操作模式执行所述数据存储设备期间,从所述存储介质读取所述已更新固件。
17.根据权利要求13所述的方法,还包括:
将所述数据存储设备切换到操作模式,所述操作模式使得客户能够使用所述数据存储设备。
18.根据权利要求13所述的方法,其中所述环境参数数据包括选自以下的一者或多者:错误信号数据、热分析数据、振动数据和工作负载数据,所述工作负载数据包括以下中的一者或多者的处理工作负载:所述数据存储设备和所述主机系统。
19.一种数据存储设备,包括:
存储部件,所述存储部件被配置为用于从所述存储部件读取数据并且向所述存储部件写入数据的存储装置;和
控制器部件,所述控制器部件被配置用于控制所述数据存储设备的操作,所述操作包括对所述存储部件的操作访问,其中所述控制器部件包括:
用于在所述数据存储设备可用于工作负载处理之前启动所述数据存储设备的配置模式的装置,
用于在所述数据存储设备处于所述配置模式时,从主机系统接收或者检测与所述数据存储设备的操作环境相关联的环境参数数据的装置,其中所述环境参数数据对应于影响机械部件的环境参数,所述机械部件影响所述数据存储设备的读取操作或写入操作或读取和写入操作,
用于基于定制环境参数来配置所述数据存储设备的装置,其包括:
用于用与所述数据存储设备的机械性能有关的基于所述环境参数数据的定制环境参数来配置所述数据存储设备的装置,
用于将所述定制环境参数写入所述数据存储设备的非易失性存储装置以供固件在所述数据存储设备的操作期间访问以引导所述数据存储设备的操作的装置,以及
用于基于用于适应性调整所述数据存储设备的机械操作的所述定制环境参数来格式化所述数据存储设备的装置。
CN201980006390.4A 2018-09-20 2019-06-21 具有针对操作环境定制的配置的存储设备及其系统和方法 Active CN111512280B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/136,972 2018-09-20
US16/136,972 US10732869B2 (en) 2018-09-20 2018-09-20 Customizing configuration of storage device(s) for operational environment
PCT/US2019/038493 WO2020060607A1 (en) 2018-09-20 2019-06-21 Customizing configuration of storage device(s) for operational environment

Publications (2)

Publication Number Publication Date
CN111512280A CN111512280A (zh) 2020-08-07
CN111512280B true CN111512280B (zh) 2023-10-24

Family

ID=69884216

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980006390.4A Active CN111512280B (zh) 2018-09-20 2019-06-21 具有针对操作环境定制的配置的存储设备及其系统和方法

Country Status (4)

Country Link
US (1) US10732869B2 (zh)
CN (1) CN111512280B (zh)
DE (1) DE112019000192T5 (zh)
WO (1) WO2020060607A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11934238B2 (en) * 2021-05-21 2024-03-19 Western Digital Technologies, Inc. Customized thermal throttling using environmental conditions

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880532A (zh) * 2011-07-13 2013-01-16 财团法人资讯工业策进会 以云端技术为基础的测试系统与方法
CN103597443A (zh) * 2011-11-14 2014-02-19 Lsi公司 存储设备固件以及制造软件
CN104932834A (zh) * 2014-03-21 2015-09-23 西部数据技术公司 使用终极手段区域进行数据存储设备的数据管理

Family Cites Families (33)

* Cited by examiner, † Cited by third party
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
US5884023A (en) * 1995-12-14 1999-03-16 Texas Instruments Incorporated Method for testing an integrated circuit with user definable trace function
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
TW563124B (en) * 2000-12-21 2003-11-21 Hitachi Maxell Optical record carrier, drive unit, data updating method and software version-up method
US6751681B2 (en) * 2001-06-18 2004-06-15 Sony Corporation System and method for providing automatic firmware updates and diagnostics for network attached storage devices
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
US6807506B2 (en) * 2002-03-20 2004-10-19 Agilent Technologies, Inc. Electronic test program with test triggered interactive displays
US7050921B2 (en) * 2002-04-23 2006-05-23 Agilent Technologies, Inc. Electronic test program with run selection
US7676551B1 (en) * 2003-06-25 2010-03-09 Microsoft Corporation Lookup partitioning storage system and method
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
US8464069B2 (en) 2007-02-05 2013-06-11 Freescale Semiconductors, Inc. Secure data access methods and apparatus
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
US8887144B1 (en) * 2009-09-04 2014-11-11 Amazon Technologies, Inc. Firmware updates during limited time period
US8661184B2 (en) * 2010-01-27 2014-02-25 Fusion-Io, Inc. Managing non-volatile media
US8599507B2 (en) 2011-12-06 2013-12-03 HGST Netherlands B.V. Distributed field self-test for shingled magnetic recording drives
US8806283B1 (en) * 2011-12-15 2014-08-12 Western Digital Technologies, Inc. Automatic and on-demand testing of non-volatile storage devices
US9027020B2 (en) 2012-01-06 2015-05-05 Avaya Inc. Data and state threading for virtualized partition management
US9794337B2 (en) 2012-10-30 2017-10-17 International Business Machines Corporation Balancing storage node utilization of a dispersed storage network
US20140181455A1 (en) * 2012-12-20 2014-06-26 Apple Inc. Category based space allocation for multiple storage devices
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
US9934871B2 (en) 2015-04-17 2018-04-03 Western Digital Technologies, Inc. Verification of storage media upon deployment
US20160363972A1 (en) * 2015-06-12 2016-12-15 HGST Netherlands B.V. Temperature control of storage arrays with rotating media seek adjustments
CN106407052B (zh) * 2015-07-31 2019-09-13 华为技术有限公司 一种检测磁盘的方法及装置
US20170097877A1 (en) * 2015-10-05 2017-04-06 HGST Netherlands B.V. Varied storage media density for data storage devices in vibrational environments
US10147499B1 (en) * 2016-06-06 2018-12-04 Apple Inc. Memory power-up testing system
US11604690B2 (en) * 2016-07-24 2023-03-14 Pure Storage, Inc. Online failure span determination
US10318173B2 (en) * 2016-09-30 2019-06-11 Seagate Technology Llc Multi-speed data storage device with media cache for high speed writes

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880532A (zh) * 2011-07-13 2013-01-16 财团法人资讯工业策进会 以云端技术为基础的测试系统与方法
CN103597443A (zh) * 2011-11-14 2014-02-19 Lsi公司 存储设备固件以及制造软件
CN104932834A (zh) * 2014-03-21 2015-09-23 西部数据技术公司 使用终极手段区域进行数据存储设备的数据管理

Also Published As

Publication number Publication date
CN111512280A (zh) 2020-08-07
WO2020060607A1 (en) 2020-03-26
US10732869B2 (en) 2020-08-04
US20200097200A1 (en) 2020-03-26
DE112019000192T5 (de) 2020-07-23

Similar Documents

Publication Publication Date Title
US9164840B2 (en) Managing a solid state drive (‘SSD’) in a redundant array of inexpensive drives (‘RAID’)
JP5014784B2 (ja) 複数のストレージ装置タイプをサポートするネットワーク接続ストレージシステム、装置、および方法
JP5089591B2 (ja) 順次アクセス・データ・ストレージ・サブシステム内で検索操作を実行するためのシステムおよび方法
JP5284905B2 (ja) データ移行方法、及びプログラム
US9003414B2 (en) Storage management computer and method for avoiding conflict by adjusting the task starting time and switching the order of task execution
US10929185B1 (en) Predictive workload placement
US20170177278A1 (en) Pre-Loading a Parameter to a Media Accessor to Support a Data Request
US20160103719A1 (en) Automatic object model generation
CN112328179A (zh) 磁盘阵列的配置方法、系统、电子设备及可读存储介质
CN111512280B (zh) 具有针对操作环境定制的配置的存储设备及其系统和方法
US11593204B2 (en) Fleet health management device classification framework
CN110795304A (zh) 分布式存储系统性能测试的方法及装置
US20150347057A1 (en) Storage area network emulator
EP3284214B1 (en) Converged system compliance checking
JP5455684B2 (ja) 通信装置及び通信方法及びプログラム
JP2018092426A (ja) ストレージ制御装置、ストレージ装置、及び制御プログラム
US20170139650A1 (en) Method for dimensioning and reconfiguring of a storage system with removable media
US10528294B2 (en) Provisioning and managing virtual machines from a storage management system
DE112016000164T5 (de) Verarbeiten von datenspeicherungsbefehlen für gehäusedienste
US20150363346A1 (en) Sata initiator addressing and storage device slicing
US20180088802A1 (en) Preemptive event-based data migration
US9354993B2 (en) System and method to reduce service disruption in a shared infrastructure node environment
US20160342553A1 (en) Initiator injection for diagnostic information
US20150286647A1 (en) Directly accessing archived data and executable files
US10198388B2 (en) Data storage system with pre-boot interface

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant