CN107817950B - 一种数据处理方法及装置 - Google Patents

一种数据处理方法及装置 Download PDF

Info

Publication number
CN107817950B
CN107817950B CN201711042481.2A CN201711042481A CN107817950B CN 107817950 B CN107817950 B CN 107817950B CN 201711042481 A CN201711042481 A CN 201711042481A CN 107817950 B CN107817950 B CN 107817950B
Authority
CN
China
Prior art keywords
data
target
osd
pool
ceph cluster
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
CN201711042481.2A
Other languages
English (en)
Other versions
CN107817950A (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.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C 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 Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201711042481.2A priority Critical patent/CN107817950B/zh
Publication of CN107817950A publication Critical patent/CN107817950A/zh
Application granted granted Critical
Publication of CN107817950B publication Critical patent/CN107817950B/zh
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/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/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • 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]

Abstract

本发明提供一种数据处理方法及装置,该方法包括:当确定所述Ceph集群中存在对象存储设备OSD的已用容量达到第一容量阈值时,从所述Ceph集群的各池pool中选择目标pool;其中,所述第一容量阈值小于预设集群警戒值;向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,以使所述目标OSD根据所述数据删除指令删除所述部分副本的数据。应用本发明可以避免由于Ceph集群中存在OSD的已用容量达到预设集群警戒值而导致Ceph集群对外提供的存储服务受影响。

Description

