CN111104048A - 一种数据处理方法及分布式存储*** - Google Patents

一种数据处理方法及分布式存储*** Download PDF

Info

Publication number
CN111104048A
CN111104048A CN201811260310.1A CN201811260310A CN111104048A CN 111104048 A CN111104048 A CN 111104048A CN 201811260310 A CN201811260310 A CN 201811260310A CN 111104048 A CN111104048 A CN 111104048A
Authority
CN
China
Prior art keywords
storage
storage disk
data
disk group
subdata
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
Application number
CN201811260310.1A
Other languages
English (en)
Other versions
CN111104048B (zh
Inventor
李昕杰
何荣峰
祝斌
吴素宏
方协云
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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201811260310.1A priority Critical patent/CN111104048B/zh
Priority to EP19876171.0A priority patent/EP3859538A4/en
Priority to PCT/CN2019/105703 priority patent/WO2020082929A1/zh
Publication of CN111104048A publication Critical patent/CN111104048A/zh
Application granted granted Critical
Publication of CN111104048B publication Critical patent/CN111104048B/zh
Priority to US17/238,709 priority patent/US11662925B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3268Power saving in hard disk drive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/122File system administration, e.g. details of archiving or snapshots using management policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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/0625Power saving in 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
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • 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/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • 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
    • 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
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种数据处理方法及分布式存储***。分布式存储***的存储盘包括至少两个存储盘群,至少两个存储盘群配置有至少两个节能态。具体的,该方法包括:分布式存储***的处理模块接收包括待处理数据的标识的读请求,并根据待处理数据的标识,读取待处理数据的元数据,以确定第一存储盘群和第二存储盘群,这里,第一存储盘群配置有第一节能态,第二存储盘群配置有第二节能态,第一节能态的唤醒时延小于第二节能态的唤醒时延;后续,从第一存储盘群中读取第一子数据,并在读取第一子数据后,从第二存储盘群中读取第二子数据。综合考虑存储盘的功耗和数据处理时延,提升了存储盘的工作效率。

Description

一种数据处理方法及分布式存储***
技术领域
本申请涉及存储技术领域,尤其涉及一种数据处理方法及分布式存储***。
背景技术
一般的,按照访问频次和时延要求,云存储***中的数据可分为热数据(也可称为活跃/临时数据)、温数据(也可称为低频访问存储的数据/非活跃数据)、冷数据(也可称为备份/归档数据)。其中,热数据是指可随时访问、访问时延要求为毫秒(ms)级的数据,温数据是指访问频次较低(例如平均一个月访问一次)、访问时延要求为毫秒级的数据,冷数据是指访问频次非常低(例如平均一年访问一次)、访问时延要求为分钟级的数据。
目前,存储温数据的存储盘基本处于可读态。由于温数据的访问频次较低,因此,存储温数据的存储盘的输入输出(input/output,IO)功能大部分时间是空闲的,导致该存储盘的功耗较大。而温数据的时延要求为毫秒级,因此,也不能将存储温数据的存储盘下电或置为休眠态。如果将该存储盘下电或置为休眠态,则在需要读取温数据时,要先将该存储盘上电或唤醒。而上电或唤醒的过程往往需要花费30~50秒的时间,无法满足温存数据对时延的要求。
发明内容
本申请提供一种数据处理方法及分布式存储***,能够解决无法同时满足存储盘的低功耗和数据对时延的要求的问题。
为达到上述目的,本申请采用如下技术方案:
第一方面,提供一种数据处理方法,该数据处理方法应用于包括至少一个处理节点和至少两个存储节点的分布式存储***,至少两个存储节点的存储盘包括至少两个存储盘群,至少两个存储盘群配置有至少两个节能态,至少一个处理节点上部署有处理模块。具体的,该数据处理方法包括:处理模块在接收到包括待处理数据的标识的读请求后,根据待处理数据的标识,读取待处理数据的元数据,以确定第一存储盘群和第二存储盘群,第一存储盘群配置有第一节能态,第二存储盘群配置有第二节能态,第一节能态的唤醒时延小于第二节能态的唤醒时延,这样,处理模块从第一存储盘群中读取待处理数据的第一子数据,并在读取第一子数据后,从第二存储盘群中读取待处理数据的第二子数据。
处于节能态的存储盘的功耗较低,因此,将待处理数据的不同子数据存储于不同节能态的存储盘群的方式有效的降低了存储盘的功耗。当需要读取上述待处理数据时,根据访问先后顺序依次读取各个子数据。由于不同节能态的存储盘的唤醒时延不同,因此,可以根据访问先后顺序和唤醒时延从短到长的顺序确定子数据所存储的存储盘群以使得在需要读取某一子数据时,存储该子数据的存储盘的唤醒时延基本结束,有效的保证了每一子数据的时延要求。
本申请中“至少两个存储盘群配置有至少两个节能态”可以指任意两个存储盘群配置的节能态不同,也可以指至少两个存储盘群中的一部分存储盘群配置的节能态相同,其他存储盘配置的节能态与这一部分存储盘的节能态不同。
可选的,在本申请的一种可能的实现方式中,从第一存储盘群中读取第一子数据之前,处理模块还根据待处理数据的元数据,确定第一存储盘群中的第一存储盘组和第二存储盘群中的第二存储盘组;其中,第一存储盘组所包括的存储盘为第一存储盘群中存储第一子数据的存储盘,第二存储盘组所包括的存储盘为第二存储盘群中存储第二子数据的存储盘。相应的,上述“处理模块从第一存储盘群中读取第一子数据”的方法为:处理模块从第一存储盘组中读取第一子数据。上述“处理模块从第二存储盘群中读取第二子数据”的方法为:处理模块从第二存储盘组中读取第二子数据。
存储盘群包括多个存储盘,第一存储盘群中的部分存储盘(如第一存储盘组包括的存储盘)用于存储第一子数据,第二存储盘群中的部分存储盘(如第二存储盘组包括的存储盘)用于存储第二子数据。
可选的,在本申请的另一种可能的实现方式中,在确定第一存储盘群中的第一存储盘组和第二存储盘群中的第二存储盘组之后,处理模块还确定第一存储盘组中的存储盘和第二存储盘组中的存储盘已被唤醒。
这里,存储盘已被唤醒可以指存储盘处于可读态,也可以指存储盘处于从节能态转换为可读态的过程中。一般的,只有第一存储盘组中的存储盘处于可读态,处理模块才能从第一存储盘组中读取到第一子数据,因此,在读取第一子数据之前,处理模块需确定第一存储盘组中的存储盘已被唤醒。同理,只有第二存储盘组中的存储盘处于可读态,处理模块才能从第二存储盘组中读取到第二子数据,因此,在读取第二子数据之前,处理模块需确定第二存储盘组中的存储盘已被唤醒。
可选的,在本申请的另一种可能的实现方式中,处理模块从第一存储盘组中读取第一子数据之后,还将第一存储盘组中的存储盘置为第一节能态。相应的,处理模块从第二存储盘组中读取第二子数据之后,还将第二存储盘组中的存储盘置为第二节能态。
处理模块读取第一子数据时,第一存储盘组中的存储盘为可读态,在读取到第一子数据后,处理模块将第一存储盘组中的存储盘置为第一节能态,有效的降低了第一存储盘组中存储盘的功耗。同理,处理模块读取第二子数据时,第二存储盘组中的存储盘为可读态,在读取到第二子数据后,处理模块将第二存储盘组中的存储盘置为第二节能态,有效的降低了第二存储盘组中存储盘的功耗。
可选的,在本申请的另一种可能的实现方式中,在接收包括待处理数据的标识的读请求之前,处理模块还会接收到包括待处理数据的写请求,并将待处理数据切分为第一子数据和第二子数据,以及将第一子数据存储于第一存储盘群中,并将第二子数据存储于第二存储盘群中,这里,第一子数据的访问顺序位于第二子数据的访问顺序之前。
处理模块根据访问先后顺序和存储盘群的唤醒时延,确定每一子数据所存储的存储盘。一般的,访问顺序在先的子数据,存储于唤醒时延较短的存储盘群中;访问顺序在后的子数据,存储于唤醒时延相对较长的存储盘群中。这样,后续在开始读取待处理数据的某一子数据时,存储该子数据的存储盘的唤醒时延基本结束。
可选的,在本申请的另一种可能的实现方式中,上述“处理模块将待处理数据切分为第一子数据”的方法为:处理模块根据第一节能态的唤醒时延、第二节能态的唤醒时延和访问带宽,计算第一子数据的大小,并确定第一子数据,第一节能态的唤醒时延和第二节能态的唤醒时延均为预先设置的;处理模块根据待处理数据的大小以及第一子数据的大小,计算第二子数据的大小,并确定第二子数据。
可选的,在本申请的另一种可能的实现方式中,上述“处理模块将第一子数据存储于第一存储盘群中,并将第二子数据存储于第二存储盘群中”的方法为:处理模块将第一子数据存储于第一存储盘组,并将第二子数据存储于第二存储盘组。此外,在第一存储盘组中存储盘的剩余存储空间为零时,处理模块将第一存储盘组的存储盘置为第一节能态。在第二存储盘组中存储盘的剩余存储空间为零时,处理模块将第二存储盘组的存储盘置为第二节能态。
实际应用中,为了保证数据的可靠性,处理模块可以采用纠删码(erasurecoding,EC)条带存储方式/多副本存储方式将子数据写入存储盘组中。当存储盘组中存储盘的剩余存储空间为零时,将该存储盘组的存储盘置为节能态,有效的降低存储盘的功耗。
第二方面,提供一种分布式存储***,分布式存储***包括至少一个处理节点和至少两个存储节点,至少两个存储节点的存储盘包括至少两个存储盘群,至少两个存储盘群配置有至少两个节能态,至少一个处理节点上部署有处理模块,该处理模块用于执行上述第一方面及其任意一种可能的实现方式中任意之一所述的数据处理方法。
第三方面,提供一种分布式存储***,该分布式存储***包括至少两个存储节点,至少两个存储节点的存储盘包括至少两个存储盘群,其中,第一存储盘群处于第一节能态,第二存储盘群处于第二节能态,第一节能态的唤醒时延小于第二节能态的唤醒时延。所述至少两个存储盘群用于存储待处理数据,该待处理数据包括第一子数据和第二子数据;第一存储盘群存储第一子数据,第二存储盘群存储第二子数据。
可选的,在本申请的一种可能的实现方式中,上述分布式存储***还包括至少一个处理节点,至少一个处理节点存储有待处理数据的元数据,待处理数据的元数据中记录有第一存储盘群与第一子数据的对应关系、以及第二存储盘群与第二子数据的对应关系。
第四方面,提供一种分布式存储***,该分布式存储***包括至少一个处理节点,所述至少一个处理节点包括至少一个处理器和至少一个存储器。至少一个存储器,用于存储计算机指令,当所述至少一个处理器调用所述计算机指令时,执行上述第一方面及其任意一种可能的实现方式中任意之一所述的数据处理方法。
可选的,在本申请的一种可能的实现方式中,上述至少一个处理器和上述至少一个存储器部署于同一处理节点上。
可选的,在本申请的另一种可能的实现方式中,本申请中的至少一个处理节点包括第一处理器和第二处理器,第一处理器和第二处理器可以位于同一处理节点上,也可以分别部署于不同的处理节点中。可选的,第一处理器用于接收包括待处理数据的标识的读请求。第二处理器用于响应于第一处理器接收到的读请求,从第一存储盘群中读取第一子数据,并在读取第一子数据后,从第二存储盘群中读取第二子数据。
第五方面,提供一种计算机可读存储介质,该计算机可读存储介质存储有指令,当指令在计算机上运行时,使得上述第一方面及其任意一种可能的实现方式中任意之一所述的数据处理方法被执行。
第六方面,提供一种包含指令的计算机程序产品,计算机程序产品包括计算机指令,当计算机指令在计算机上运行时,使得上述第一方面及其任意一种可能的实现方式中任意之一所述的数据处理方法被执行。
可以理解的,上述提供的分布式存储***计算机存储介质或计算机程序产品等均用于执行上文所提供的对应的数据处理方法,因此,其所能达到的有益效果可参考对应的方法中的有益效果,此处不再赘述。
在本申请中,上述处理模块的名字对功能模块本身不构成限定,在实际实现中,这些功能模块可以以其他名称出现。只要各个功能模块的功能和本申请类似,属于本申请权利要求及其等同技术的范围之内。
本申请的这些方面或其他方面在以下的描述中会更加简明易懂。
附图说明
图1为本申请实施例中分布式存储***的结构示意图一;
图2A为本申请实施例中处理节点的结构示意图一;
图2B为本申请实施例中处理节点的结构示意图二;
图2C为本申请实施例中处理节点的结构示意图三;
图3为本申请实施例中分布式存储***的结构示意图二;
图4为本申请实施例中分布式存储***的结构示意图三;
图5为本申请实施例中存储盘群的结构示意图;
图6为本申请实施例中存储节点的结构示意图一;
图7为本申请实施例中存储节点的结构示意图二;
图8为本申请实施例中数据处理方法的流程示意图;
图9为本申请实施例中子数据的存储示意图。
具体实施方式
为了便于理解本申请,先对本申请涉及到的相关要素进行解释。
存储盘:
存储盘是指存储节点的存储介质。其中,存储节点可以参考下述对图1、图6、图7的描述。
可选的,本申请中的存储盘可以是串行高级技术附件(serial advancedtechnology attachment,SATA)硬盘、串行连接SCSI(serial attached SCSI,SAS)硬盘、移动硬盘、通用串行总线(universal serial bus,USB)硬盘等,也可以是硬盘(hard diskdrive,HDD)、固态硬盘(solid state drives,SSD),还可以是其他存储介质,本申请对此不作具体限定。
一般的,存储盘可处于可读态和节能态。处于节能态的存储盘的功耗小于处于可读态的存储盘的功耗。
存储盘的可读态:
处于可读态的存储盘支持立即读,也就是说,该存储盘的唤醒时延很低,接近没有唤醒时延。若某一存储盘一直处于可读态,则该存储盘的功耗为5.4瓦。本申请实施例将该状态的存储盘称为空闲态0(Idle_0)存储盘。
存储盘的节能态:
目前,各大存储盘厂家提供的存储盘均已支持多个节能态。每一节能态均对应一种存储盘功耗和唤醒时延,其中,唤醒时延为存储盘从节能态转换为可读态的时延。不同节能态所对应的存储盘功耗不同,同理,不同节能态对应的唤醒时延也不同。
示例性的,表1示出了某一型号的存储盘在不同节能态的存储盘功耗和唤醒时延。
表1
节能态 功耗/瓦 唤醒时延
空闲态A(Idle_A) 5.3 10毫秒 简称A态
空闲态B(Idle_B) 3.4 1.5秒 简称B态
空闲态C(Idle_C)/备用态Y(Standby_Y) 2.8 4秒 简称C态
休眠态(Sleep)/备用态Z(Standby_Z) 0.7 15秒 简称Z态
云存储***的数据:
云存储***中的数据包括热数据、温数据以及冷数据。
热数据可被随时访问、访问时延要求为毫秒级,因此,存储热数据的存储盘基本处于可读态。
冷数据的访问频次非常低(例如平均一年访问一次)、时延要求为分钟级,因此,可将存储冷数据的存储盘下电或置为休眠态,以降低该存储盘的功耗;后续,在需要读冷数据时,再将该存储盘上电或置为可读态。
温数据的访问频次较低(例如平均一个月访问一次)、时延要求为毫秒级。
本申请涉及到的数据可以为对象,也可以为块,还可以为文件,本申请对此不作具体限定。
本申请实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于限定特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
目前,存储温数据的存储盘基本处于可读态。由于温数据的访问频次较低,因此,存储温数据的存储盘的IO功能大部分时间是空闲的,也就是说,存储温数据的存储盘大部分时间都是在空转,该存储盘的功耗较大。而温数据的时延要求为毫秒级,因此,也不能将存储温数据的存储盘下电或置为休眠态。如果将该存储盘下电或置为休眠态,则在需要读取温数据时,要先将该存储盘上电或唤醒。而上电或唤醒的过程往往需要花费30~50秒的时间,无法满足温存数据对时延的要求。也就是说,目前无法提供一种既能满足温数据的时延要求,又能降低存储盘的功耗的方法。
为此,本申请提供一种数据处理方法及分布式存储***。具体的,分布式存储***的存储盘包括至少两个存储盘群,且至少两个存储盘群配置有至少两个节能态,某一数据的不同子数据存储于该分布式存储***的不同节能态的存储盘群中。由于处于节能态的存储盘的功耗较低,因此,将数据的不同子数据存储于不同节能态的存储盘群的方式有效的降低了存储盘的功耗。当需要读取上述数据时,根据访问先后顺序依次读取各个子数据。由于不同节能态的存储盘的唤醒时延不同,因此,可以根据访问先后顺序和唤醒时延从短到长的顺序确定子数据所存储的存储盘群以使得在需要读取某一子数据时,存储该子数据的存储盘的唤醒时延基本结束,有效的保证了每一子数据的时延要求。
可选的,在本申请中,如果某一子数据的访问顺序越早,则存储该子数据的存储盘群的唤醒时延越短;相对的,如果某一子数据的访问顺序越晚,则存储该子数据的存储盘群的唤醒时延越长。在读取某一数据时,可以唤醒存储该数据的子数据的所有存储盘,这样,对于某一子数据而言,在需要读取该子数据时,存储该子数据的存储盘的唤醒时延基本结束,既能满足数据的时延要求,又能降低存储盘的功耗。
示例性的,本申请实施例提供的分布式存储***包括至少两个存储盘群,待处理数据的第一子数据存储于第一存储盘群,待处理数据的第二子数据存储于第二存储盘群,第一存储盘群和第二存储盘群配置的节能态不同,这样,在需要读取待处理数据时,从第一存储盘群中读取第一子数据,并在读取第一子数据后,从第二存储盘群中读取第二子数据。
本申请实施例提供的数据处理方法适用于分布式存储***。图1为该分布式存储***的一种结构示意图。如图1所示,分布式存储***可以包括至少一个处理节点10和至少两个存储节点11,处理节点10可与每个存储节点11通信。若分布式存储***包括多个处理节点10,则不同处理节点10之间也可通信。可以理解的,图1所示的分布式存储***仅为一个示例,在实际应用时,多个存储节点11之间也可以直接进行通信,或通过其他设备进行通信,本申请实施例对此不进行限定。
处理节点10,是分布式存储***中提供IO处理能力的设备。
处理节点10,可以用于根据写请求,将待写入数据切分为多个子数据,并将每个子数据存储于相应的存储盘中,也可以用于在接收到读请求后,依次读取每一子数据,还可以在将子数据存储于存储盘后,保存该子数据与存储盘之间的对应关系,即保存该子数据的元数据,还可以监控/管理至少两个存储节点11的存储盘的状态。
可选的,结合上述图1,如图2A所示,处理节点10包括:通信接口101、处理器102、内存103和非易失性存储器104,其中,通信接口101、处理器102、内存103和非易失性存储器104通过***总线105连接。
通信接口101用于与其他设备(如存储节点11)通信。
处理器102用于完成处理节点10的功能。该处理器102可以是任何计算器件,可以是通用中央处理器(central processing unit,CPU),微处理器,可编程控制器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。处理器102是处理节点10的控制中心。
在具体实现中,作为一种实施例,处理器102可以包括一个或多个CPU,例如图2A中的处理器包括CPU 0和CPU 1。
处理器102还可以包括缓存(图2A中未示出),该缓存可以采用高速缓冲存储器cache体现,该缓存用于存储各种程序指令。
内存103用于缓存从外设接收的数据或从非易失性存储器104读取的数据。内存103可以为只读存储器(read-only memory,ROM)或闪存(Flash)等各种可以存储数据的非短暂性的(non-transitory)机器可读介质,在此不做限定。
可选的,处理器102中的缓存和内存103可以集成设置或者独立设置,本申请实施例对此不做限定。
非易失性存储器104可以用于存储软件程序以及应用模块,如处理节点10的***程序、切分待写入数据的应用模块等,处理器102通过运行该软件程序/应用模块,从而执行处理节点10的各种功能应用以及数据处理。
非易失性存储器104可以为只读存储器(read-only memory,ROM)、静态随机存储器(static RAM,SRAM)、快闪存储器(flash memory)、HDD、SSD、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由网络设备存取的任何其他介质,但不限于此。
可选的,结合上述图2A示出的处理节点,本申请实施例提供的处理节点还可以包括用于存储数据的至少两个存储盘。这里的至少两个存储盘可以直接通过***总线与处理节点中的其他组件连接(图2B示出了该结构的处理节点),也可以是通过适配卡(适配卡通过***总线与其他组件连接)与处理节点中的其他组件连接的存储装置所包括的存储盘(图2C示出了该结构的处理节点)。
其中,图2B示出的处理节点可以以服务器的形态存在,图2C示出的处理节点可以以连接有存储装置的服务器的形态存在。由于图2B和图2C示出的处理节点均包括至少两个存储盘,因此,图2B和图2C示出的处理节点均可属于特殊的存储节点。在实际应用中,图2C示出的存储装置还包括用于管理所述至少两个存储盘的存储控制器,图2C并未示出。
本申请实施例的至少一个处理节点10上部署有处理模块20。该处理模块20可以是软件模块,例如进程/线程。
该处理模块20可以完成处理节点10的功能,即处理模块20可以用于接收读请求,并响应于该读请求从至少两个存储节点11中读取相应的数据,也可以用于接收写请求,并响应于该写请求将待写数据切分为多个子数据,以及将每个子数据存储于相应的存储盘中,还可以在存储子数据后,存储该子数据与存储盘之间的对应关系,即保存该子数据的元数据,还可以监控/管理至少两个存储节点11的存储盘的状态。
示例性的,处理模块20用于接收包括待处理数据的写请求,并将待处理数据切分为第一子数据和第二子数据,以及将第一子数据存储于至少两个存储节点11的第一存储盘群中,将第二子数据存储于至少两个存储节点11的第二存储盘群中,第一存储盘群和第二存储盘群配置有不同的节能态,存储盘群可以参考后续描述。处理模块20还用于接收包括待处理数据的标识的读请求,并根据该待处理数据的标识,读取待处理数据的元数据,以确定第一存储盘群和第二存储盘群,以及从第一存储盘群中读取第一子数据,并在读取第一子数据后,从第二存储盘群中读取第二子数据。可选的,处理模块20还存储第一存储盘群中的存储盘与第一子数据之间的对应关系,存储第二存储盘群中的存储盘与第二子数据之间的对应关系。
处理模块20的部分或全部可以以计算机程序的形式存储于某一处理节点10的非易失性存储器中(或某一处理节点10的内存103中)。图2A示出了处理模块20以计算机程序的形式存储于一个处理节点10的非易失性存储器104的结构。
可选的,该处理模块20可以包括业务模块201和管理模块202。业务模块201与管理模块202、存储节点11通信,用于接收读请求,并响应于该读请求从至少两个存储节点11中读取相应的数据,也可以用于接收写请求,并响应于该写请求将待写数据切分为多个子数据,以及将每个子数据存储于至少两个存储节点11中。业务模块201还可以存储子数据与存储盘群之间的对应关系。管理模块202用于监控/管理至少两个存储节点11的存储盘群,还用于管理每个存储盘。
容易理解的是,业务模块201和管理模块202均属于处理模块20的子模块。业务模块201和管理模块202均可以是软件模块,例如进程/线程。
实际应用中,业务模块201可以由至少两个处理节点10中的某一处理节点10实现,也可以为至少两个处理节点10中的某一处理节点10中的一个功能模块,还可以分布式的设置于多个处理节点10。类似的,管理模块202可以由至少两个处理节点10中的某一处理节点10实现,也可以为至少两个处理节点10中的某一处理节点10中的一个功能模块,还可以分布式的设置于多个处理节点10。
也就是说,业务模块201和管理模块202可以位于同一处理节点10上(其示意图如图3所示),也可以位于不同的处理节点10上(其示意图如图4所示)。图3和图4从软件的角度示出了处理节点10的结构,图3和图4均为业务模块201和管理模块202的分布结构示意图,并不是对业务模块201和管理模块202的分布结构的限定。
容易理解的是,业务模块201和管理模块202可以以计算机程序的形式存储于相应的处理节点10的非易失性存储器104(或内存103)中。
当然,在实际应用中,还可根据处理模块20的实际功能将处理模块划分出其他功能模块,例如元数据模块,该元数据模块用于存储子数据与存储盘群之间的对应关系,本申请实施例对此不作具体限定。
图1中的存储节点11,是分布式存储***中提供存储空间的设备。
本申请实施例的分布式存储***中,至少两个存储节点11的存储盘构成存储盘池,该存储盘池中存储盘的根据唤醒时延被划分为至少两个存储盘群,每个存储盘群的唤醒时延不同。为了便于描述,后续采用“至少两个存储节点11的存储盘划分为至少两个存储盘群”描述。
在实际应用中,根据存储盘可支持的节能态,将至少两个存储节点11的存储盘划分为至少两个存储盘群,其中,至少两个存储盘群配置有至少两个节能态。
存储盘群的数量可以与存储盘支持的节能态的种类相同,也可以小于存储盘支持的节能态的种类。至少两个存储盘群中的任意两个存储盘群所配置的节能态可能不同,也可能相同。
示例性的,结合上述表1和图1,如图5所示,若存储盘支持4种节能态(A态、B态、C态、Z态),则可以将至少两个存储节点11的存储盘划分为4个存储盘群,这4个存储盘群分别为:A态存储盘群、B态存储盘群、C态存储盘群、Z态存储盘群。
上述A态存储盘群中存储盘的唤醒时延为10毫秒,功耗为5.3瓦,该状态的存储盘与空闲态0存储盘的性能基本一致。上述B态存储盘群中存储盘的唤醒时延为1.5秒,功耗为3.4瓦,相较于空闲态0存储盘,B态存储盘群中存储盘的功耗降低37%。上述C态存储盘群中存储盘的唤醒时延为4秒,功耗为2.8瓦,相较于空闲态0存储盘,C态存储盘群中存储盘的功耗降低48%。上述Z态存储盘群中存储盘的唤醒时延为15秒,功耗为0.7瓦,相较于空闲态0存储盘,Z态存储盘群中存储盘的功耗降低87%。
当然,根据实际需要,至少两个存储节点11的存储盘被划分的存储盘群的数量也可以小于4。例如将至少两个存储节点11的存储盘划分为3个存储盘群,这3个存储盘群分别为:A态存储盘群、B态存储盘群、C态存储盘群。
可选的,上述至少两个存储盘群按照唤醒时延由短到长的顺序依次排列。容易理解的是,为了便于描述,本申请实施例主要以至少两个存储盘群按照唤醒时延由短到长的顺序依次排列为例进行说明。在实际应用中,至少两个存储盘群也可以按照唤醒时延由长到短的顺序依次排列,本申请对此不作具体限定。
上述至少两个存储节点的存储盘包括每个存储节点的存储盘。本申请实施例中,对于每个存储节点而言,该存储节点的存储盘可以为连接该存储节点的***总线的存储盘,也可以为与适配卡连接的外设中的存储盘,该适配卡与***总线连接。
可选的,存储节点11可以具备上述处理节点10的功能,这样,存储节点11与处理节点11可以视为同一设备。这种场景中,存储节点11的硬件结构可以参考上述图2B或图2C。
当然,存储节点11也可以不具备上述处理节点10的功能,仅具备用于存储数据的功能。下述图6和下述图7示出了这种场景中存储节点11的硬件结构。
如图6所示,存储节点11包括:通信接口60、处理器61和存储单元62,其中,通信接口60、处理器61和存储单元62通过***总线63连接。
通信接口60用于与其他设备(如处理节点10)通信。
处理器61用于实现数据的存储流程。
处理器61可以是任何计算器件,可以是CPU,微处理器,可编程控制器,ASIC,或一个或多个用于控制本申请方案程序执行的集成电路。处理器61是存储节点11的控制中心。
存储单元62可以包括至少一个存储控制器,以及每一存储控制器连接的多个存储盘。其中,存储控制器可以是ASIC芯片,也可以是现场可编程门阵列(Field-ProgrammableGate Array,FPGA)。这里,存储单元62的物理形态可以是SSD,也可以是HDD。
可选的,图6示出的存储节点11可以以服务器的形态存在。
如图7所示,存储节点11包括:通信接口70、处理器71、存储器72、适配卡73和存储设备74,其中,通信接口70、处理器71、存储器72和适配卡73通过***总线75连接,存储设备74包括多个存储盘,存储设备74与适配卡73连接。
通信接口70用于与其他设备(如处理节点10)通信。
处理器71用于实现数据的存储流程。
处理器71可以是任何计算器件,可以是CPU,微处理器,可编程控制器,ASIC,或一个或多个用于控制本申请方案程序执行的集成电路。处理器71是存储节点11的控制中心。
存储器72可以用于存储软件程序以及应用模块,如存储节点11的***程序。处理器71通过运行该团软件程序/应用模块,从而执行存储节点11的各种功能应用。
可选的,图7中的通信接口70、处理器71、存储器72以及适配卡73可以组成服务器,存储设备74可视为与该服务器连接的专用于存储的外设。当然,存储设备74还包括存储控制器,图7并未示出。
从软件的角度上看,图6或图7示出的存储节点11包括存储模块,该存储模块用于管理数据的写入或读取。该存储模块可与上述业务模块201通信,以实现数据的写入/读取,也可与管理模块202通信,以实现对存储盘的状态的控制。
通常,在执行读写操作之前,首先需要搭建分布式存储***。具体的,根据配置文件在分布式存储***的至少两个存储节点11上部署至少两个存储盘群等。其中,配置文件可以用于记录:分布式存储***中的存储盘群的数量,每个存储盘群的唤醒时延等。
以下,结合上述图1~图7,对本申请实施例提供的数据处理方法进行说明。
从上面描述可知,本申请实施例的提供的分布式存储***的存储盘包括至少两个存储盘群,且至少两个存储盘群配置有至少两个节能态某一数据的不同子数据存储于不同节能态的存储盘群中。为了便于说明,以分布式存储***的存储盘预先被配置有至少两个存储盘群,每个存储盘群配置的节能态不同,读写待处理数据,待处理数据包括第一子数据和第二子数据为例进行说明。
此外,结合上述描述,以业务模块、管理模块为例说明本申请实施例提供的数据处理方法。
图8为本申请实施例提供的一种数据处理方法的交互示意图。图8所示的方法可以包括如下步骤:
S800、业务模块接收包括待处理数据的写请求。
S801、业务模块与管理模块通信,以获取分布式存储***中存储盘的相关信息。
结合上述描述可知,管理模块用于监控/管理至少两个存储节点的存储盘群,还用于管理每个存储盘。这样,管理模块能够确定出每个存储盘群的信息,如存储盘群所配置的节能态;还能够确定出存储盘群中每个存储盘的信息,如存储盘目前的状态、存储盘的剩余存储容量等。
可选的,在接收到写请求后,响应于该写请求,业务模块向管理模块发送存储盘信息获取请求,以请求获取分布式存储***中每个存储盘群的信息以及存储盘群中每个存储盘的信息。相应的,在接收到存储盘信息获取请求后,管理模块向业务模块发送分布式存储***中每个存储盘群的信息以及存储盘群中每个存储盘的信息。
S802、业务模块将待处理数据切分为第一子数据和第二子数据,并确定第一存储盘群中的第一存储盘组和第二存储盘群中的第二存储盘组。
其中,第一子数据的访问顺序位于第二子数据的访问顺序之前。
可选的,业务模块可以根据访问先后顺序以及存储盘群配置的节能态的唤醒时延(后续采用存储盘群的唤醒时延表示),将待处理数据切分为第一子数据和第二子数据,还可以根据其他规则以及存储盘群的唤醒时延,将待处理数据切分为第一子数据和第二子数据,本申请实施例对此不作具体限定。
本实施例主要以业务模块根据访问先后顺序以及存储盘群的唤醒时延,将待处理数据切分为第一子数据和第二子数据为例进行说明。
具体的,业务模块与管理模块通信,确定出分布式存储***中每一存储盘群配置的节能态,假设第一存储盘群配置有第一节能态,第二存储盘群配置有第二节能态,第一节能态的唤醒时延小于第二节能态的唤醒时延,且第一节能态的唤醒时延小于第二节能态的唤醒时延均为预先设置的,则业务模块根据第一节能态的唤醒时延、第二节能态的唤醒时延和访问带宽,计算第一子数据的大小,并确定第一子数据;相应的,业务模块根据待处理数据的大小以及第一子数据的大小,计算第二子数据的大小,并确定第二子数据。
可选的,上述访问带宽可以为客户端到存储盘之间的I/O带宽,也可以为预先设定的大小固定的带宽,还可以为某一特定应用场景中的IO带宽,本申请实施例对此不作具体限定。
示例性的,结合上述表1,若访问带宽为客户端到存储盘之间的IO带宽,该带宽采用T表示,第一节能态的唤醒时延采用DA表示,第二节能态的唤醒时延采用DB表示,业务模块将待处理数据切分为第一子数据和第二子数据,则第一子数据的大小L1为:L1=T×(DB–DA+λ1),第二子数据的大小L2为:L2=待处理数据的大小–L1。其中,λ1是时间调节因子,用于调整实际运行过程中的时间,以保证多级存储读写的先后顺序的连贯性,使得在时间上不等待,不重叠,同时也用于适配业务模块自身的处理时延(毫秒级别)。时间调节因子的数值需要根据实际情况确定,可以为0,也可以为其他数值。
具体的,业务模块根据访问先后顺序和唤醒时延从短到长的顺序,确定第一子数据以及第一存储盘群后,根据该第一存储盘群中每个存储盘的状态以及剩余存储空间,确定第一存储盘组。该第一存储盘组包括第一存储盘群中多个处于可读态、且剩余存储空间大于零的存储盘。相应的,业务模块在确定第二子数据以及第二存储盘群后,根据该第二存储盘群中每个存储盘的状态以及剩余存储空间,确定第二存储盘组。该第二存储盘组包括多个处于可读态、且剩余存储空间大于零的存储盘。
需要说明的是,在实际应用中,为了满足读写的时效性,对于分布式存储***中的存储盘群,设置该存储盘群中一直存在多个处于可读态的存储盘(但并非全部,一般为存储盘群中的少数存储盘),其余存储盘设置为相应的节能态。可选的,对于某一存储盘群而言,若当前处于可读态的x个存储盘的剩余存储空间小于预设值,则将该存储盘群中的其他x个存储盘的状态从节能态转换为可读态。
相应的,上述第一存储盘组包括第一存储盘群中当前处于可读态的存储盘,上述第二存储盘组包括第二存储盘群中当前处于可读态的存储盘。
S803、业务模块将第一子数据存储于第一存储盘组中,并将第二子数据存储于第二存储盘组中。
可选的,为了保证数据的可靠性,业务模块可以采用纠删码(erasure coding,EC)条带存储方式/多副本存储方式将子数据写入存储盘组中,本申请实施例对此不作具体限定。EC条带存储方式和多副本存储方式可参考现有技术,这里不再进行详细赘述。
具体的,业务模块确定第一存储盘组中每个存储盘所归属的存储节点,并向确定出的存储节点发送子数据写请求,以便于确定出的存储节点在相应的存储盘中存储第一子数据。同理,业务模块确定第二存储盘组中每个存储盘所归属的存储节点,并向确定出的存储节点发送子数据请求,以便于确定出的存储节点在相应的存储盘中存储第二子数据。
可选的,本申请实施例中业务模块可以并列执行第一子数据的存储过程和第二子数据的存储过程,也可以在第一子数据存储结束后,再存储第二子数据,本申请实施例对此不作具体限定。
进一步地,在将第一子数据存储于第一存储盘组后,业务模块还存储第一子数据和第一存储盘组包括的存储盘之间的对应关系,以便于后续在读数据过程中,业务模块根据该对应关系确定存储第一子数据的存储盘。同理,在将第二子数据存储于第二存储盘组后,业务模块还存储第二子数据和第二存储盘组包括的存储盘之间的对应关系,以便于后续在读数据过程中,业务模块根据该对应关系确定存储第二子数据的存储盘。一般的,第一子数据和第一存储盘组包括的存储盘之间的对应关系,以及第二子数据和第二存储盘组包括的存储盘之间的对应关系属于待处理数据的元数据。
S804(可选的)、在第一存储盘组中存储盘的剩余存储空间为零时,管理模块将第一存储盘组的存储盘置为第一节能态;在第二存储盘组中存储盘的剩余存储空间为零时,管理模块将第二存储盘组的存储盘置为第二节能态。
管理模块管理每个存储盘。第一存储盘组中存储盘的剩余存储空间为零,即暂时不需要将数据写入第一存储盘组中,第一存储盘组包括于第一存储盘群中,因此,管理模块将第一存储盘组中的存储盘置为第一节能态,有效的降低了该第一存储盘组中存储盘的功耗。
同理,第二存储盘组中存储盘的剩余存储空间为零,即暂时不需要将数据写入第二存储盘组中,第二存储盘组包括于第二存储盘群中,因此,管理模块将第二存储盘组中的存储盘置为第二节能态,有效的降低了该第二存储盘组中存储盘的功耗。
综上,对于待处理数据而言,将该待处理数据的第一子数据存储于第一存储盘组,将该待处理数据的第二子数据存储于第二存储盘组,第一存储盘组归属于第一节能态的第一存储盘群,第二存储盘组归属于第二节能态的第二存储盘群,由于处于节能态的存储盘的功耗较低,因此,相比于现有技术,待处理数据的存储方式有效的降低了存储盘的功耗。
S800~S804实现了待处理数据的存储,在存储待处理数据后,业务模块还可以根据实际需求读取该待处理数据。下述S805~S810为待处理数据的读取过程。
S805、业务模块接收包括待处理数据的标识的读请求。
S806、业务模块根据待处理数据的标识,读取待处理数据的元数据,以确定第一存储盘组和第二存储盘组。
结合上述描述可知,业务模块存储有第一子数据和第一存储盘组包括的存储盘之间的对应关系,以及存储有第二子数据和第二存储盘组包括的存储盘之间的对应关系。
具体的,在接收到包括待处理数据的标识的读请求后,业务模块根据第一子数据和第一存储盘组包括的存储盘之间的对应关系,确定第一存储盘组包括的存储盘,并根据第二子数据和第二存储盘组包括的存储盘之间的对应关系,确定第二存储盘组包括的存储盘。
S807、业务模块向管理模块发送唤醒命令,指示管理模块唤醒第一存储盘组中的存储盘和第二存储盘组中的存储盘。
S808、管理模块唤醒第一存储盘组中的存储盘和第二存储盘组中的存储盘,并向业务模块发送用于指示已成功唤醒的响应消息。
管理模块管理每个存储盘。在接收到唤醒命令后,管理模块检测第一存储盘组中的存储盘的状态以及第二存储盘组中的存储盘的状态。若第一存储盘组中的存储盘处于第一节能态,则管理模块唤醒第一存储盘组中的存储盘。若第一存储盘组中的存储盘处于可读态,则管理模块保留该存储盘的状态。同理,若第二存储盘组中的存储盘处于第二节能态,则管理模块唤醒第二存储盘组中的存储盘。若第二存储盘组中的存储盘处于可读态,则管理模块保留该存储盘的状态。
本申请实施例中管理模块唤醒某一存储盘是指管理模块向该存储盘所归属的存储节点的存储模块发送唤醒请求,请求将该存储盘的状态从节能态转换为可读态。结合前面描述可知,存储盘从节能态转换为可读态需要一段时间,该时间称为唤醒时延。不同节能态的存储盘的唤醒时延不同。
S809、业务模块从第一存储盘组中读取第一子数据,并在读取第一子数据后,从第二存储盘群中读取第二子数据。
在接收到响应消息后,业务模块确定第一存储盘组中的存储盘和第二存储盘组中的存储盘已被唤醒。进一步地,业务模块根据访问先后顺序,依次读取第一子数据和第二子数据。
第一节能态的唤醒时延小于第二节能态的唤醒时延,且第一子数据的大小是根据第一节能态的唤醒时延和第二节能态的唤醒时延确定出的,因此,业务模块从第一存储盘组中读取第一子数据后,第二存储盘组中存储盘的唤醒时延也基本结束,这样,业务模块即可从第二存储盘组中读取第二子数据,保证了数据对时延的要求。
S810(可选的)、在业务模块读取第一子数据后,管理模块将第一存储盘组中的存储盘置为第一节能态;在业务模块读取第二子数据后,管理模块将第二存储盘组中的存储盘置为第二节能态。
可选的,管理模块可以在业务模块读取第一子数据后,立刻将第一存储盘组中的存储盘置为第一节能态,也可以在业务模块读取第一子数据后,等待第一预设时间,然后再将第一存储盘组中的存储盘置为第一节能态,还可以在业务模块读取第一子数据和第二子数据后,将第一存储盘组中的存储盘置为第一节能态,本申请实施例对此不作具体限定。
可选的,管理模块可以在业务模块读取第二子数据后,立刻将第二存储盘组中的存储盘置为第二节能态,也可以在业务模块读取第二子数据后,等待第二预设时间,然后再将第二存储盘组中的存储盘置为第二节能态,还可以在业务模块读取第一子数据和第二子数据后,将第二存储盘组中的存储盘置为第二节能态,本申请实施例对此不作具体限定。
管理模块将第一存储盘组中的存储盘置为第一节能态以及将第二存储盘组中的存储盘置为第二节能态,有效的降低了第一存储盘组中的存储盘和第二存储盘组中的存储盘的功耗。
综上所述,本申请实施例提供的数据处理方法既能降低存储盘的功耗,还能满足数据对时延的要求。
图8示出的数据处理方法的流程仅仅以待处理数据切分为第一子数据和第二子数据为例进行说明,并不是对子数据的数量的限定。
在实际应用中,若分布式存储***包括m(m≥2)个存储盘群,则业务模块可根据实际需求将待处理数据切分为n(2≤n≤m)个子数据,后续,业务模块将n个子数据写入不同节能态的存储盘群中。
示例性的,在分布式***包括4个存储盘群的场景中,若待处理数据不足以被切分为4个子数据时,业务模块可将该待处理数据切分为3个子数据;若待处理数据不足以被切分为3个子数据时,业务模块可将该待处理数据切分为2个子数据。
特殊的,若待处理数据不足以被切分为2个子数据时,业务模块无需切分待处理数据,该场景中待处理数据的读写方法可以参考现有技术,本申请实施例对此不作具体描述。
具体的,业务模块切分待处理数据的方法为:对于待处理数据的第i个子数据而言,在i∈[1,n)的情况下,业务模块根据第i个存储盘群的唤醒时延、第i+1个存储盘群的唤醒时延和访问带宽,确定第i个子数据的大小。这样,业务模块即可根据第i个子数据的大小,确定第i个子数据。其中,第i个存储盘群的唤醒时延和第i+1个存储盘群的唤醒时延均为预先设置的。在i=n的情况下,业务模块根据待处理数据的大小以及已确定的n-1个子数据中每个子数据的大小,确定第i个子数据的大小,并根据第i个子数据的大小,确定第i个子数据。该方法与上述S802中业务模块将待处理数据切分为第一子数据和第二子数据的方法一致。
在一种实现方式中,结合上述表1,若访问带宽为客户端到存储盘之间的IO带宽,该带宽采用T表示,A态存储盘群的唤醒时延采用DA表示,B态存储盘群的唤醒时延采用DB表示,C态存储盘群的唤醒时延采用DC表示,Z态存储盘群的唤醒时延采用DZ表示,业务模块将待处理数据切分为4个子数据:子数据1、子数据2、子数据3以及子数据4,则子数据1的大小L1为:L1=T×(DB–DA+λ1),子数据2的大小L2为:L2=T×(DC–DB+λ2),子数据3的大小L3为:L3=T×(DZ–DC+λ3),子数据4的大小L4为:L4=待处理数据的大小–L1–L2–L3。其中,λ1、λ2和λ3是时间调节因子。时间调节因子的定义可以参考上述描述。
示例性的,若客户端到存储盘之间的IO带宽为100Mbps(兆比特每秒),即12.5MBps(兆字节每秒),DA为10毫秒,DB为1.5秒,DC为4秒,DZ为15秒,将毫秒级别的λ忽略不计,则L1=12.5×(1.5–0.01)=18.75MB,L2=12.5×(4–1.5)=31.25MB,L3=12.5×(15–4)=137.5MB,L4=待处理数据的大小–L1–L2–L3。
业务模块在确定出n个子数据后,可以根据子数据的访问先后顺序和存储盘群的唤醒时延,确定每个子数据所存储的存储盘群。示例性的,业务模块将第i个子数据写入第i个存储盘群。其中,第i个子数据为n个子数据按照访问先后顺序依次排列的第i个子数据,第i个存储盘群为m个存储盘群按照唤醒时延由短到长的顺序依次排列的第i个存储盘群。
示例性的,如图9所示,分布式存储***包括四个存储盘群,这四个存储盘群分别为:A态存储盘群、B态存储盘群、C态存储盘群、Z态存储盘群,这四个存储盘群根据唤醒时延从短到长的顺序依次排列为:A态存储盘群、B态存储盘群、C态存储盘群、Z态存储盘群。业务模块将待处理数据切分为四个子数据,这四个子数据按照访问先后顺序依次排列为:第一子数据、第二子数据、第三子数据、第四子数据。业务模块将第一子数据写入A态存储盘群的4号存储盘、5号存储盘和6号存储盘中,将第二子数据写入B态存储盘群的16号存储盘、17号存储盘和18号存储盘中,将第三子数据写入C态存储盘群的22号存储盘、23号存储盘和24号存储盘中,将第四子数据写入Z态存储盘群的28号存储盘、29号存储盘和30号存储盘中。
业务模块将n个子数据写入不同节能态的存储盘群中。后续,在需要读取所述n个子数据时,业务模块先确定存储子数据的存储盘,再根据访问顺序依次读取每一子数据。该流程与上述S805~S810所述的读数据流程类似。
示例性的,如图9所示,当业务模块接收到包括待处理数据标识的读请求时后,确定存储待处理数据的子数据的存储盘包括4号存储盘、5号存储盘、6号存储盘、16号存储盘、17号存储盘、18号存储盘、22号存储盘、23号存储盘、24号存储盘、28号存储盘、29号存储盘和30号存储盘中,并通知管理模块唤醒这些存储盘。第一子数据最先被访问,由于第一子数据存储于4号存储盘、5号存储盘和6号存储盘,且4号存储盘、5号存储盘和6号存储盘为A态存储盘群中的存储盘,A态存储盘群的唤醒时延是10毫秒,基本可立即读取,因此,业务模块开始从4号存储盘、5号存储盘和6号存储盘上读取第一子数据。在读取第一子数据后,16号存储盘、17号存储盘和18号存储盘基本已切换到可读态,业务模块继续从16号存储盘、17号存储盘和18号存储盘读取第二子数据。在读取第二子数据后,22号存储盘、23号存储盘和24号存储盘基本已切换到可读态,业务模块继续从22号存储盘、23号存储盘和24号存储盘读取第三子数据。在读取第三子数据后,28号存储盘、29号存储盘和30号存储盘基本已切换到可读态,业务模块继续从28号存储盘、29号存储盘和30号存储盘读取第四子数据。这样,待处理数据即可读成功。
上述业务模块和管理模块执行的步骤均可视为处理节点的处理模块执行的步骤。
本申请实施例提供的数据处理方法既能降低存储盘的功耗,还能满足数据对时延的要求。
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
从上面描述可知,本申请实施例提供的分布式存储***包括至少一个处理节点。所述至少一个处理节点包括至少一个处理器和至少一个存储器。至少一个存储器,用于存储计算机指令,当所述至少一个处理器调用所述计算机指令时,执行上述数据处理方法。
可选的,上述至少一个处理器和上述至少一个存储器部署于同一处理节点上。
可选的,在至少一个处理节点包括至少两个处理器的情况下,至少两个处理器可以位于同一处理节点中,也可以为位于不同处理节点中,本申请实施例对此不做具体限定。
示例性的,若本申请实施例中的至少一个处理节点包括第一处理器和第二处理器,则第一处理器可以用于接收包括待处理数据的标识的读请求;第二处理器用于响应于第一处理器接收到的读请求,从第一存储盘群中读取第一子数据,并在读取第一子数据后,从第二存储盘群中读取第二子数据。第一处理器和第二处理器可以位于同一处理节点中,也可以为位于不同处理节点中。
本申请另一实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当指令在计算机(如上述至少一个处理节点)上运行时,上述方法实施例所示的方法流程被执行。
在本申请的另一实施例中,还提供一种计算机程序产品,该计算机程序产品包括计算机指令,当计算机(如上述至少一个处理节点)调用该计算机指令时,执行上述方法实施例所示的方法流程。
在上述实施例中,可以全部或部分的通过软件,硬件,固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式出现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。
计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据终端。该可用介质可以是磁性介质,(例如,软盘,硬盘、磁带)、光介质(例如,DVD)或者半导体介质(例如固态硬盘solid state disk(SSD))等。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请实施例的具体实施方式,但本申请实施例的保护范围并不局限于此,任何在本申请实施例揭露的技术范围内的变化或替换,都应涵盖在本申请实施例的保护范围之内。因此,本申请实施例的保护范围应以所述权利要求的保护范围为准。

Claims (13)

1.一种数据处理方法,其特征在于,应用于分布式存储***,所述分布式存储***包括至少一个处理节点和至少两个存储节点,所述至少两个存储节点的存储盘包括至少两个存储盘群,所述至少两个存储盘群配置有至少两个节能态,所述至少一个处理节点上部署有处理模块;所述数据处理方法包括:
所述处理模块接收包括待处理数据的标识的读请求;其中,所述待处理数据存储于所述至少两个存储节点中,所述待处理数据包括第一子数据和第二子数据;
所述处理模块根据所述待处理数据的标识,读取所述待处理数据的元数据,以确定第一存储盘群和第二存储盘群,所述第一存储盘群包括所述至少两个存储节点中存储所述第一子数据的存储盘,所述第二存储盘群包括所述至少两个存储节点中存储所述第二子数据的存储盘,所述第一存储盘群配置有第一节能态,所述第二存储盘群配置有第二节能态,所述第一节能态的唤醒时延小于所述第二节能态的唤醒时延;
所述处理模块从所述第一存储盘群中读取所述第一子数据,并在读取所述第一子数据后,从所述第二存储盘群中读取所述第二子数据。
2.根据权利要求1所述的数据处理方法,其特征在于,所述处理模块从所述第一存储盘群中读取所述第一子数据之前,所述数据处理方法还包括:
所述处理模块根据所述待处理数据的元数据,确定所述第一存储盘群中的第一存储盘组和所述第二存储盘群中的第二存储盘组;其中,所述第一存储盘组所包括的存储盘为所述第一存储盘群中存储所述第一子数据的存储盘,所述第二存储盘组所包括的存储盘为所述第二存储盘群中存储所述第二子数据的存储盘;
所述处理模块从所述第一存储盘群中读取所述第一子数据,具体包括:
所述处理模块从所述第一存储盘组中读取所述第一子数据;
所述处理模块从所述第二存储盘群中读取所述第二子数据,具体包括:
所述处理模块从所述第二存储盘组中读取所述第二子数据。
3.根据权利要求2所述的数据处理方法,其特征在于,所述处理模块确定所述第一存储盘群中的第一存储盘组和所述第二存储盘群中的第二存储盘组之后,所述数据处理方法还包括:
所述处理模块确定所述第一存储盘组中的存储盘和所述第二存储盘组中的存储盘已被唤醒。
4.根据权利要求3所述的数据处理方法,其特征在于,所述处理模块从所述第一存储盘组中读取所述第一子数据之后,所述数据处理方法还包括:
所述处理模块将所述第一存储盘组中的存储盘置为所述第一节能态;
所述处理模块从所述第二存储盘组中读取所述第二子数据之后,所述数据处理方法还包括:
所述处理模块将所述第二存储盘组中的存储盘置为所述第二节能态。
5.根据权利要求1-4中任意一项所述的数据处理方法,其特征在于,所述处理模块接收包括待处理数据的标识的读请求之前,所述数据处理方法还包括:
所述处理模块接收包括所述待处理数据的写请求;
响应于所述写请求,所述处理模块将所述待处理数据切分为所述第一子数据和所述第二子数据,所述第一子数据的访问顺序位于所述第二子数据的访问顺序之前;
所述处理模块将所述第一子数据存储于所述第一存储盘群中,并将所述第二子数据存储于所述第二存储盘群中。
6.根据权利要求5所述的数据处理方法,其特征在于,所述处理模块将所述待处理数据切分为所述第一子数据和所述第二子数据,具体包括:
所述处理模块根据所述第一节能态的唤醒时延、所述第二节能态的唤醒时延和访问带宽,计算所述第一子数据的大小,并确定所述第一子数据,所述第一节能态的唤醒时延和所述第二节能态的唤醒时延均为预先设置的;
所述处理模块根据所述待处理数据的大小以及所述第一子数据的大小,计算所述第二子数据的大小,并确定所述第二子数据。
7.根据权利要求5或6所述的数据处理方法,其特征在于,所述处理模块将所述第一子数据存储于所述第一存储盘群中,并将所述第二子数据存储于所述第二存储盘群中,具体包括:
所述处理模块将所述第一子数据存储于所述第一存储盘组,并将所述第二子数据存储于所述第二存储盘组;
所述数据处理方法还包括:
在所述第一存储盘组中存储盘的剩余存储空间为零时,所述处理模块将所述第一存储盘组的存储盘置为所述第一节能态;
在所述第二存储盘组中存储盘的剩余存储空间为零时,所述处理模块将所述第二存储盘组的存储盘置为所述第二节能态。
8.一种分布式存储***,其特征在于,所述分布式存储***包括至少一个处理节点和至少两个存储节点,所述至少两个存储节点的存储盘包括至少两个存储盘群,所述至少两个存储盘群配置有至少两个节能态,所述至少一个处理节点上部署有处理模块,所述处理模块用于执行上述权利要求1-7中任意一项所述的数据处理方法。
9.一种分布式存储***,其特征在于,所述分布式存储***包括至少两个存储节点,所述至少两个存储节点的存储盘包括至少两个存储盘群,其中,所述至少两个存储盘群中的第一存储盘群处于第一节能态,所述至少两个存储盘群中的第二存储盘群处于第二节能态,所述第一节能态的唤醒时延小于所述第二节能态的唤醒时延;
所述至少两个存储盘群存储待处理数据,所述待处理数据包括第一子数据和第二子数据;
所述第一存储盘群存储所述第一子数据,所述第二存储盘群存储所述第二子数据。
10.根据权利要求9所述的分布式存储***,其特征在于,所述分布式存储***还包括至少一个处理节点,所述至少一个处理节点存储有所述待处理数据的元数据,所述待处理数据的元数据中记录有所述第一存储盘群与所述第一子数据的对应关系、以及所述第二存储盘群与所述第二子数据的对应关系。
11.一种分布式存储***,其特征在于,所述分布式存储***包括至少一个处理节点,每个处理节点包括至少一个处理器和至少一个存储器;所述至少一个存储器,用于存储计算机指令,当所述至少一个处理器调用所述计算机指令时,执行上述权利要求1-7中任意一项所述的数据处理方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有指令,当所述指令在计算机上运行时,使得如权利要求1-7中任意一项所述的数据处理方法被执行。
13.一种包含指令的计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,当所述计算机指令在计算机上运行时,使得如权利要求1-7中任意一项所述的数据处理方法被执行。
CN201811260310.1A 2018-10-26 2018-10-26 一种数据处理方法及分布式存储*** Active CN111104048B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201811260310.1A CN111104048B (zh) 2018-10-26 2018-10-26 一种数据处理方法及分布式存储***
EP19876171.0A EP3859538A4 (en) 2018-10-26 2019-09-12 DATA PROCESSING METHOD AND DISTRIBUTED STORAGE SYSTEM
PCT/CN2019/105703 WO2020082929A1 (zh) 2018-10-26 2019-09-12 一种数据处理方法及分布式存储***
US17/238,709 US11662925B2 (en) 2018-10-26 2021-04-23 Data processing method and distributed storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811260310.1A CN111104048B (zh) 2018-10-26 2018-10-26 一种数据处理方法及分布式存储***

Publications (2)

Publication Number Publication Date
CN111104048A true CN111104048A (zh) 2020-05-05
CN111104048B CN111104048B (zh) 2021-02-12

Family

ID=70331292

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811260310.1A Active CN111104048B (zh) 2018-10-26 2018-10-26 一种数据处理方法及分布式存储***

Country Status (4)

Country Link
US (1) US11662925B2 (zh)
EP (1) EP3859538A4 (zh)
CN (1) CN111104048B (zh)
WO (1) WO2020082929A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112612414A (zh) * 2020-12-18 2021-04-06 杭州前云数据技术有限公司 基于微处理器***调度实现冷数据分布式存储***
CN113568570A (zh) * 2021-06-22 2021-10-29 阿里巴巴新加坡控股有限公司 数据处理方法及装置
CN113687766A (zh) * 2020-05-19 2021-11-23 中移动信息技术有限公司 数据存储的方法、装置、设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104536904A (zh) * 2014-12-29 2015-04-22 杭州华为数字技术有限公司 一种数据管理的方法、设备与***
CN105701028A (zh) * 2014-11-28 2016-06-22 国际商业机器公司 分布式存储***中的磁盘管理方法和设备
CN105892947A (zh) * 2016-03-31 2016-08-24 华中科技大学 一种节能存储***的ssd与hdd混合缓存管理方法及***
CN106156331A (zh) * 2016-07-06 2016-11-23 益佳科技(北京)有限责任公司 冷热温数据服务器***及其处理方法
CN106777342A (zh) * 2017-01-16 2017-05-31 湖南大学 一种基于可靠性的高性能文件***混合节能存储***及方法
CN107632784A (zh) * 2017-09-14 2018-01-26 郑州云海信息技术有限公司 一种存储介质和分布式存储***的缓存方法、装置及设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6567891B2 (en) * 2001-03-14 2003-05-20 Hewlett-Packard Development Company, L.P. Methods and arrangements for improved stripe-based processing
US7188236B2 (en) * 2004-01-09 2007-03-06 Dell Products L.P. Method for using a timer based SMI for system configuration after a resume event
US9081687B2 (en) * 2007-12-28 2015-07-14 Intel Corporation Method and apparatus for MONITOR and MWAIT in a distributed cache architecture
US9507800B2 (en) * 2013-10-23 2016-11-29 Netapp, Inc. Data management in distributed file systems
US9348405B2 (en) * 2013-12-24 2016-05-24 Intel Corporation Systems and techniques for control of storage device power states
CN104008075B (zh) * 2014-05-26 2017-01-18 华中科技大学 一种分布式存储***请求的处理方法
CN105138416A (zh) * 2014-06-05 2015-12-09 中兴通讯股份有限公司 磁盘休眠处理方法及装置
CN104573119B (zh) * 2015-02-05 2017-10-27 重庆大学 云计算中面向节能的Hadoop分布式文件***存储方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105701028A (zh) * 2014-11-28 2016-06-22 国际商业机器公司 分布式存储***中的磁盘管理方法和设备
CN104536904A (zh) * 2014-12-29 2015-04-22 杭州华为数字技术有限公司 一种数据管理的方法、设备与***
CN105892947A (zh) * 2016-03-31 2016-08-24 华中科技大学 一种节能存储***的ssd与hdd混合缓存管理方法及***
CN106156331A (zh) * 2016-07-06 2016-11-23 益佳科技(北京)有限责任公司 冷热温数据服务器***及其处理方法
CN106777342A (zh) * 2017-01-16 2017-05-31 湖南大学 一种基于可靠性的高性能文件***混合节能存储***及方法
CN107632784A (zh) * 2017-09-14 2018-01-26 郑州云海信息技术有限公司 一种存储介质和分布式存储***的缓存方法、装置及设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113687766A (zh) * 2020-05-19 2021-11-23 中移动信息技术有限公司 数据存储的方法、装置、设备及存储介质
CN112612414A (zh) * 2020-12-18 2021-04-06 杭州前云数据技术有限公司 基于微处理器***调度实现冷数据分布式存储***
CN113568570A (zh) * 2021-06-22 2021-10-29 阿里巴巴新加坡控股有限公司 数据处理方法及装置
CN113568570B (zh) * 2021-06-22 2024-04-12 阿里巴巴创新公司 数据处理方法及装置

Also Published As

Publication number Publication date
US20210240374A1 (en) 2021-08-05
US11662925B2 (en) 2023-05-30
EP3859538A1 (en) 2021-08-04
EP3859538A4 (en) 2022-05-04
CN111104048B (zh) 2021-02-12
WO2020082929A1 (zh) 2020-04-30

Similar Documents

Publication Publication Date Title
EP1605455B1 (en) RAID with high power and low power disk drives
AU2010276389B2 (en) Adaptive power conservation in storage clusters
US8443221B2 (en) Methods, systems, and computer readable media for advanced power management for serial advanced technology attachment (SATA)-based storage devices
US9110669B2 (en) Power management of a storage device including multiple processing cores
US8572416B2 (en) Low power computer with main and auxiliary processors
US11662925B2 (en) Data processing method and distributed storage system
US9653110B2 (en) Speed control of data storage device using service controller
CN110488673B (zh) 一种低功耗模式的数据处理模块及数据处理方法
CN107122316B (zh) 一种soc备电方法以及soc
WO2015062316A1 (zh) 一种休眠磁盘的数据操作方法和装置
WO2018236442A1 (en) SYSTEM AND METHOD FOR MANAGING FINE GRANULARITY POWER CONTROL IN A HIGH CAPACITY COMPUTER GROUP
CN111459261A (zh) 磁盘唤醒方法、装置、电子设备及存储介质
CN112148365B (zh) 一种控制模块、方法及微控制器芯片
WO2024148977A1 (zh) 一种供电方法、硬盘及计算设备
CN116126127A (zh) 一种供电方法、硬盘及计算设备
KR20140047831A (ko) 저전력 클라우드 스토리지 시스템

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220214

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Patentee after: Huawei Cloud Computing Technologies Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.