CN117348820A - 一种分布式系统的数据处理方法、系统、设备及存储介质 - Google Patents
一种分布式系统的数据处理方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN117348820A CN117348820A CN202311641293.7A CN202311641293A CN117348820A CN 117348820 A CN117348820 A CN 117348820A CN 202311641293 A CN202311641293 A CN 202311641293A CN 117348820 A CN117348820 A CN 117348820A
- Authority
- CN
- China
- Prior art keywords
- heat
- storage device
- heat storage
- data
- low
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 30
- 238000005338 heat storage Methods 0.000 claims abstract description 219
- 238000000034 method Methods 0.000 claims abstract description 25
- 230000000875 corresponding effect Effects 0.000 claims description 51
- 238000012545 processing Methods 0.000 claims description 32
- 238000004364 calculation method Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 15
- 238000013507 mapping Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 9
- 238000004422 calculation algorithm Methods 0.000 claims description 8
- 230000002596 correlated effect Effects 0.000 claims description 4
- 230000004044 response Effects 0.000 abstract description 10
- 230000008520 organization Effects 0.000 abstract description 2
- 230000005012 migration Effects 0.000 description 5
- 238000013508 migration Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 235000019633 pungent taste Nutrition 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
Classifications
-
- 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/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种分布式系统的数据处理方法、系统、设备及存储介质,涉及分布式存储领域,该分布式系统的数据处理方法包括获取分布式系统的各个存储设备的第一热度数据;根据所有第一热度数据在所有存储设备中确定高热度存储设备和低热度存储设备;针对每一高热度存储设备,将高热度存储设备中的目标归置组迁移至其对应的至少一个低热度存储设备中,以使高热度存储设备和其对应的各个低热度存储设备的热度平衡。本申请能够避免热数据堆积在少数存储设备上,降低数据访问响应时间,提高存储系统整体性能与用户体验。
Description
技术领域
本申请涉及分布式存储领域,特别涉及一种分布式系统的数据处理方法、系统、设备及存储介质。
背景技术
Ceph是一种高性能、高可靠和可扩展的分布式存储系统,在一个统一的存储系统中同时提供了对象、块和文件存储功能。Ceph存储系统使用CRUSH(ControlledReplication Under Scalable Hashing,可扩展哈希下的受控复制)算法将数据对象均匀映射到OSD(Object-based Storage Device,对象存储设备)上。CRUSH算法以对象名称、存储系统的当前拓扑结构以及数据冗余策略为输入,可以直接计算得到所需数据对象所在的归置组,进而得到对应的存储设备的位置,并与其直接进行通信,避免了存储系统中的单点故障和性能瓶颈。但是使用CRUSH算法进行数据分布处理时,可能会造成热数据堆积在少数存储设备上,导致数据访问响应时间拉长,影响存储系统整体性能与用户业务。
因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
发明内容
本申请的目的是提供一种分布式系统的数据处理方法、系统、设备及存储介质,能够避免热数据堆积在少数存储设备上,降低数据访问响应时间,提高存储系统整体性能与用户体验。
为解决上述技术问题,本申请提供了一种分布式系统的数据处理方法,分布式系统包括多个存储设备,所述分布式系统的数据处理方法包括:
获取所述分布式系统的各个存储设备的第一热度数据;
根据所有所述第一热度数据在所有所述存储设备中确定高热度存储设备和低热度存储设备;
针对每一所述高热度存储设备,将所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备中,以使所述高热度存储设备和其对应的各个所述低热度存储设备的热度平衡。
在一示例性实施例中,所述目标归置组包括第一目标归置组,将所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备中的过程包括:
获取所述存储设备的各个归置组的第二热度数据;
基于所述高热度存储设备的各个归置组的第二热度数据确定第一目标归置组;
基于所述低热度存储设备的各个归置组的第二热度数据确定目标低热度存储设备;
将所述第一目标归置组迁移至所述目标低热度存储设备。
在一示例性实施例中,所述目标归置组包括第二目标归置组,将所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备中的过程包括:
判断所述高热度存储设备中是否存在第二目标归置组,所述第二目标归置组为从其他存储设备中迁移至所述高热度存储设备的归置组;
若是,当所述其他存储设备为所述低热度存储设备,将所述第二目标归置组迁移至所述低热度存储设备。
在一示例性实施例中,获取所述存储设备的各个归置组的第二热度数据之前,所述数据处理方法还包括:
针对每一所述归置组,当满足计算触发条件,获取所述归置组上一次计算的第二热度数据、所述归置组当前次计算的第二热度数据与上一次计算的第二热度数据的计算时间间隔、所述第二热度数据的半衰期时间及所述第二热度数据的类型;
基于所述上一次计算的第二热度数据、所述计算时间间隔、所述半衰期时间及所述类型得到所述归置组当前次计算的第二热度数据;
获取所述存储设备的各个归置组的第二热度数据的过程包括:
获取所述存储设备按上报周期上报的各个归置组最后一次计算的第二热度数据。
在一示例性实施例中,所述针对每一所述高热度存储设备,将所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备中的过程包括:
确定各个所述高热度存储设备的处理优先级,所述高热度存储设备的第一热度数据的大小和其处理优先级的高低呈正相关;
按所述处理优先级由高到低的顺序,将各个所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备。
在一示例性实施例中,所述根据所有所述第一热度数据在所有所述存储设备中确定高热度存储设备和低热度存储设备的过程包括:
获取所有所述第一热度数据的平均热度;
基于所述平均热度确定高热度阈值及低热度阈值;
将所述第一热度数据高于所述高热度阈值的存储设备确定为所述高热度存储设备,将所述第一热度数据低于所述低热度阈值的存储设备确定为所述低热度存储设备。
在一示例性实施例中,针对每一所述高热度存储设备,将所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备中之后,所述分布式系统的数据处理方法还包括:
将所述目标归置组及其迁移至的所述低热度存储设备的映射更新至存储设备关系表;
当接收到用户请求,判断更新后的存储设备关系表中是否存在与所述用户请求对应的映射;
若是,则按所述映射确定与所述用户请求对应的存储设备;
若否,则按可扩展哈希下的受控复制算法确定与所述用户请求对应的存储设备。
为解决上述技术问题,本申请还提供了一种分布式系统的数据处理系统,分布式系统包括多个存储设备,所述分布式系统的数据处理系统包括:
获取模块,用于获取所述分布式系统的各个存储设备的第一热度数据;
确定模块,用于根据所有所述第一热度数据在所有所述存储设备中确定高热度存储设备和低热度存储设备;
处理模块,用于针对每一所述高热度存储设备,将所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备中,以使所述高热度存储设备和其对应的各个所述低热度存储设备的热度平衡。
为解决上述技术问题,本申请还提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上文任意一项所述的分布式系统的数据处理方法的步骤。
为解决上述技术问题,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上文任意一项所述的分布式系统的数据处理方法的步骤。
本申请提供了一种分布式系统的数据处理方法,首先确定各个存储设备中第一热度数据,基于第一热度数据确定存储设备中的高热度存储设备和低热度存储设备,将高热度存储设备中的目标归置组迁移至低热度存储设备中,以使各个存储设备的热度平衡,从而避免热数据堆积在少数存储设备上,降低数据访问响应时间,提高存储系统整体性能与用户体验。本申请还提供了一种分布式系统的数据处理系统、电子设备及计算机可读存储介质,具有和上述数据处理方法相同的有益效果。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请所提供的一种分布式系统的数据处理方法的步骤流程图;
图2为本申请所提供的一种分布式系统的结构示意图;
图3为本申请所提供的一种分布式系统的数据处理系统的结构示意图。
具体实施方式
本申请的核心是提供一种分布式系统的数据处理方法、系统、设备及存储介质,能够避免热数据堆积在少数存储设备上,降低数据访问响应时间,提高存储系统整体性能与用户体验。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
第一方面,请参照图1,图1为本申请所提供的一种分布式系统的数据处理方法的步骤流程图,该分布式系统的数据处理方法包括:
S101:获取分布式系统的各个存储设备的第一热度数据;
可以理解,参照图2所示,分布式系统包括多个存储设备和一个监视器,多个存储设备中包括主存储设备,存储设备具体为对象存储设备,通过监视器执行S101~S103的步骤,每个存储设备包括至少一个归置组,每个存储设备对自身的第一热度数据进行计算,第一热度数据为存储设备中所有归置组的第二热度数据的和,假设某一存储设备中包括五个归置组,每个归置组计算自身的第二热度数据,将五个第二热度数据求和得到该存储设备的第一热度数据。
其中,每一归置组的第二热度数据由该归置组内数据对象访问频率确定,对数据对象的访问包含数据的读写的客户端IO操作,以及由于冗余机制,由主存储设备发来的subop(一种OSD之间的IO请求),其中,第二热度数据包括IOPS(Input/Output OperationsPer Second,每秒进行读写操作的次数)热度数据和/或吞吐量热度数据。
作为一种可选的实施例,在执行S101之前,还包括确定平衡范围的操作,平衡范围用于但不限于限定数据池级别或存储集群级别,从而限定存储集群的平衡数量,获取分布式系统的各个存储设备的第一热度数据的过程具体为获取平衡范围中各个存储设备的第一热度数据。当然,为了减小整个存储集群的平衡数量,可以通过配置项设置单次平衡数据的最大比例或者最大归置组数量。
作为另一种可选的实施例,为了平衡过程中不影响用户正常的I/O操作响应,在执行S101之前,可以通过配置项设置执行平衡操作的时间,即执行S101~S103的时间,可选时间范围包括每周的具体天数以及每天可执行的时间段,用户可以选择I/O相对较少的时间段执行平衡操作,尽量减少平衡过程中对客户端I/O的影响。
S102:根据所有第一热度数据在所有存储设备中确定高热度存储设备和低热度存储设备;
本实施例中,在获取到各个存储设备的第一热度数据后,可以将所有第一热度数据中较高的第一热度数据对应的存储设备确定为高热度存储设备,将较低的第一热度数据对应的存储设备确定为低热度存储设备。可以理解,高热度存储设备即待迁移归置组的发送端,低热度存储设备即待迁移归置组的接收端。
S103:针对每一高热度存储设备,将高热度存储设备中的目标归置组迁移至其对应的至少一个低热度存储设备中,以使高热度存储设备和其对应的各个低热度存储设备的热度平衡。
本实施例中,在确定高热度存储设备和低热度存储设备之后,进行高低热度存储设备之间的匹配,即可为每个高热度存储设备分配一个或多个低热度存储设备,在高热度存储设备中先确定目标归置组,目标归置组即待迁移的归置组,将目标归置组迁移至对应的低热度存储设备中,以使高热度存储设备和低热度存储设备的热度平衡,即高热度存储设备或低热度存储设备的热度数据均处于预设热度适中范围。
可见,本实施例中,首先确定各个存储设备中第一热度数据,基于第一热度数据确定存储设备中的高热度存储设备和低热度存储设备,将高热度存储设备中的目标归置组迁移至低热度存储设备中,以使各个存储设备的热度平衡,从而避免热数据堆积在少数存储设备上,降低数据访问响应时间,提高存储系统整体性能与用户体验。
在上述实施例的基础上:
在一示例性实施例中,根据所有第一热度数据在所有存储设备中确定高热度存储设备和低热度存储设备的过程包括:
获取所有第一热度数据的平均热度;
基于平均热度确定高热度阈值及低热度阈值;
将第一热度数据高于高热度阈值的存储设备确定为高热度存储设备,将第一热度数据低于低热度阈值的存储设备确定为低热度存储设备。
本实施例中,当获取到所有存储设备的第一热度数据后,对所有第一热度数据求平均得到平均热度,基于平均热度来确定高热度阈值和低热度阈值,可将高于平均热度一定阈值的第一热度数据对应的存储设备确定为高热度存储设备,将低于平均热度一定阈值的第一热度数据对应的存储设备确定为低热度存储设备。示例性地,可将平均热度的110%确定为高热度阈值,将平均热度的90%确定为低热度阈值,将大于高热度阈值的存储设备确定为高热度存储设备,将小于低热度阈值的存储设备确定为低热度存储设备,小于或等于高热度阈值以及大于或等于低热度阈值的存储设备不做处理。
在进行高低热度存储设备的匹配时,首先确定每一高热度存储设备的第一热度数据与平均热度的差值δ1,确定每一低热度存储设备的第一热度数据与平均热度的差值δ2,可将|δ1|和|δ2|接近的高热度存储设备和低热度存储设备匹配为一组,示例性地,假设第i个高热度存储设备的第一热度数据与平均热度的差值δ1i,假设第j个低热度存储设备的第一热度数据与平均热度的差值δ2j,|δ1i|和|δ2j|相等,则将第i个高热度存储设备和第j个低热度存储设备匹配为一组,在后续迁移过程中,将第i个高热度存储设备中的目前归置组迁移至第j个低热度存储设备中。
进一步的,考虑存在|δ1|和|δ2|不完全接近的情况,则可判断是否存在多个|δ2|的和与一个|δ1|接近,若存在,则将多个低热度存储设备与一个高热度存储设备匹配为一组,将高热度存储设备中的多个目标归置组分别迁移至多个低热度存储设备中,可以是一一对应迁移,即多个目标归置组一一对应迁移至多个低热度存储设备中,也可以对多个目标归置组均进行进一步划分进行迁移,示例性地,假设需要迁移的目标归置组有5个,将其中3个目标归置组迁移至其匹配的第一低热度存储设备,将剩下两个目标归置组分别迁移至其匹配的第二低热度存储设备和第三低热度存储设备。
进一步的,在确定低热度存储设备时,还需考虑存储设备的容量是否充足,若容量不足或者迁移后对容量平衡影响太大的存储设备不作为低热度存储设备。
在一示例性实施例中,目标归置组包括第一目标归置组,将高热度存储设备中的目标归置组迁移至其对应的至少一个低热度存储设备中的过程包括:
获取存储设备的各个归置组的第二热度数据;
基于高热度存储设备的各个归置组的第二热度数据确定第一目标归置组;
基于低热度存储设备的各个归置组的第二热度数据确定目标低热度存储设备;
将第一目标归置组迁移至目标低热度存储设备。
本实施例中,目标归置组包括第一目标归置组,高热度存储设备的第一目标归置组的热度数据为与δ1相等或接近的归置组,将第一目标归置组由高热度存储设备迁移至为其分配的目标低热度存储设备。进一步的,如果高热度存储设备中没有独立的、与δ1相等或接近的归置组,则可确定多个第一目标归置组,多个第一目标归置组的热度数据的和与δ1相等或接近,将多个第一目标归置组迁移至对应的目标低热度存储设备中。
在另一示例性实施例中,存储设备上包括主归置组和非主归置组,在选择第一目标归置组中,优先选择存储设备上的非主归置组进行迁移。
在一示例性实施例中,目标归置组包括第二目标归置组,将高热度存储设备中的目标归置组迁移至其对应的至少一个低热度存储设备中的过程包括:
判断高热度存储设备中是否存在第二目标归置组,第二目标归置组为从其他存储设备中迁移至高热度存储设备的归置组;
若是,当其他存储设备为低热度存储设备,将第二目标归置组迁移至低热度存储设备。
本实施例中,针对高热度存储设备,首先判断高热度存储设备中是否存在之前从其他存储设备中迁移过来的归置组,若存在,将该归置组确定为第二目标归置组,判断第二目标归置组的源存储设备当前是否为低热度存储设备,若是,将第二目标归置组迁移至其源存储设备,示例性地,假设高热度存储设备A中,存在之前执行热度平衡操作时,从存储设备B中迁移过来的归置组B1,若此时存储设备B为低热度存储设备,则将归置组B1确定为第二目标归置组,将其优先迁移回存储设备B。
在一示例性实施例中,获取存储设备的各个归置组的第二热度数据之前,数据处理方法还包括:
针对每一归置组,当满足计算触发条件,获取归置组上一次计算的第二热度数据、归置组当前次计算的第二热度数据与上一次计算的第二热度数据的计算时间间隔、第二热度数据的半衰期时间及第二热度数据的类型;
基于上一次计算的第二热度数据、计算时间间隔、半衰期时间及类型得到归置组当前次计算的第二热度数据;
获取存储设备的各个归置组的第二热度数据的过程包括:
获取存储设备按上报周期上报的各个归置组最后一次计算的第二热度数据。
本实施例中,每个归置组内都维护着自身的热度数据,热度数据包括IOPS热度数据和/或吞吐量热度数据,每次IO完成时都会触发如下计算关系式计算新的热度数据:
;
其中,valnew表示当前次计算的第二热度数据,valcur表示上一次计算的第二热度数据,el表示归置组当前次计算的第二热度数据与上一次计算的第二热度数据的计算时间间隔,hl表示第二热度数据的半衰期时间,半衰期不同的热度数据可以配置不同的值,由配置项确定,默认为24小时。delta可以分别各种I/O类型的热度,包括IOPS及吞吐量,表示IOPS热度时delta值为1,表示吞吐量热度时delta值为该I/O size大小。
在一示例性实施例中,针对每一高热度存储设备,将高热度存储设备中的目标归置组迁移至其对应的至少一个低热度存储设备中的过程包括:
确定各个高热度存储设备的处理优先级,高热度存储设备的第一热度数据的大小和其处理优先级的高低呈正相关;
按处理优先级由高到低的顺序,将各个高热度存储设备中的目标归置组迁移至其对应的至少一个低热度存储设备。
本实施例中,为了进一步减少因热数据集中分布造成的I/O响应慢的问题,本本实施例对高热度存储设备的处理优先级进行设置,热度数据高的高热度存储设备的处理优先级越高。
在一示例性实施例中,针对每一高热度存储设备,将高热度存储设备中的目标归置组迁移至其对应的至少一个低热度存储设备中之后,分布式系统的数据处理方法还包括:
将目标归置组及其迁移至的低热度存储设备的映射更新至存储设备关系表;
当接收到用户请求,判断更新后的存储设备关系表中是否存在与用户请求对应的映射;
若是,则按映射确定与用户请求对应的存储设备;
若否,则按可扩展哈希下的受控复制算法确定与用户请求对应的存储设备。
可以理解,数据平衡是指监视器选定要平衡的归置组之后,将该归置组对应新存储设备列表形成新的决议,决议通过后更新到集群的OSDMap(即存储设备关系表)中并进行持久化,监视器将该新版本OSDMap下发到指定的OSD上之后,开始进行数据平衡。
保存到OSDMap的位置单独作为特殊映射进行保存,客户端在执行I/O选择指定的OSD进行连接时,首先验证OSDMap中的特殊映射,如果有则使用当前归置组与OSD映射,如果没有则在使用CRUSH算法进行计算。
监视器将更新后的OSDMap下发至相关OSD后,触发平衡过程,可选的有回填或恢复。恢复适用于待迁入数据的OSD上已有该归置组数据,仅有近期少部分数据缺失时使用,回填则是适用于待迁入数据的OSD上没有该归置组数据或者差别较大时使用,判断使用何种方式进行平衡的由该归置组的主OSD进行决策,主要依据归置组日志信息进行评判缺失数据是否过多来确定。平衡完成之前,客户端仍可正常将I/O发送给归置组原有OSD进行处理。平衡结束后,OSDMap再次更新后,客户端可将请求发送到新的OSD上。尽量减少平衡过程中对客户端I/O的影响。
综上,本申请中的数据分布平衡方案,考虑到了数据热度分布不均匀的问题,数据平衡中,在原有的容量维度基础上增加数据热度的维度,提高分布式存储系统整体性能稳定性,减少因热数据集中分布造成的I/O响应慢的问题。同时,为了减少平衡过程对客户端I/O的影响,可以通过配置选择I/O较少的时间段进行平衡,并且可以控制数据平衡的最大比例或数量。此外,本申请提供平衡选择归置组原则,可以有效的选择合适的归置组进行平衡,并且无需保证绝对的热度均衡,减少平衡的数据量。
第二方面,请参照图3,图3为本申请所提供的一种分布式系统的数据处理系统的结构示意图,分布式系统包括多个存储设备,分布式系统的数据处理系统包括:
获取模块31,用于获取分布式系统的各个存储设备的第一热度数据;
确定模块32,用于根据所有第一热度数据在所有存储设备中确定高热度存储设备和低热度存储设备;
处理模块33,用于针对每一高热度存储设备,将高热度存储设备中的目标归置组迁移至其对应的至少一个低热度存储设备中,以使高热度存储设备和其对应的各个低热度存储设备的热度平衡。
可见,本实施例中,首先确定各个存储设备中第一热度数据,基于第一热度数据确定存储设备中的高热度存储设备和低热度存储设备,将高热度存储设备中的目标归置组迁移至低热度存储设备中,以使各个存储设备的热度平衡,从而避免热数据堆积在少数存储设备上,降低数据访问响应时间,提高存储系统整体性能与用户体验。
在一示例性实施例中,目标归置组包括第一目标归置组,将高热度存储设备中的目标归置组迁移至其对应的至少一个低热度存储设备中的过程包括:
获取存储设备的各个归置组的第二热度数据;
基于高热度存储设备的各个归置组的第二热度数据确定第一目标归置组;
基于低热度存储设备的各个归置组的第二热度数据确定目标低热度存储设备;
将第一目标归置组迁移至目标低热度存储设备。
在一示例性实施例中,目标归置组包括第二目标归置组,将高热度存储设备中的目标归置组迁移至其对应的至少一个低热度存储设备中的过程包括:
判断高热度存储设备中是否存在第二目标归置组,第二目标归置组为从其他存储设备中迁移至高热度存储设备的归置组;
若是,当其他存储设备为低热度存储设备,将第二目标归置组迁移至低热度存储设备。
在一示例性实施例中,数据处理系统还包括:
预处理模块33,用于针对每一归置组,当满足计算触发条件,获取归置组上一次计算的第二热度数据、归置组当前次计算的第二热度数据与上一次计算的第二热度数据的计算时间间隔、第二热度数据的半衰期时间及第二热度数据的类型;
基于上一次计算的第二热度数据、计算时间间隔、半衰期时间及类型得到归置组当前次计算的第二热度数据;
获取存储设备的各个归置组的第二热度数据的过程包括:
获取存储设备按上报周期上报的各个归置组最后一次计算的第二热度数据。
在一示例性实施例中,针对每一高热度存储设备,将高热度存储设备中的目标归置组迁移至其对应的至少一个低热度存储设备中的过程包括:
确定各个高热度存储设备的处理优先级,高热度存储设备的第一热度数据的大小和其处理优先级的高低呈正相关;
按处理优先级由高到低的顺序,将各个高热度存储设备中的目标归置组迁移至其对应的至少一个低热度存储设备。
在一示例性实施例中,根据所有第一热度数据在所有存储设备中确定高热度存储设备和低热度存储设备的过程包括:
获取所有第一热度数据的平均热度;
基于平均热度确定高热度阈值及低热度阈值;
将第一热度数据高于高热度阈值的存储设备确定为高热度存储设备,将第一热度数据低于低热度阈值的存储设备确定为低热度存储设备。
在一示例性实施例中,分布式系统的数据处理系统还包括:
更新模块,用于将目标归置组及其迁移至的低热度存储设备的映射更新至存储设备关系表;
处理模块33,还用于当接收到用户请求,判断更新后的存储设备关系表中是否存在与用户请求对应的映射,若是,则按映射确定与用户请求对应的存储设备,若否,则按可扩展哈希下的受控复制算法确定与用户请求对应的存储设备。
第三方面,本申请还提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上文任意一个实施例所描述的分布式系统的数据处理方法的步骤。
对于本申请所提供的一种电子设备的介绍请参照上述实施例,本申请在此不再赘述。
本申请所提供的一种电子设备具有和上述分布式系统的数据处理方法相同的有益效果。
第四方面,本申请还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上文任意一个实施例所描述的分布式系统的数据处理方法的步骤。
对于本申请所提供的一种计算机可读存储介质的介绍请参照上述实施例,本申请在此不再赘述。
本申请所提供的一种计算机可读存储介质具有和上述分布式系统的数据处理方法相同的有益效果。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其他实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种分布式系统的数据处理方法,其特征在于,分布式系统包括多个存储设备,所述分布式系统的数据处理方法包括:
获取所述分布式系统的各个存储设备的第一热度数据;
根据所有所述第一热度数据在所有所述存储设备中确定高热度存储设备和低热度存储设备;
针对每一所述高热度存储设备,将所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备中,以使所述高热度存储设备和其对应的各个所述低热度存储设备的热度平衡。
2.根据权利要求1所述的分布式系统的数据处理方法,其特征在于,所述目标归置组包括第一目标归置组,将所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备中的过程包括:
获取所述存储设备的各个归置组的第二热度数据;
基于所述高热度存储设备的各个归置组的第二热度数据确定第一目标归置组;
基于所述低热度存储设备的各个归置组的第二热度数据确定目标低热度存储设备;
将所述第一目标归置组迁移至所述目标低热度存储设备。
3.根据权利要求1所述的分布式系统的数据处理方法,其特征在于,所述目标归置组包括第二目标归置组,将所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备中的过程包括:
判断所述高热度存储设备中是否存在第二目标归置组,所述第二目标归置组为从其他存储设备中迁移至所述高热度存储设备的归置组;
若是,当所述其他存储设备为所述低热度存储设备,将所述第二目标归置组迁移至所述低热度存储设备。
4.根据权利要求2所述的分布式系统的数据处理方法,其特征在于,获取所述存储设备的各个归置组的第二热度数据之前,所述数据处理方法还包括:
针对每一所述归置组,当满足计算触发条件,获取所述归置组上一次计算的第二热度数据、所述归置组当前次计算的第二热度数据与上一次计算的第二热度数据的计算时间间隔、所述第二热度数据的半衰期时间及所述第二热度数据的类型;
基于所述上一次计算的第二热度数据、所述计算时间间隔、所述半衰期时间及所述类型得到所述归置组当前次计算的第二热度数据;
获取所述存储设备的各个归置组的第二热度数据的过程包括:
获取所述存储设备按上报周期上报的各个归置组最后一次计算的第二热度数据。
5.根据权利要求1所述的分布式系统的数据处理方法,其特征在于,所述针对每一所述高热度存储设备,将所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备中的过程包括:
确定各个所述高热度存储设备的处理优先级,所述高热度存储设备的第一热度数据的大小和其处理优先级的高低呈正相关;
按所述处理优先级由高到低的顺序,将各个所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备。
6.根据权利要求1所述的分布式系统的数据处理方法,其特征在于,所述根据所有所述第一热度数据在所有所述存储设备中确定高热度存储设备和低热度存储设备的过程包括:
获取所有所述第一热度数据的平均热度;
基于所述平均热度确定高热度阈值及低热度阈值;
将所述第一热度数据高于所述高热度阈值的存储设备确定为所述高热度存储设备,将所述第一热度数据低于所述低热度阈值的存储设备确定为所述低热度存储设备。
7.根据权利要求1-6任一项所述的分布式系统的数据处理方法,其特征在于,针对每一所述高热度存储设备,将所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备中之后,所述分布式系统的数据处理方法还包括:
将所述目标归置组及其迁移至的所述低热度存储设备的映射更新至存储设备关系表;
当接收到用户请求,判断更新后的存储设备关系表中是否存在与所述用户请求对应的映射;
若是,则按所述映射确定与所述用户请求对应的存储设备;
若否,则按可扩展哈希下的受控复制算法确定与所述用户请求对应的存储设备。
8.一种分布式系统的数据处理系统,其特征在于,分布式系统包括多个存储设备,所述分布式系统的数据处理系统包括:
获取模块,用于获取所述分布式系统的各个存储设备的第一热度数据;
确定模块,用于根据所有所述第一热度数据在所有所述存储设备中确定高热度存储设备和低热度存储设备;
处理模块,用于针对每一所述高热度存储设备,将所述高热度存储设备中的目标归置组迁移至其对应的至少一个所述低热度存储设备中,以使所述高热度存储设备和其对应的各个所述低热度存储设备的热度平衡。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1-7任意一项所述的分布式系统的数据处理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-7任意一项所述的分布式系统的数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311641293.7A CN117348820A (zh) | 2023-12-04 | 2023-12-04 | 一种分布式系统的数据处理方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311641293.7A CN117348820A (zh) | 2023-12-04 | 2023-12-04 | 一种分布式系统的数据处理方法、系统、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117348820A true CN117348820A (zh) | 2024-01-05 |
Family
ID=89355948
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311641293.7A Pending CN117348820A (zh) | 2023-12-04 | 2023-12-04 | 一种分布式系统的数据处理方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117348820A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582013A (zh) * | 2009-06-10 | 2009-11-18 | 成都市华为赛门铁克科技有限公司 | 一种在分布式存储中处理存储热点的方法、装置及系统 |
CN105808443A (zh) * | 2014-12-29 | 2016-07-27 | 华为技术有限公司 | 一种数据迁移的方法、装置及系统 |
CN110780819A (zh) * | 2019-10-25 | 2020-02-11 | 浪潮电子信息产业股份有限公司 | 一种分布式存储系统的数据读写方法 |
CN111125058A (zh) * | 2019-12-06 | 2020-05-08 | 浪潮电子信息产业股份有限公司 | 一种数据迁移方法、装置和系统 |
CN111858481A (zh) * | 2020-06-23 | 2020-10-30 | 苏州浪潮智能科技有限公司 | 一种分布式文件系统热度统计方法、装置 |
JP2021131796A (ja) * | 2020-02-21 | 2021-09-09 | 日本電信電話株式会社 | 分散ストレージネットワークにおけるデータ管理方法、装置、プログラム |
CN113391765A (zh) * | 2021-06-22 | 2021-09-14 | 中国工商银行股份有限公司 | 基于分布式存储系统的数据存储方法、装置、设备及介质 |
CN115469813A (zh) * | 2022-10-18 | 2022-12-13 | 上海芯赛云计算科技有限公司 | 数据处理方法及装置、存储介质、电子装置 |
-
2023
- 2023-12-04 CN CN202311641293.7A patent/CN117348820A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582013A (zh) * | 2009-06-10 | 2009-11-18 | 成都市华为赛门铁克科技有限公司 | 一种在分布式存储中处理存储热点的方法、装置及系统 |
CN105808443A (zh) * | 2014-12-29 | 2016-07-27 | 华为技术有限公司 | 一种数据迁移的方法、装置及系统 |
CN110780819A (zh) * | 2019-10-25 | 2020-02-11 | 浪潮电子信息产业股份有限公司 | 一种分布式存储系统的数据读写方法 |
CN111125058A (zh) * | 2019-12-06 | 2020-05-08 | 浪潮电子信息产业股份有限公司 | 一种数据迁移方法、装置和系统 |
JP2021131796A (ja) * | 2020-02-21 | 2021-09-09 | 日本電信電話株式会社 | 分散ストレージネットワークにおけるデータ管理方法、装置、プログラム |
CN111858481A (zh) * | 2020-06-23 | 2020-10-30 | 苏州浪潮智能科技有限公司 | 一种分布式文件系统热度统计方法、装置 |
CN113391765A (zh) * | 2021-06-22 | 2021-09-14 | 中国工商银行股份有限公司 | 基于分布式存储系统的数据存储方法、装置、设备及介质 |
CN115469813A (zh) * | 2022-10-18 | 2022-12-13 | 上海芯赛云计算科技有限公司 | 数据处理方法及装置、存储介质、电子装置 |
Non-Patent Citations (2)
Title |
---|
李东阳;刘鹏;丁科;田浪军;: "基于固态硬盘的云存储分布式缓存策略", 计算机工程, no. 04, pages 32 - 35 * |
陈志刚 编著: "《多层客户/服务计算模型及实现技术》", 31 January 2003, 长沙:湖南科学技术出版社 , pages: 80 - 81 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106161120B (zh) | 动态均衡负载的分布式元数据管理方法 | |
EP2710470B1 (en) | Extensible centralized dynamic resource distribution in a clustered data grid | |
US11003359B2 (en) | Method and device for managing disk pool | |
WO2015081750A1 (zh) | 一种存储数据副本的方法和终端装置以及服务器装置 | |
EP3163446B1 (en) | Data storage method and data storage management server | |
TW201030531A (en) | Resource management device, resource management program product, and resource management method | |
US8930328B2 (en) | Storage system, storage system control method, and storage control device | |
US20120246206A1 (en) | File server system and storage control method | |
CN103562881A (zh) | 数据存储池的碎片整理 | |
US20220075757A1 (en) | Data read method, data write method, and server | |
US20190332328A1 (en) | Storage Controller and IO Request Processing Method | |
CN109739684B (zh) | 基于向量时钟的分布式键值数据库的副本修复方法与装置 | |
US9875040B2 (en) | Assigning read requests based on busyness of devices | |
CN114489508B (zh) | 数据管理方法、装置、设备及介质 | |
JP5853109B2 (ja) | 計算機、計算機システムの制御装置及び記録媒体 | |
CN111124283A (zh) | 一种存储空间管理方法、系统、电子设备及存储介质 | |
US10606478B2 (en) | High performance hadoop with new generation instances | |
CN110381136A (zh) | 一种数据读取方法、终端、服务器及存储介质 | |
CN117348820A (zh) | 一种分布式系统的数据处理方法、系统、设备及存储介质 | |
US11003360B2 (en) | IO request processing according to processing sorting indexes | |
US10614055B2 (en) | Method and system for tree management of trees under multi-version concurrency control | |
CN112748850B (zh) | 用于存储管理的方法、设备和计算机程序产品 | |
CN109656696B (zh) | 一种数据api高效调用的处理方法 | |
CN112527751B (zh) | 数据处理方法、装置、电子设备和存储介质 | |
CN111182026B (zh) | 一种智能云盒子 |
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 |