一种数据处理方法及装置
技术领域
本发明涉及网络通信技术领域,尤其涉及一种数据处理方法及装置。
背景技术
Ceph(分布式存储系统)是一个开源项目,提供软件定义的、统一的存储解决方案,具备可大规模扩展、高性能、无单点故障的优点。
当Ceph集群中存储的数据越来越多,但未能及时扩容时,Ceph集群中各OSD(Object Storage Device,对象存储设备)的已用容量会越来越大,当OSD的已用容量达到集群警戒值(通常为95%)时,OSD将停止工作,当Ceph的数据写入涉及该OSD时,将无法写入数据,严重影响Ceph集群对外提供的存储服务。
发明内容
本发明提供一种数据处理方法及装置,以解决现有Ceph集群中会由于OSD已用容量达到预设集群警戒值而导致Ceph集群对外提供的存储服务受严重影响的问题。
根据本发明实施例的第一方面,提供一种数据处理方法,应用于分布式存储系统Ceph集群的监视器,该方法包括:
当确定所述Ceph集群中存在对象存储设备OSD的已用容量达到第一容量阈值时,从所述Ceph集群的各池pool中选择目标pool;其中,所述第一容量阈值小于预设集群警戒值;
向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,以使所述目标OSD根据所述数据删除指令删除所述部分副本的数据。
根据本发明实施例的第二方面,提供一种数据处理装置,应用于分布式存储系统Ceph集群的监视器,该装置包括:
确定单元,用于确定所述Ceph集群中是否存在对象存储设备OSD的已用容量达到第一容量阈值;其中,所述第一容量阈值小于预设集群警戒值;
选择单元,用于当所述确定单元确定所述Ceph集群中存在OSD的已用容量达到第一容量阈值时,从所述Ceph集群的各池pool中选择目标pool;
数据处理单元,用于向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,以使所述目标OSD根据所述数据删除指令删除所述部分副本的数据。
应用本发明实施例,通过设定小于预设集群警戒值的第一容量阈值,当确定Ceph集群中存在OSD的已用容量达到第一容量阈值时,从Ceph集群的各池pool中选择目标pool,并向目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,以使目标OSD根据数据删除指令删除该部分副本的数据,避免了由于Ceph集群中存在OSD的已用容量达到预设集群警戒值而导致Ceph集群对外提供的存储服务受影响。
附图说明
图1是本发明实施例提供的一种数据处理方法的流程示意图;
图2是本发明实施例提供的另一种数据处理方法的流程示意图;
图3是本发明实施例提供的一种数据处理装置的结构示意图;
图4为本发明实施例提供的一种数据处理装置的硬件结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
请参见图1,为本发明实施例提供的一种数据处理方法的流程示意图,其中,该数据处理方法可以应用于Ceph集群的监视器,如图1所示,该数据处理方法可以包括:
步骤101、当确定Ceph集群中存在OSD的已用容量达到第一容量阈值时,从Ceph集群的各pool中选择目标pool;其中,第一容量阈值小于预设集群警戒值。
步骤102、向目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,以使目标OSD根据该数据删除指令删除该部分副本的数据。
本发明实施例中,为了避免Ceph集群中OSD的已用容量达到预设集群警戒值而停止工作,导致影响Ceph集群对外提供存储服务,可以预先设定一个阈值(本文中称为第一容量阈值,该第一容量阈值需要小于预设集群警戒值,其具体值可以根据实际场景设定),当Ceph集群中存在OSD的已用容量达到该第一容量阈值时,则表明该OSD的已用容量不足,需要采取相应处理以避免该OSD的已用容量达到预设集群警戒值。
相应地,在本发明实施例中,监视器可以对Ceph集群内各OSD的已用容量进行监测,以确定是否存在OSD的已用容量达到第一容量阈值。
当监视器确定Ceph集群中存在OSD的已用容量达到第一容量阈值时,为了避免后续的数据写入导致该OSD的已用容量达到预设集群警戒值,监视器可以根据预设策略从Ceph集群的各pool(池)中选择一个pool(本文中称为目标pool),并指示删除该目标pool对应的目标OSD中的部分副本的数据,以减少数据占用的空间。
其中,监视器确定了目标pool之后,监视器可以根据目标pool所包括的各PG(Placement Group,归置组)查询PG与OSD的映射关系,确定目标pool中各副本的数据所在的OSD,并向目标pool中的部分副本的数据所在的OSD(本文中称为目标OSD)发送数据删除指令,其中,该数据删除指令中携带有需要删除的对象(Ceph集群中数据存储的基本单位)的对象标识;目标OSD接收到数据删除指令后,可以根据该数据删除指令中携带的对象标识,删除自身存储的与该对象标识对应的对象。
举例来说,假设目标pool为pool1,pool1中包括PG1~PG10,各PG分别包括10个对象(假设PG1~PG10包括的对象分别为对象1~对象100),每个对象具有3个副本,监视器确定的需要删除的副本数为2,则对于pool1中任一对象(以对象1为例),监视器通过查询PG与OSD的映射关系,确定PG1中对象1各副本所在的OSD(假设分别为OSD1~OSD3),此时,监视器可以从OSD1~OSD3中选择两个OSD作为目标OSD(假设为OSD1和OSD2),并向OSD1和OSD2发送携带有对象1的对象标识的数据删除指令;OSD1(OSD2)接收到该数据删除指令后,删除所存储的对象1的副本。
需要说明的是,在本发明实施例中,当目标OSD删除上述部分副本的数据之后,会触发监视器通过集群Map进行Ceph集群的再平衡处理,其具体实现可以参见现有Ceph集群方案中的相关描述,本发明实施例对此不做赘述。删除了部分数据之后,集群可以通过再平衡,使已用容量到达第一容量阈值的OSD的已用容量降低。
在本发明其中一个实施例中,上述从Ceph集群的各pool中选择目标pool,可以包括:
将Ceph集群的各pool中包括的已用容量最大的pool选择为目标pool;或,
将Ceph集群的各pool中包括的副本数最多的pool选择为目标pool。
在该实施例中,由于需要通过删除副本数据来减少数据占用的空间,进而触发数据再平衡的方式降低Ceph集群中各OSD的已用容量,因此,监视器可以选择Ceph集群中已有容量最大的pool或副本数最多的pool作为目标pool。
在本发明另一个实施例中,上述从Ceph集群的各pool中选择目标pool,可以包括:
将Ceph集群的各pool中包括的副本数大于预设数量,且已用容量最大的pool选择为目标pool。
在该实施例中,为了保证进行上述副本数据删除操作之后目标pool中数据的可靠性,需要保证进行上述副本数据删除操作之后,目标pool中的副本的数量大于等于2,因此,当选择目标pool时,可以选择副本数大于预设数量(该预设数量大于等于2,其具体值可以根据实际场景设定)pool。同时,为了优化副本数据删除的效果,可以尽量选择已用容量大的pool作为目标pool。
相应地,在该实施例中,监视器可以将包括的副本数大于预设数量,且已用容量最大的pool选择为目标pool。
在本发明其中一个实施例中,上述向目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,包括:
以数据删除后目标pool中的副本数为1的原则,向目标pool中的部分副本的数据所在的目标OSD发送数据删除指令。
在该实施例中,为了尽可能提高副本数据删除后增加的可用容量,在对目标pool进行副本数据删除操作时,可以以将目标pool的副本数删减至1的原则,即数据删除后的目标pool中的副本数为1的原则进行副本数据删除操作。
例如,假设目标pool的副本数为N(N大于等于2),则可以删除目标pool中N-1个副本的数据。
在本发明另一个实施例中,上述向目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,可以包括:
以数据删除后目标pool中的副本数为预设数量的原则,向目标pool中的部分副本的数据所在的目标OSD发送数据删除指令;其中,预设数量大于等于2。
在该实施例中,为了保证副本数据删除后,目标pool中数据的可靠性,对目标pool进行数据删除时,需要保证目标pool中未被删除的副本数大于等于2,因此,在对目标pool进行副本数据删除时,可以以将目标pool的副本数删减至预设数量为原则,即数据删除后的目标pool中的副本数为预设数量的原则进行副本数据删除操作,该预设数量大于等于2。
优选地,为了在保证数据可靠性的同时,提高副本数据删除后增加的可用容量,该预设数量等于2,即可以将目标pool的副本数删减至2。
需要说明的是,在该实施例中,监视器从Ceph集群的各pool中选择目标pool时,需要选择副本数大于2的pool作为目标pool。
此外,在本发明实施例中,对于不同pool而言,上述预设数量可以相同也可以不同,该预设数量为对应的pool能够接收到的最小副本数,以保证该pool中数据的可靠性。
可见,在图1所示方法流程中,通过在Ceph集群中存在OSD的已用容量达到第一容量阈值时,从Ceph集群的各pool中选择目标pool,并向目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,以使目标OSD根据数据删除指令删除部分副本的数据,以触发Ceph集群的再平衡,降低各OSD的已用容量,避免由于Ceph集群中存在OSD的已用容量达到预设集群警戒值而导致Ceph集群对外提供的存储服务受到影响。
需要说明的是,在本发明实施例中,若监视器按照上述步骤101~102进行目标pool的选择以及副本数据删除操作之后,Ceph集群中仍存在OSD的已用容量达到第一容量阈值,则监视器可以重复执行上述步骤101~102,直至Ceph集群中不存在OSD的已用容量达到第一容量阈值,即Ceph集群中各OSD的已用容量均小于第一容量阈值。
进一步地,在本发明实施例中,考虑到删除目标pool中部分副本的数据之后,目标pool中数据的可靠性会降低,因此,需要在Ceph集群中可用容量提升时,对目标pool中被删除的副本数据进行数据恢复操作,以提高目标pool中数据的可靠性。
相应地,在本发明其中一个实施例中,上述向目标pool中的部分副本的数据所在的目标OSD发送数据删除指令之后,还包括:
计算若恢复删除的副本的数据后Ceph集群中各OSD的已用容量,若计算出的恢复删除的副本后各OSD的已用容量均小于第二容量阈值,则恢复目标OSD删除的副本的数据;其中,第二容量阈值小于第一容量阈值。
在该实施例中,为了避免进行数据恢复操作之后,Ceph集群中出现OSD的已用容量达到或接近第一容量阈值,导致数据恢复后,直接或很快需要再次进行数据删除处理,导致需要反复进行删除和恢复操作,影响Ceph集群的正常业务,因此,可以预先设定另一个容量阈值(本文中称为第二容量阈值,该第二容量阈值需要小于第一容量阈值,其具体值可以根据实际场景设定),在决定是否需要进行数据恢复处理之前,可以先判断进行恢复数据处理之后Ceph集群中各OSD的已用容量是否均小于该第二容量阈值,若是,则进行数据恢复处理,否则,不进行数据恢复处理。
相应地,在该实施例中,在删除目标OSD中的部分副本的数据之后,可以根据预设策略,在确定满足预设条件时,计算恢复目标OSD删除的副本的数据后Ceph集群中各OSD的已用容量。
例如,监视器可以根据集群map(映射)计算出恢复副本数据后,目标pool中PG(Placement Group,放置组)的分布情况,即每个PG分布到哪些OSD上。根据目标pool中存放的数据可获得每个PG携带的数据量,由此可以计算出目标pool在各OSD上占用的容量大小。再加上其它pool在各OSD上占用的容量大小即可获得ceph集群中各OSD的使用容量。
在该实施例中,监视器计算出恢复删除的副本的数据后Ceph集群中各OSD的已用容量之后,可以判断上述计算出的各OSD的已用容量是否均小于第二容量阈值;若是,则监视器可以恢复目标pool对应删除的副本的数据;否则,即根据上述计算结果确定若恢复删除的副本数据,则会存在OSD的已用容量大于等于第二容量阈值,因而监视器不指示OSD进行数据恢复处理。
可选地,上述向目标pool中的部分副本的数据所在的目标OSD发送数据删除指令之后,可以包括:
当预设定时器超时时;或,
当Ceph集群中新增、删除存储节点或OSD时,触发计算若恢复目标OSD删除的副本的数据后所述Ceph集群中各OSD的已用容量。
在该实施例中,监视器删除目标pool中部分副本的数据之后,可以启动一个定时器,当定时器超时时,或者定时器超时之前,Ceph集群中新增、删除存储节点或OSD时,监视器确定满足预设条件,并触发计算若恢复目标OSD删除的副本的数据后Ceph集群中各OSD的已用容量。
其中,当监视器计算出的恢复删除的副本的数据后Ceph集群中各OSD的已用容量中存在OSD的已用容量大于第二容量阈值时,监视器可以重置定时器,并再次等待定时器超时或Ceph集群新增、删除存储节点或OSD。
需要说明的是,在本发明实施例中,当监视器确定Ceph集群中存在OSD的已用容量达到第一容量阈值时,除了可以从Ceph集群中选择目标pool,并向目标pool中的部分副本的数据的目标OSD发送数据删除指令,以使目标OSD根据数据删除指令删除部分副本的数据之外,还可以上报告警信息,以报告相关事件的发送,即某个OSD的已用容量达到第一容量阈值,目标OSD中部分副本的数据被删除等,以提示管理员采取相应措施。
例如,对于写入Ceph集群的数据量增多而造成OSD已用容量达到第一容量阈值的情况,可通过增加OSD或者存储节点或删除无用数据的方式解决;对于因ceph集群中有存储节点或OSD故障而造成OSD已用容量达到第一容量阈值的情况,除了增加OSD或存储节点或删除无用数据外还可对故障的存储节点或OSD进行修复。
需要说明的是,在本发明实施例中,由于数据的删除和恢复,Ceph集群监视器的Leader(领导者)需要更新集群Map(映射),并进行再平衡处理,因此,若非Leader的监视器对目标OSDl进行数据删除或恢复后,还需要通知Leader节点,由Leader节点更新集群Map,因此,为了提高集群Map更新效率,可以由Ceph集群的Leader执行上述处理操作。
为了使本领域技术人员更好地理解本发明实施例提供的技术方案,下面结合具体实例对本发明实施例提供的技术方案进行说明。
在该实施例中,假设第一容量阈值为90%,第二容量阈值为75%,各pool设置的预设数量均为2,目标pool的选取原则为选择包括的副本数大于2,且已用容量最大的pool。
该实施例中数据处理流程可以如图2所示,其可以包括以下步骤:
步骤201、周期性监测Ceph集群中各OSD的已用容量,并当存在OSD的已用容量达到90%时,转至步骤202。
步骤202、获取Ceph集群中各pool的已用容量,并按照已用容量从小到大的顺序进行排序。
在该实施例中,假设Ceph集群中共有S(S大于等于2)个pool,按照已用容量从小到大排序依次为1~S。
步骤203、判断pool S当前的副本数是否大于2;若是,则选择该pool为目标pool,并转至步骤204;否则,S=S-1,并转至步骤203。
步骤204、向目标pool中C1个副本的数据所在的目标OSD发送数据删除指令,以使目标OSD根据该数据删除指令删除该C1个副本的数据;其中,C1=C-2,C为目标pool的原有副本数。若仍存在OSD的已用容量达到90%,则转至步骤202;否则,转至步骤205。
在该实施例中,删除目标pool的C1个副本的数据之后,会触发Ceph集群的再平衡处理;同时,删除目标pool的C1个副本的数据之后,监视器还可以上报告警信息,该告警信息用于通知用户(如管理员)某个OSD的已用容量达到第一容量阈值,目标pool中C1个副本的数据被删除等。
其中,数据删除操作会触发Ceph集群的再平衡处理,其具体实现在此不做赘述。
步骤205、启动定时器T,并当定时器超时或Ceph集群中新增存储节点或OSD时,转至步骤206。
步骤206、计算恢复删除的副本数据后Ceph集群中各OSD的已用容量。
步骤207、判断各OSD的已用容量是否均小于75%;若是,转至步骤208;否则,转至步骤205。
在该实施例中,当计算出恢复删除的副本数据后Ceph集群中存在OSD的已用容量达到75%时,可以重新启动定时器(即重置定时器),重新开始计时,并等待定时器超时或Ceph集群中新增存储节点或OSD。
步骤208、恢复目标OSD中被删除的副本数据。
在该实施例中,当计算出恢复目标pool的副本数据后Ceph集群中存在OSD的已用容量均小于75%时,可以恢复目标OSD中被删除的C1个副本的数据;其中,该数据恢复操作会触发Ceph集群再平衡处理,其具体实现在此不做赘述。
通过以上描述可以看出,在本发明实施例提供的技术方案中,通过设定小于预设集群警戒值的第一容量阈值,当确定Ceph集群中存在OSD的已用容量达到第一容量阈值时,从Ceph集群的各池pool中选择目标pool,并向目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,以使目标OSD根据该数据删除指令删除该部分副本的数据,避免了由于Ceph集群中存在OSD的已用容量达到预设集群警戒值而导致Ceph集群对外提供的存储服务受影响。
请参见图3,为本发明实施例提供的一种数据处理装置的结构示意图,其中,该装置可以应用于上述方法实施例中的监视器,如图3所示,该数据处理装置可以包括:
确定单元310,用于确定所述Ceph集群中是否存在对象存储设备OSD的已用容量达到第一容量阈值;其中,所述第一容量阈值小于预设集群警戒值;
选择单元320,用于当所述确定单元310确定所述Ceph集群中存在OSD的已用容量达到第一容量阈值时,从所述Ceph集群的各池pool中选择目标pool;
数据处理单元330,用于向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,以使所述目标OSD根据所述数据删除指令删除所述部分副本的数据。
在可选实施例中,所述选择单元320,具体用于将所述Ceph集群的各pool中包括的副本数大于预设数量,且已用容量最大的pool选择为目标pool;其中,所述预设数量大于等于2,或,将所述Ceph集群的各pool中包括的已用容量最大的pool选择为目标pool;或,将所述Ceph集群的各pool中包括的副本数最多的pool选择为目标pool。
在可选实施例中,所述数据处理单元330,具体用于以数据删除后所述目标pool中的副本数为1的原则,向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令;或,
以数据删除后所述目标pool中的副本数为预设数量的原则,向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令;其中,所述预设数量大于等于2。
在可选实施例中,所述数据处理单元330,还用于当所述确定单元310确定满足预设条件时,确定恢复删除的副本的数据后所述Ceph集群中各OSD的已用容量,若计算出的恢复删除的副本后各OSD的已用容量均小于第二容量阈值,则恢复所述目标OSD删除的副本的数据;其中,所述第二容量阈值小于所述第一容量阈值。
在可选实施例中,所述确定单元310,具体用于当预设定时器超时时,或,当所述Ceph集群中新增、删除存储节点或OSD时,触发计算若恢复所述目标OSD删除的副本的数据后所述Ceph集群中各OSD的已用容量。
图4为本公开示例提供的一种数据处理装置的硬件结构示意图。该数据处理装置可包括处理器401、存储有机器可执行指令的机器可读存储介质402。处理器401与机器可读存储介质402可经由系统总线403通信。并且,通过读取并执行机器可读存储介质402中与数据处理逻辑对应的机器可执行指令,处理器401可执行上文描述的数据处理方法。
本文中提到的机器可读存储介质402可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
由上述实施例可见,通过设定小于预设集群警戒值的第一容量阈值,当确定Ceph集群中存在OSD的已用容量达到第一容量阈值时,从Ceph集群的各池pool中选择目标pool,并向目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,以使目标OSD根据该数据删除指令删除该部分副本的数据,避免了由于Ceph集群中存在OSD的已用容量达到预设集群警戒值而导致Ceph集群对外提供的存储服务受影响。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (10)

1.一种数据处理方法,应用于分布式存储系统Ceph集群的监视器,其特征在于,该方法包括:
当确定所述Ceph集群中存在对象存储设备OSD的已用容量达到第一容量阈值时,从所述Ceph集群的各池pool中选择目标pool;其中,所述第一容量阈值小于预设集群警戒值;
向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,以使所述目标OSD根据所述数据删除指令删除所述部分副本的数据;其中,所述目标OSD删除所述部分副本的数据之后,触发所述监视器通过集群Map进行Ceph集群的再平衡处理。
2.根据权利要求1所述的方法,其特征在于,所述从所述Ceph集群的各pool中选择目标pool,包括:
将所述Ceph集群的各pool中包括的副本数大于预设数量,且已用容量最大的pool选择为目标pool;其中,所述预设数量大于等于2,或,
将所述Ceph集群的各pool中包括的已用容量最大的pool选择为目标pool;或,
将所述Ceph集群的各pool中包括的副本数最多的pool选择为目标pool。
3.根据权利要求1所述的方法,其特征在于,所述向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,包括:
以数据删除后所述目标pool中的副本数为1的原则,向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令;或,
以数据删除后所述目标pool中的副本数为预设数量的原则,向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令;其中,所述预设数量大于等于2。
4.根据权利要求1所述的方法,其特征在于,所述向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令之后,还包括:
计算若恢复删除的副本的数据后所述Ceph集群中各OSD的已用容量,若计算出的恢复删除的副本后各OSD的已用容量均小于第二容量阈值,则恢复所述目标OSD删除的副本的数据;其中,所述第二容量阈值小于所述第一容量阈值。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令之后,还包括:
当预设定时器超时时,或,
当所述Ceph集群中新增、删除存储节点或OSD时,触发计算若恢复所述目标OSD删除的副本的数据后所述Ceph集群中各OSD的已用容量。
6.一种数据处理装置,应用于分布式存储系统Ceph集群的监视器,其特征在于,该装置包括:
确定单元,用于确定所述Ceph集群中是否存在对象存储设备OSD的已用容量达到第一容量阈值;其中,所述第一容量阈值小于预设集群警戒值;
选择单元,用于当所述确定单元确定所述Ceph集群中存在OSD的已用容量达到第一容量阈值时,从所述Ceph集群的各池pool中选择目标pool;
数据处理单元,用于向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令,以使所述目标OSD根据所述数据删除指令删除所述部分副本的数据;其中,所述目标OSD删除所述部分副本的数据之后,触发所述监视器通过集群Map进行Ceph集群的再平衡处理。
7.根据权利要求6所述的装置,其特征在于,
所述选择单元,具体用于将所述Ceph集群的各pool中包括的副本数大于预设数量,且已用容量最大的pool选择为目标pool;其中,所述预设数量大于等于2,或,将所述Ceph集群的各pool中包括的已用容量最大的pool选择为目标pool;或,将所述Ceph集群的各pool中包括的副本数最多的pool选择为目标pool。
8.根据权利要求6所述的装置,其特征在于,
所述数据处理单元,具体用于以数据删除后所述目标pool中的副本数为1的原则,向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令;或,
以数据删除后所述目标pool中的副本数为预设数量的原则,向所述目标pool中的部分副本的数据所在的目标OSD发送数据删除指令;其中,所述预设数量大于等于2。
9.根据权利要求6所述的装置,其特征在于,
所述数据处理单元,还用于计算若恢复删除的副本的数据后所述Ceph集群中各OSD的已用容量,若计算出的恢复删除的副本后各OSD的已用容量均小于第二容量阈值,则恢复所述目标OSD删除的副本的数据;其中,所述第二容量阈值小于所述第一容量阈值。
10.根据权利要求9所述的装置,其特征在于,
所述确定单元,具体用于当预设定时器超时时,或,当所述Ceph集群中新增、删除存储节点或OSD时,触发计算若恢复所述目标OSD删除的副本的数据后所述Ceph集群中各OSD的已用容量。
CN201711042481.2A 2017-10-31 2017-10-31 一种数据处理方法及装置 Active CN107817950B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711042481.2A CN107817950B (zh) 2017-10-31 2017-10-31 一种数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711042481.2A CN107817950B (zh) 2017-10-31 2017-10-31 一种数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN107817950A CN107817950A (zh) 2018-03-20
CN107817950B true CN107817950B (zh) 2021-07-23

Family

ID=61604397

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711042481.2A Active CN107817950B (zh) 2017-10-31 2017-10-31 一种数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN107817950B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710456B (zh) * 2018-12-10 2021-03-23 新华三技术有限公司 一种数据恢复方法及装置
CN110780821A (zh) * 2019-10-28 2020-02-11 柏科数据技术(深圳)股份有限公司 分布式存储系统的优化方法、装置、服务器和存储介质
CN110908606B (zh) * 2019-11-15 2021-06-29 浪潮电子信息产业股份有限公司 一种分布式文件系统的数据重构方法
CN112835511B (zh) * 2019-11-25 2022-09-20 浙江宇视科技有限公司 分布式存储集群的数据写入方法、装置、设备和介质
CN111796769B (zh) * 2020-06-30 2024-02-27 中国工商银行股份有限公司 云平台日志存储系统扩容方法及装置
CN115080532B (zh) * 2022-07-22 2022-11-11 平安银行股份有限公司 Ceph系统的管理方法及基于ceph系统的终端

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103502957A (zh) * 2012-12-28 2014-01-08 华为技术有限公司 数据处理方法及装置
CN107193500A (zh) * 2017-05-26 2017-09-22 郑州云海信息技术有限公司 一种分布式文件系统分层存储方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103873506A (zh) * 2012-12-12 2014-06-18 鸿富锦精密工业(深圳)有限公司 存储集群中的数据块去重系统及方法
US11314413B2 (en) * 2016-04-12 2022-04-26 International Business Machines Corporation Adjustable tape storage capacity

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103502957A (zh) * 2012-12-28 2014-01-08 华为技术有限公司 数据处理方法及装置
CN107193500A (zh) * 2017-05-26 2017-09-22 郑州云海信息技术有限公司 一种分布式文件系统分层存储方法及系统

Also Published As

Publication number Publication date
CN107817950A (zh) 2018-03-20

Similar Documents

Publication Publication Date Title
CN107817950B (zh) 一种数据处理方法及装置
US10469577B2 (en) Caching method and system based on cache cluster
US11397648B2 (en) Virtual machine recovery method and virtual machine management device
US10725878B2 (en) Storage apparatus, storage system, and control method of storage system for dynamically securing free space when a storage apparatus is disused
CN106776130B (zh) 一种日志恢复方法、存储装置和存储节点
US20230041089A1 (en) State management methods, methods for switching between master application server and backup application server, and electronic devices
CN110535692B (zh) 故障处理方法、装置、计算机设备、存储介质及存储系统
JP5669823B2 (ja) チェンジトラッキングを用いたシステムリカバリ方法
JP6064608B2 (ja) ストレージ装置、バックアッププログラム、およびバックアップ方法
JP2005128590A (ja) スナップショットシミュレーション機能を有するディスクアレイ装置
US10379977B2 (en) Data management method, node, and system for database cluster
CN107329859B (zh) 一种数据保护方法及存储设备
CN109561151B (zh) 数据存储方法、装置、服务器和存储介质
CN109491609A (zh) 一种缓存数据处理方法、装置、设备及可读存储介质
JP7215971B2 (ja) 記憶機器のデータ位置の処理方法及び処理装置、コンピュータ機器並びにコンピュータ読み取り可能な記憶媒体
CN106201772A (zh) 一种基于数据中心的操作系统备份、恢复方法及装置
CN109710456B (zh) 一种数据恢复方法及装置
CN109189326B (zh) 分布式集群的管理方法和装置
CN115827322A (zh) 一种云存储数据全量灾备方法及系统
CN111130856A (zh) 一种服务器配置方法、系统、设备及计算机可读存储介质
CN111400248A (zh) 写数据、恢复数据的方法及文件系统
CN107045426B (zh) 一种多副本读取方法和系统
CN115470041A (zh) 一种数据灾备管理方法及装置
US20180295195A1 (en) Method and apparatus for performing storage space management for multiple virtual machines
CN111176886B (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
GR01 Patent grant
GR01 Patent grant