CN109992409B - 数据存储区域的切分方法、装置、系统、电子设备和介质 - Google Patents

数据存储区域的切分方法、装置、系统、电子设备和介质 Download PDF

Info

Publication number
CN109992409B
CN109992409B CN201810002988.3A CN201810002988A CN109992409B CN 109992409 B CN109992409 B CN 109992409B CN 201810002988 A CN201810002988 A CN 201810002988A CN 109992409 B CN109992409 B CN 109992409B
Authority
CN
China
Prior art keywords
region
target
server
segmentation
period
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
CN201810002988.3A
Other languages
English (en)
Other versions
CN109992409A (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.)
China Mobile Communications Group Co Ltd
China Mobile Communications Ltd Research Institute
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Communications Ltd Research Institute
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 China Mobile Communications Group Co Ltd, China Mobile Communications Ltd Research Institute filed Critical China Mobile Communications Group Co Ltd
Priority to CN201810002988.3A priority Critical patent/CN109992409B/zh
Publication of CN109992409A publication Critical patent/CN109992409A/zh
Application granted granted Critical
Publication of CN109992409B publication Critical patent/CN109992409B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种数据存储区域的切分方法、装置、系统、电子设备和介质,用以解决在对region进行切分时,负载不均衡的问题。方法包括:管理服务器在当前切分周期中,在判断region服务器满足条件时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;并向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分。因此实现了负载均衡。

Description

数据存储区域的切分方法、装置、系统、电子设备和介质
技术领域
本发明涉及技术领域,特别涉及一种数据存储区域的切分方法、装置、系统、电子设备和介质。
背景技术
在数据高速发展的时代,分布式体系成为了很重要的角色,分布式集群,分布式数据库,分布式文件系统都成为人们关注的焦点。在此趋势下,Hadoop集群成为较成熟的分布式系统。HBase分布式数据库在Hadoop分布式系统中正在不断完善,HBase是一个适用于非结构化数据存储的数据库,具有高扩展性、列存储、可伸缩、能实时读写大数据的特点,因此被很多公司使用。
Hbase中最基本的单位是列(column),一列或者多列组成一行(row),并且由唯一的行键(row key)来确定存储。Hbase表(table)中有多行和多列。HBase的行与行之间是有序的,按照row key的字典序进行排序。一行由若干列组成,其中的某些列又可以构成一个列族(column family)。HBase中数据存储和负载均衡的基本单元称作region,region本质上是以行键排序的连续存储空间,即将table按行划分成多个region。
在Hbase中,region split(切分)是一个很重要的功能,通过将数据切分成一定数量的region,regionserver(region服务器)为一个或多个region提供服务,来实现负载均衡。
现有的Hbase region切分方法主要有以下几种:
常数大小区域分割策略(Constant Size Region Split Policy):按固定长度切分region,固定长度取值优先获取table的”MAX_FILESIZE” 值,若没有设定该属性,则采用在hbase-site.xml中配置的hbase.hregion.max.filesize值。当table的某一region中的某一store大小超过了预定的固定长度时,对该region进行split。切分点(Split Point)算法的选择还是依据“数据对半”原则,找到该region的最大store的中间长度的rowkey进行split。
增加到上界区分割策略(Increasing To Upper Bound Region Split Policy):该策略按照region数量累增划分region,采用该策略分割的region大小是不相等的,每次新region的大小随着region数量的增多而增大。具体增长方法为:Min(R^2 *“MEMSTORE_FLUSHSIZE”||“hbase.hregion.memstore.flush.size”,“hbase.hregion.max.filesize”);其中R 为当前这个region所在region服务器中对应此table的region数,MEMSTORE_FLUSHSIZE 为table创建时指定大小,若table指定了此属性,则忽略下面的hbase.hregion.memstore.flush.size。
分段分割策略(Stepping Split Policy):这种切分策略的切分阈值又发生了变化,相比 Increasing To Upper Bound Region Split Policy简单了一些,依然和待分裂region所属table在当前region服务器上的region个数有关系,如果region个数等于1,切分阈值为flush size * 2,flush size表示单个MemStore的大小的阈值hbase.hregion.memstore.flush.size,默认是128M,否则为hbase.hregion.max.filesize。
在现有技术中,在确定region切分阈值时,可以是预设的一个固定的切分阈值,或者根据region服务器中的region的数量来确定切分阈值,虽然能够在一定程度上实现负载均衡,但是因为在实际应用中,每个table中的数据被访问的情况不一而同,只是按照静态方法设定的切分阈值大小进行切分,切分出的region中仍然会出现某些region过热,负载不均衡,成为系统瓶颈的情况。
发明内容
本发明实施例公开了一种数据存储区域的切分方法、装置、系统、电子设备和介质,用以解决现有技术中在对region进行切分时,造成负载不均衡的问题。
为达到上述目的,本发明实施例公开了一种数据存储区域的切分方法,应用于管理服务器,所述方法包括:
在当前切分周期中,判断region服务器是否满足预设的条件;
如果是,则针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;并向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分。
进一步地,所述判断region服务器是否满足预设的条件包括:
确定所述region服务器在当前切分周期中的第一读写吞吐量峰值,判断所述第一读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断针对所述region服务器设置的定时器是否达到预设的周期时长;
如果有至少一个为是,则确定region服务器满足预设的条件;
如果均为否,则确定region服务器不满足预设的条件。
进一步地,所述确定所述region服务器在当前切分周期中的第一读写吞吐量峰值包括:
在当前切分周期的每个子周期中,获取所述region服务器在该子周期中的第二读写吞吐量峰值,其中所述当前切分周期包括至少两个子周期;
判断所述第二读写吞吐量峰值是否大于当前保存的第一读写吞吐量峰值;
如果是,则根据所述第二读写吞吐量峰值对所述第一读写吞吐量峰值进行更新;
如果否,则保持当前切分周期中的第一读写吞吐量峰值不变。
进一步地,所述根据确定的每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,包括:
根据针对所述region服务器预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的所述region服务器中的region的最大文件的大小,以及该region服务器一次更新到磁盘的数据的大小确定。
进一步地,如果被访问的次数越多,对应的热度级数越低,预先确定每个热度级数对应的切分阈值的过程包括:
针对每个热度级数,根据该热度级数与预先保存的所述region服务器一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
本发明实施例公开了一种数据存储区域的切分方法,应用于region服务器,所述方法包括:
接收管理服务器发送的region服务器中的每个region对应的目标切分阈值,其中,所述目标切分阈值为管理服务器在当前切分周期中,在判断所述region服务器满足预设的条件时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定的该region的目标热度级数对应的目标切分阈值,并发送的,其中,目标次数越多,目标切分阈值越小;
针对每个region,根据其对应的目标切分阈值对其进行切分。
进一步地,所述方法还包括:
在当前切分周期的每个子周期中,向管理服务器上报自身在该子周期中的读写吞吐量峰值。
进一步地,所述方法还包括:
向管理服务器上报每个region在当前切分周期中被访问的目标次数。
本发明实施例公开了一种数据存储区域的切分方法,应用于region服务器,所述方法包括:
在当前切分周期中,判断当前是否满足预设的条件;
如果是,则针对每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;根据每个region对应的目标切分阈值,对对应的region进行切分。
进一步地,所述判断当前是否满足预设的条件包括:
判断自身在当前切分周期中的读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断设置的定时器是否达到预设的周期时长;
如果有至少一个为是,则确定当前满足预设的条件;
如果均为否,则确定当前不满足预设的条件。
进一步地,所述根据确定的每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,包括:
根据预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的region的最大文件的大小,以及一次更新到磁盘的数据的大小确定。
进一步地,如果被访问的次数越多,对应的热度级数越低,预先确定每个热度级数对应的切分阈值的过程包括:
针对每个热度级数,根据该热度级数与预先保存的一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
本发明实施例公开了一种电子设备,所述电子设备包括:处理器、存储器和收发机;
所述处理器,用于读取所述存储器中的程序,执行下列过程:在当前切分周期中,判断region服务器是否满足预设的条件;如果是,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;
所述收发机,用于在所述处理器的控制下,向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分。
进一步地,所述处理器,具体用于确定所述region服务器在当前切分周期中的第一读写吞吐量峰值,判断所述第一读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断针对所述region服务器设置的定时器是否达到预设的周期时长;如果有至少一个为是,则确定region服务器满足预设的条件;如果均为否,则确定region服务器不满足预设的条件。
进一步地,所述处理器,具体用于在当前切分周期的每个子周期中,获取所述region服务器在该子周期中的第二读写吞吐量峰值,其中所述当前切分周期包括至少两个子周期;判断所述第二读写吞吐量峰值是否大于当前保存的第一读写吞吐量峰值;如果是,则根据所述第二读写吞吐量峰值对所述第一读写吞吐量峰值进行更新;如果否,则保持当前切分周期中的第一读写吞吐量峰值不变。
进一步地,所述处理器,具体用于根据针对所述region服务器预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的所述region服务器中的region的最大文件的大小,以及该region服务器一次更新到磁盘的数据的大小确定。
进一步地,如果被访问的次数越多,对应的热度级数越低,所述处理器,还用于针对每个热度级数,根据该热度级数与预先保存的所述region服务器一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
本发明实施例公开了一种电子设备,所述电子设备包括:处理器、存储器和收发机;
所述收发机,用于在所述处理器的控制下,接收管理服务器发送的region服务器中的每个region对应的目标切分阈值,其中,所述目标切分阈值为管理服务器在当前切分周期中,在判断所述region服务器满足预设的条件时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定的该region的目标热度级数对应的目标切分阈值,并发送的,其中,目标次数越多,目标切分阈值越小;
所述处理器,用于读取所述存储器中的程序,执行下列过程:针对每个region,根据其对应的目标切分阈值对其进行切分。
进一步地,所述收发机,还用于在当前切分周期的每个子周期中,向管理服务器上报自身在该子周期中的读写吞吐量峰值。
进一步地,所述收发机,还用于向管理服务器上报每个region在当前切分周期中被访问的目标次数。
本发明实施例公开了一种电子设备,所述电子设备包括:处理器、存储器和收发机;
所述处理器,用于读取所述存储器中的程序,执行下列过程:在当前切分周期中,判断当前是否满足预设的条件;
如果是,针对每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;
根据每个region对应的目标切分阈值,对对应的region进行切分。
进一步地,所述处理器,具体用于判断自身在当前切分周期中的读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断设置的定时器是否达到预设的周期时长;
如果有至少一个为是,则确定当前满足预设的条件;
如果均为否,则确定当前不满足预设的条件。
进一步地,所述处理器,具体用于根据预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的region的最大文件的大小,以及一次更新到磁盘的数据的大小确定。
进一步地,如果被访问的次数越多,对应的热度级数越低,所述处理器,还用于针对每个热度级数,根据该热度级数与预先保存的一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
本发明实施例公开了一种数据存储区域的切分装置,应用于管理服务器,所述装置包括:
判断模块,用于在当前切分周期中,判断region服务器是否满足预设的条件;
确定模块,用于在所述判断模块的判断结果为是时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;
发送模块,用于向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分。
本发明实施例公开了一种数据存储区域的切分装置,应用于region服务器,所述装置包括:
接收模块,用于接收管理服务器发送的region服务器中的每个region对应的目标切分阈值,其中,所述目标切分阈值为管理服务器在当前切分周期中,在判断所述region服务器满足预设的条件时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定的该region的目标热度级数对应的目标切分阈值,并发送的,其中,目标次数越多,目标切分阈值越小;
切分模块,用于针对每个region,根据其对应的目标切分阈值对其进行切分。
本发明实施例公开了一种数据存储区域的切分装置,应用于region服务器,所述装置包括:
判断模块,用于在当前切分周期中,判断当前是否满足预设的条件;
确定模块,用于当所述判断模块的判断结果为是时,针对每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;
切分模块,用于根据每个region对应的目标切分阈值,对对应的region进行切分。
本发明实施例公开了一种数据存储区域的切分系统,包括:应用于管理服务器的数据存储区域的切分装置和应用于region服务器的数据存储区域的切分装置。
本发明实施例公开了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行上述的数据存储区域的切分方法中的任一项所述方法的步骤。
本发明实施例公开了一种计算机可读存储介质,其存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行上述的数据存储区域的切分方法中的任一项所述方法的步骤。
本发明实施例公开了一种数据存储区域的切分方法、装置、系统、电子设备和介质,方法包括:管理服务器在当前切分周期中,判断region服务器是否满足预设的条件;如果是,则针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;并向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分。由于在发明实施例中,当region服务器满足预设的条件时,根据每个region被访问的次数,确定每个region对应的目标切分阈值,且被访问的次数越多,对应的切分阈值越小,则region服务器在对region进行切分时,将被访问的次数较多的region切分的较小,将被访问的次数较少的region切分的较大,实现负载均衡。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A为本发明实施例1提供的一种数据存储区域region的切分过程示意图;
图1B为本发明实施例提供的一种数据存储区域region的切分过程示意图;
图2为本发明实施例6提供的一种数据存储区域region的切分过程示意图;
图3为本发明实施例8提供的一种数据存储区域region的切分过程示意图;
图4为本发明实施例12提供的一种电子设备;
图5为本发明实施例13提供的一种电子设备;
图6为本发明实施例14提供的一种电子设备;
图7为本发明实施例15提供的一种数据存储区域region的切分装置图;
图8为本发明实施例16提供的一种数据存储区域region的切分装置图;
图9为本发明实施例17提供的一种数据存储区域region的切分装置图;
图10 为本发明实施18提供的一种数据存储区域region的切分系统图;
图11为本发明实施例19提供的一种电子设备;
图12为本发明实施例20提供的一种电子设备;
图13为本发明实施例21提供的一种电子设备。
具体实施方式
为了实现负载均衡,本发明实施例提供了一种数据存储区域的切分方法、装置、系统、电子设备和介质。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
图1A为本发明实施例1提供的一种数据存储区域region的切分过程示意图,该过程包括以下步骤:
S101:在当前切分周期中,判断region服务器是否满足预设的条件,如果是,则进行S102,如果否,则进行S101。
本发明实施例提供的数据存储区域region的切分方法应用于管理服务器,该管理服务器可以是管理着每个regin服务器的服务器,以下将管理服务器简称为服务器。
服务器管理着多个region服务器,针对每个region服务器,均采用本发明实施例中的方案。
服务器中预先保存有切分周期,在切分周期中可以确定是否确定region服务器中的每个region对应的切分阈值。切分周期可以是半天,或者1天等。
S102:针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;并向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分。
服务器可以确定region服务器中的每个region的切分阈值,服务器中预先保存有切分阈值确定的条件,当满足切分阈值确定的条件时,则可以确定region的切分阈值。服务器可以确定region服务器中的每个region在当前切分周期中被访问的次数,称为目标次数,根据每个region在当前切分周期中被访问的目标次数,确定每个region对应的切分阈值。
服务器在确定每个region在当前切分周期中被访问的目标次数时,可以是向region服务器发送获取其中的每个region在当前切分周期中被访问的目标次数的请求。region服务器中保存有每个region在当前切分周期中被访问的目标次数,region服务器将每个region在当前切分周期中被访问的目标次数发送给服务器,则服务器获取了每个region在当前切分周期中被访问的目标次数。
服务器在确定出每个region在当前切分周期中被访问的目标次数后,在根据每个region对应的目标次数,确定每个region的目标热度级数时,可以是服务器中预先保存有次数范围与热度级数的对应关系,针对每个region,确定该region在当前切分周期中被访问的目标次数所位于的目标次数范围,将该目标次数范围对应的热度级数作为目标热度级数。
服务器中还保存有每个热度级数对应的切分阈值,在确定出每个region对应的目标热度级数后,可以根据每个热度级数对应的切分阈值,确定每个region对应的目标切分阈值。
region被访问的次数越多,则说明该region中保存的数据被访问的次数越多,可以将被访问的次数较多的数据称为热数据;反之,region被访问的次数越少,则说明该region中保存的数据被访问的次数越少,可以将被访问的次数较少的数据称为冷数据。
为了实现负载均衡,可以使热数据保存在较小的region上,冷数据保存在较大的region上,则region被访问的目标次数越多,该region对应的目标切分阈值越小。具体的,可以是被访问的次数越多,对应的热度级数越高,则热度级数越高,对应的目标切分阈值越小;或者是,被访问的次数越多,对应的热度级数越低,则热度级数越低,对应的目标切分阈值越小。
服务器在确定出了每个region对应的目标切分阈值后,可以将每个region对应的目标切分阈值发送给region服务器,使该region服务器根据每个region对应的目标切分阈值,对对应的region进行切分。region服务器根据每个region对应的目标切分阈值,什么时候对该region进行切分,以及如何切分属于现有技术,在本发明实施例中不进行赘述。
由于在发明实施例中,当region服务器满足预设的条件时,根据每个region被访问的次数,确定每个region对应的目标切分阈值,且被访问的次数越多,对应的切分阈值越小,则region服务器在对region进行切分时,将被访问的次数较多的region切分的较小,将被访问的次数较少的region切分的较大,实现负载均衡。
实施例2:
在上述实施例的基础上,在本发明实施例中,所述判断region服务器是否满足预设的条件包括:
确定所述region服务器在当前切分周期中的第一读写吞吐量峰值,判断所述第一读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断针对所述region服务器设置的定时器是否达到预设的周期时长;
如果有至少一个为是,则确定region服务器满足预设的条件;
如果均为否,则确定region服务器不满足预设的条件。
在本发明实施例中,在判断region服务器是否满足预设的条件时,可以是根据该region服务器在当前切分周期中的读写吞吐量峰值throughput_peak,以及根据定时器的时长判断。
服务器中预先保存有吞吐量阈值throughput和针对当前切分周期保存有周期时长,在当前切分周期开始时刻,定时器开始计时,在确定region服务器是否满足预设的条件时,可以是先确定region服务器在当前切分周期中的第一读写吞吐量峰值,判断该第一读写吞吐量峰值是否大于预设的吞吐量阈值,以及 判断针对region服务器设置的定时器是否达到预设的周期时长,如果有至少一个为是,则确定该region服务器满足预设的条件,否则,确定该region服务器不满足预设的条件。
服务器在确定region服务器在当前切分周期中的第一读写吞吐量峰值时,可以是根据region服务器上报的读写吞吐量峰值来确定的。
region服务器可以识别自身每个时刻的读写吞吐量,当识别到自身在当前时刻的读写吞吐量值相比于上一时刻,有增长,或增多较多时,则可以上报给服务器。具体增长多少才会上报,可以是预先保存的。
服务器在确定region服务器是否满足预设的条件时,可以是先判断第一读写吞吐量峰值是否大于预设的吞吐量阈值,如果否,再判断针对region服务器设置的定时器是否达到预设的周期时长;也可以是先判断针对region服务器设置的定时器是否达到预设的周期时长,如果否,再判断第一读写吞吐量峰值是否大于预设的吞吐量阈值,具体顺序不进行限定。
实施例3:
为了更加准确地确定的region服务器是否满足预设的条件,在上述各实施例的基础上,在本发明实施例中,所述确定所述region服务器在当前切分周期中的第一读写吞吐量峰值包括:
在当前切分周期的每个子周期中,获取所述region服务器在该子周期中的第二读写吞吐量峰值,其中所述当前切分周期包括至少两个子周期;
判断所述第二读写吞吐量峰值是否大于当前保存的第一读写吞吐量峰值;
如果是,则根据所述第二读写吞吐量峰值对所述第一读写吞吐量峰值进行更新;
如果否,则保持当前切分周期中保存的第一读写吞吐量峰值不变。
在本发明实施例中,当前切分周期中包含至少两个子周期,在每个子周期中,服务器均会获取region服务器在该子周期中的读写吞吐量峰值,称为第二读写吞吐量峰值,可以是region服务器在每个子周期中都会上报在该子周期中的读写吞吐量峰值,则服务器获取了region服务器在该子周期中的读写吞吐量峰值。
服务器在每个子周期中均会获取region服务器在子周期中的读写吞吐量峰值。服务器在第一个子周期中获取到region服务器的读写吞吐量峰值后,可以先判断第一个子周期的读写吞吐量峰值是否大于预设的吞吐量阈值,如果是,则确定region服务器满足预设的条件,进而进行后续步骤,如果否,则将该第一个周期的读写吞吐量峰值进行保存。
当处于第二个子周期时,服务器在第二个子周期中获取region服务器在该第二个子周期中的读写吞吐量峰值,将该第二子周期的读写吞吐量峰值与保存的第一个子周期的读写吞吐量峰值进行比较,确定第二子周期的读写吞吐量峰值是否大于当前保存的第一个子周期的读写吞吐量峰值;如果是,则根据第二个子周期的读写吞吐量峰值对第一个子周期的读写吞吐量峰值进行更新,并保存,将更新后的读写吞吐量峰值与预设的吞吐量阈值进行比较,确定region服务器是否满足预设的条件。如果否,则保持当前保存的读写吞吐量峰值不变。在第三子周期中,服务器将在第三子周期中获取到的读写吞吐量峰值与保存的读写吞吐量峰值进行比较,确定是否进行更新。
将服务器在每个子周期中获取到的region服务器的读写吞吐量峰值称为第二读写吞吐量峰值,将保存的读写吞吐量峰值称为第一读写吞吐量峰值。
针对每个子周期,服务器获取region服务器在该子周期中的第二读写吞吐量峰值,判断第二读写吞吐量峰值是否大于当前保存的第一读写吞吐量峰值;如果是,则根据第二读写吞吐量峰值对第一读写吞吐量峰值进行更新,即将第一读写吞吐量峰值更新为第二读写吞吐量峰值;如果否,则保持当前切分周期中保存的第一读写吞吐量峰值不变。
在本发明实施例中,服务器在确定region服务器中的每个region在当前切分周期中被访问的目标次数时,也可以按照预设的时间间隔获取每个region在当前切分周期中被访问的次数,然后进行累计更新。具体可以是region服务器按预设的时间间隔上报在该时间间隔中被访问的次数,服务器在接收到region服务器上报的被访问的次数后进行累计更新,并保存,则服务器确定了region服务器中的每个region在当前切分周期中被访问的目标次数。预设的时间间隔可与子周期的时长相同,则region服务器在每个子周期中上报在每个子周期中被访问的次数,服务器则是按照子周期获取每个region在当前切分周期中被访问的次数。
实施例4:
为了更加准确地确定的每个region对应的目标热度级数,从而更加准确地确定每个region对应的目标切分阈值,在上述各实施例的基础上,在本发明实施例中,所述根据确定的每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,包括:
根据针对所述region服务器预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的所述region服务器中的region的最大文件的大小,以及该region服务器一次更新到磁盘的数据的大小确定。
在本发明实施例中,服务器针对该region服务器预先保存有每个热度级数,每个热度级数对应的region的数量,称为第一数量,每个热度级数与被访问的次数的对应关系。
热度级数的数量,称为第二数量,可以根据预先保存的region服务器中的region的最大文件的大小hbase.hregion.max.filesize,以及该region服务器一次更新到磁盘的数据的大小hbase.hregion.memstore.flush.size来确定的。
具体可以是用户已经设定了region服务器中的region的最大文件的大小,和region服务器一次更新到磁盘的数据的大小,将该region服务器中的region的最大文件的大小,与该region服务器一次更新到磁盘的数据的大小的商作为热度级数的第二数量N,N一般为整数。即:热度级数第二数量N= QUOTIENT(hbase.hregion.max.filesize,hbase.hregion.memstore.flush.size)。
每个热度级数对应的region的第一数量可以是任意设定的,每个热度级数对应的region的第一数量可以相同 ,也可以不同,为了更加准确地确定每个region对应的目标热度级数,第一数量可以是根据热度级数的第二数量以及该region服务器中包含的region的第三数量确定,第二数量个第一数量的和应不小于第三数量,较优的,可以是第二数量个第一数量的和为第三数量,每个第一数量相同,即第一数量与第二数量的乘积为第三数量。
每个热度级数与被访问的次数的对应关系可以是region被访问的次数越多,对应的热度级数越小,或者region被访问的次数越多,对应的热度级数越大。
在确定每个region对应的目标热度级数时,可以是根据针对该region服务器预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数。
如果每个热度级数与被访问的次数的对应关系为:region被访问的次数越多,对应的热度级数越大。在确定每个region对应的目标热度级数时,具体可以是,按照热度级数由高至低的顺序,以及按照被访问的目标次数由高至低的顺序,依次确定每个被访问的目标次数对应的目标热度级数;也可以是按照热度级数由低至高的顺序,以及按照被访问的目标次数由低至高的顺序,依次确定每个被访问的目标次数对应的目标热度级数。
如果每个热度级数与被访问的次数的对应关系为:region被访问的次数越多,对应的热度级数越小。在确定每个region对应的目标热度级数时,具体可以是,按照热度级数由高至低的顺序,以及按照被访问的目标次数由低至高的顺序,依次确定每个被访问的目标次数对应的目标热度级数;也可以是按照热度级数由低至高的顺序,以及按照被访问的目标次数由高至低的顺序,依次确定每个被访问的目标次数对应的目标热度级数。
例如,热度级数第二数量N为3,由高至低为a、b、c三个级数,每个热度级数对应的region的第一数量为2,region服务器中的region的第三数量为5, region1对应的目标次数为18, region2对应的目标次数为9, region3对应的目标次数为8, region4对应的目标次数为15, region5对应的目标次数为10。
如果按照热度级数由高至低的顺序,以及按照被访问的目标次数由高至低的顺序,依次确定每个被访问的目标次数对应的目标热度级数,则region1和region4均对应热度级数a,region2和region5均对应热度级数b, region3对应热度级数c。
如果按照热度级数由高至低的顺序,以及按照被访问的目标次数由低至高的顺序,依次确定每个被访问的目标次数对应的目标热度级数,则region3和region2均对应热度级数a,region4和region5均对应热度级数b, region1对应热度级数c。
实施例5:
为了保证region的高效切分,在上述各实施例的基础上,在本发明实施例中,如果被访问的次数越多,对应的热度级数越小,预先确定每个热度级数对应的切分阈值的过程包括:
针对每个热度级数,根据该热度级数与预先保存的所述region服务器一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
在本发明实施例中,服务器中预先保存有region服务器一次更新到磁盘的数据的大小,在确定每个热度级数对应的切分阈值时,可以是针对每个热度级数,根据该热度级数与预先保存的所述region服务器一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值region_size,具体可以是针对每个热度级数X,将该热度级数X与该region服务器一次更新到磁盘的数据的大小hbase.hregion.memstore.flush.size的乘积作为该热度级数对应的切分阈值,即region_size= hbase.hregion.memstore.flush.size *X。因为被访问的目标次数越多,目标切分阈值越小,所以,如果采用该种方式确定切分阈值,则被访问的次数越多,对应的热度级数越小。
图1B为本发明实施例提供的一种数据存储区域region的切分过程示意图,该过程包括以下步骤:
S101B:在当前切分周期中,确定所述region服务器在当前切分周期中的第一读写吞吐量峰值,判断所述第一读写吞吐量峰值是否大于预设的吞吐量阈值,如果是,则进行S103B,如果否,则进行S102B。
S102B:判断针对所述region服务器设置的定时器是否达到预设的周期时长,如果是,则进行S103B,如果否,则进行S101B。
S103B:根据针对所述region服务器预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及确定的每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的所述region服务器中的region的最大文件的大小,以及该region服务器一次更新到磁盘的数据的大小确定。
S104B:根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小。
S105B:向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分。
上述实施例中,如果服务器中保存有每个region在当前切分周期中被访问的目标次数,则在每个切分周期的开始时刻,需要对被访问的目标次数进行初始化处理。
服务器中保存有每个region在当前切分周期中的读写吞吐量峰值,在每个切分周期的开始时刻,需要对读写吞吐量峰值进行初始化处理。
并且在每个切分周期的开始时刻,还需要对定时器进行初始化处理。
实施例6:
图2为本发明实施例提供的一种数据存储区域region的切分过程示意图,所述过程包括以下步骤:
S201:接收管理服务器发送的region服务器中的每个region对应的目标切分阈值,其中,所述目标切分阈值为管理服务器在当前切分周期中,在判断所述region服务器满足预设的条件时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定的该region的目标热度级数对应的目标切分阈值,并发送的,其中,目标次数越多,目标切分阈值越小。
S202:针对每个region,根据其对应的目标切分阈值对其进行切分。
本发明实施例提供的数据存储区域region的切分方法应用于region服务器。
管理服务器在确定出了每个region对应的目标切分阈值后,可以将每个region对应的目标切分阈值发送给region服务器。
region服务器接收管理服务器发送的该region服务器中的每个region对应的目标切分阈值,针对每个region,根据其对应的目标切分阈值对其进行切分。region服务器根据每个region对应的目标切分阈值,什么时候对该region进行切分,以及如何切分属于现有技术,在本发明实施例中不进行赘述。
管理服务器发送的该region服务器中的每个region对应的目标切分阈值的确定过程可以如下:
管理服务器在当前切分周期中,在判断所述region服务器满足预设的条件时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值。
由于在发明实施例中,当region服务器满足预设的条件时,根据每个region被访问的次数,确定每个region对应的目标切分阈值,且被访问的次数越多,对应的切分阈值越小,则region服务器在对region进行切分时,将被访问的次数较多的region切分的较小,将被访问的次数较少的region切分的较大,实现负载均衡。
实施例7:
为了使管理服务器准确地确定切分阈值,以及确定是否需要对region服务器进行切分,在本发明实施例中,所述方法还包括:
在当前切分周期的每个子周期中,向管理服务器上报自身在该子周期中的读写吞吐量峰值。
region服务器中预先保存有切分周期中的每个子周期,该子周期可以是与管理服务器中保存的子周期相对应的。region服务器可以识别每个子周期中的读写吞吐量峰值,并向管理服务器上报自身每个子周期中的读写吞吐量峰值。
region服务器还可以向管理服务器上报每个region在当前切分周期中被访问的目标次数。
具体的,region服务器可以识别每个region被访问的次数,并保存,当接收到管理服务器发送的获取每个region在当前切分周期中被访问的目标次数的请求,向管理服务器上报每个region在当前切分周期中被访问的目标次数。
region服务器也可以是按照子周期上报被访问的次数,在每个子周期中,region服务器向管理服务器上报每个region在该周期中被访问的次数,使管理服务器进行累加处理。
实施例8:
图3为本发明实施例提供的一种数据存储区域region的切分过程示意图,该过程包括以下步骤:
S301:在当前切分周期中,判断当前是否满足预设的条件,如果是,则进行S302,如果否,则进行S301。
S302:针对每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;根据每个region对应的目标切分阈值,对对应的region进行切分。
本发明实施例提供的数据存储区域region的切分方法应用于region服务器。
region服务器中预先保存有切分周期,在切分周期中可以确定是否确定region服务器中的每个region对应的切分阈值。切分周期可以是半天,或者1天等。
region服务器可以确定自身中的每个region的切分阈值,region服务器中预先保存有切分阈值确定的条件,当满足切分阈值确定的条件时,则可以确定每个region的切分阈值。
region服务器可以确定自身中的每个region在当前切分周期中被访问的次数,称为目标次数,根据每个region在当前切分周期中被访问的目标次数,确定每个region对应的切分阈值。
region服务器在确定每个region在当前切分周期中被访问的目标次数时,可以是针对每个region,每被访问一次,累计保存一次被访问的次数。region服务器在判断当前满足预设的条件后,将当前保存的被访问的次数作为目标次数。
region服务器可以根据每个region在当前切分周期中被访问的目标次数,确定每个region的目标热度级数。可以是region服务器中预先保存有次数范围与热度级数的对应关系,针对每个region,确定该region在当前切分周期中被访问的目标次数所位于的目标次数范围,将该目标次数范围对应的热度级数作为目标热度级数。
region服务器中还保存有每个热度级数对应的切分阈值,在确定出每个region对应的目标热度级数后,可以根据每个热度级数对应的切分阈值,确定每个region对应的目标切分阈值。
region被访问的次数越多,则说明该region中保存的数据被访问的次数越多,可以将被访问的次数较多的数据称为热数据;反之,region被访问的次数越少,则说明该region中保存的数据被访问的次数越少,可以将被访问的次数较少的数据称为冷数据。
为了实现负载均衡,可以使热数据保存在较小的region上,冷数据保存在较大的region上,则region被访问的目标次数越多,该region对应的目标切分阈值越小。具体的,可以是如果被访问的次数越多,对应的热度级数越高,则热度级数越高,对应的目标切分阈值越小;或者是,如果被访问的次数越多,对应的热度级数越低,则热度级数越低,对应的目标切分阈值越小。
region服务器在确定出了每个region对应的目标切分阈值后,可以根据每个region对应的目标切分阈值,对对应的region进行切分。根据每个region对应的目标切分阈值,什么时候对该region进行切分,以及如何切分属于现有技术,在本发明实施例中不进行赘述。
由于在发明实施例中,当自身满足预设的条件时,根据每个region被访问的次数,确定每个region对应的目标切分阈值,且被访问的次数越多,对应的切分阈值越小,则自身在对region进行切分时,将被访问的次数较多的region切分的较小,将被访问的次数较少的region切分的较大,实现负载均衡。
实施例9:
在上述实施例的基础上,在本发明实施例中,所述判断当前是否满足预设的条件包括:
判断自身在当前切分周期中的读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断设置的定时器是否达到预设的周期时长;
如果有至少一个为是,则确定当前满足预设的条件;
如果均为否,则确定当前不满足预设的条件。
在本发明实施例中,在判断当前是否满足预设的条件时,可以是根据该自身在当前切分周期中的读写吞吐量峰值throughput_peak,以及根据定时器的时长判断。
region服务器中预先保存有吞吐量阈值throughput,和针对当前切分周期保存有周期时长,在当前切分周期开始时刻,定时器开始计时,在确定当前是否满足预设的条件时,可以是实时识别读写吞吐量值,确定自身在当前切分周期中的读写吞吐量峰值,具体可以是,如果当前时刻的读写吞吐量值大于上一时刻的读写吞吐量值,则将当前时刻的读写吞吐量值作为当前切分周期中的读写吞吐量峰值,如果当前时刻的读写吞吐量值不大于上一时刻的读写吞吐量值,则将上一时刻的读写吞吐量值作为当前切分周期中的读写吞吐量峰值。
region服务器判断当前切分周期中的读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断针对当前设置的定时器是否达到预设的周期时长,如果有至少一个为是,则确定该当前满足预设的条件,否则,确定该当前不满足预设的条件。
region服务器在确定当前是否满足预设的条件时,可以是先判断当前切分周期中的读写吞吐量峰值是否大于预设的吞吐量阈值,如果否,再判断针对该自身设置的定时器是否达到预设的周期时长;也可以是先判断针对该自身设置的定时器是否达到预设的周期时长,如果否,再判断当前切分周期中的读写吞吐量峰值是否大于预设的吞吐量阈值,具体顺序不进行限定。
实施例10:
为了更加准确地确定的每个region对应的目标热度级数,从而更加准确地确定每个region对应的目标切分阈值,在上述各实施例的基础上,在本发明实施例中,所述根据确定的每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,包括:
根据预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的region的最大文件的大小,以及一次更新到磁盘的数据的大小确定。
在本发明实施例中,region服务器预先保存有每个热度级数,每个热度级数对应的region的数量,称为第一数量,每个热度级数与被访问的次数的对应关系。
热度级数的数量,称为第二数量,可以根据预先保存的自身中的region的最大文件的大小hbase.hregion.max.filesize,以及该自身一次更新到磁盘的数据的大小hbase.hregion.memstore.flush.size来确定的。
具体可以是用户已经设定了自身中的region的最大文件的大小,和自身一次更新到磁盘的数据的大小,将该自身中的region的最大文件的大小,与该自身一次更新到磁盘的数据的大小的商作为热度级数的第二数量N,N一般为整数。即:热度级数第二数量N=QUOTIENT(hbase.hregion.max.filesize,hbase.hregion.memstore.flush.size)。
每个热度级数对应的region的第一数量可以是任意设定的,每个热度级数对应的region的第一数量可以相同 ,也可以不同,为了更加准确地确定每个region对应的目标热度级数,第一数量可以是根据热度级数的第二数量以及该自身中包含的region的第三数量确定,第二数量个第一数量的和应不小于第三数量,较优的,可以是第二数量个第一数量的和为第三数量,较优地,每个第一数量相同,即第一数量与第二数量的乘积为第三数量。
每个热度级数与被访问的次数的对应关系可以是region被访问的次数越多,对应的热度级数越小,或者region被访问的次数越多,对应的热度级数越大。
在确定每个region对应的目标热度级数时,可以是根据针对该自身预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数。
如果每个热度级数与被访问的次数的对应关系为:region被访问的次数越多,对应的热度级数越大。在确定每个region对应的目标热度级数时,具体可以是,按照热度级数由高至低的顺序,以及按照被访问的目标次数由高至低的顺序,依次确定每个被访问的目标次数对应的目标热度级数;也可以是按照热度级数由低至高的顺序,以及按照被访问的目标次数由低至高的顺序,依次确定每个被访问的目标次数对应的目标热度级数。
如果每个热度级数与被访问的次数的对应关系为:region被访问的次数越多,对应的热度级数越小。在确定每个region对应的目标热度级数时,具体可以是,按照热度级数由高至低的顺序,以及按照被访问的目标次数由低至高的顺序,依次确定每个被访问的目标次数对应的目标热度级数;也可以是按照热度级数由低至高的顺序,以及按照被访问的目标次数由高至低的顺序,依次确定每个被访问的目标次数对应的目标热度级数。
例如,热度级数第二数量N为3,由高至低为a、b、c三个级数,每个热度级数对应的region的第一数量为2,自身中的region的第三数量为5, region1对应的目标次数为18,region2对应的目标次数为9, region3对应的目标次数为8, region4对应的目标次数为15, region5对应的目标次数为10。
如果按照热度级数由高至低的顺序,以及按照被访问的目标次数由高至低的顺序,依次确定每个被访问的目标次数对应的目标热度级数,则region1和region4均对应热度级数a,region2和region5均对应热度级数b, region3对应热度级数c。
如果按照热度级数由高至低的顺序,以及按照被访问的目标次数由低至高的顺序,依次确定每个被访问的目标次数对应的目标热度级数,则region3和region2均对应热度级数a,region4和region5均对应热度级数b, region1对应热度级数c。
实施例11:
为了保证region的高效切分,在上述各实施例的基础上,在本发明实施例中,如果被访问的次数越多,对应的热度级数越低,预先确定每个热度级数对应的切分阈值的过程包括:
针对每个热度级数,根据该热度级数与预先保存的一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
在本发明实施例中,region服务器中预先保存有自身一次更新到磁盘的数据的大小,在确定每个热度级数对应的切分阈值时,可以是针对每个热度级数,根据该热度级数与预先保存的自身一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值region_size,具体可以是针对每个热度级数X,将该热度级数X与该自身一次更新到磁盘的数据的大小hbase.hregion.memstore.flush.size的乘积作为该热度级数对应的切分阈值,即region_size= hbase.hregion.memstore.flush.size *X。因为被访问的目标次数越多,目标切分阈值越小,所以,如果采用该种方式确定切分阈值,则被访问的次数越多,对应的热度级数越小。
上述实施例中,在每个切分周期的开始时刻,需要对每个region被访问的次数,读写吞吐量峰值,以及定时器进行初始化处理。
实施例12:
图4为本发明实施例提供的一种电子设备,所述电子设备包括:处理器41、存储器42和收发机43;
所述处理器,用于读取所述存储器中的程序,执行下列过程:在当前切分周期中,判断region服务器是否满足预设的条件;如果是,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;
所述收发机,用于在所述处理器的控制下,向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分。
进一步地,所述处理器,具体用于确定所述region服务器在当前切分周期中的第一读写吞吐量峰值,判断所述第一读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断针对所述region服务器设置的定时器是否达到预设的周期时长;
如果有至少一个为是,则确定region服务器满足预设的条件;
如果均为否,则确定region服务器不满足预设的条件。
进一步地,所述处理器,具体用于在当前切分周期的每个子周期中,获取所述region服务器在该子周期中的第二读写吞吐量峰值,其中所述当前切分周期包括至少两个子周期;判断所述第二读写吞吐量峰值是否大于当前保存的第一读写吞吐量峰值;如果是,则根据所述第二读写吞吐量峰值对所述第一读写吞吐量峰值进行更新;如果否,则保持当前切分周期中的第一读写吞吐量峰值不变。
进一步地,所述处理器,具体用于根据针对所述region服务器预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的所述region服务器中的region的最大文件的大小,以及该region服务器一次更新到磁盘的数据的大小确定。
进一步地,如果被访问的次数越多,对应的热度级数越低,所述处理器,还用于针对每个热度级数,根据该热度级数与预先保存的所述region服务器一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
实施例13:
图5为本发明实施例提供的一种电子设备,所述电子设备包括:处理器51、存储器52和收发机53;
所述收发机,用于在所述处理器的控制下,接收管理服务器发送的region服务器中的每个region对应的目标切分阈值,其中,所述目标切分阈值为管理服务器在当前切分周期中,在判断所述region服务器满足预设的条件时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定的该region的目标热度级数对应的目标切分阈值,并发送的,其中,目标次数越多,目标切分阈值越小;
所述处理器,用于读取所述存储器中的程序,执行下列过程:针对每个region,根据其对应的目标切分阈值对其进行切分。
进一步地,所述收发机,还用于在当前切分周期的每个子周期中,向管理服务器上报自身在该子周期中的读写吞吐量峰值。
进一步地,所述收发机,还用于向管理服务器上报每个region在当前切分周期中被访问的目标次数。
实施例14:
图6为本发明实施例提供的一种电子设备,所述电子设备包括:处理器61、存储器62和收发机63;
所述处理器,用于读取所述存储器中的程序,执行下列过程:在当前切分周期中,判断当前是否满足预设的条件;
如果是,针对每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;
根据每个region对应的目标切分阈值,对对应的region进行切分。
进一步地,所述处理器,具体用于判断自身在当前切分周期中的读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断设置的定时器是否达到预设的周期时长;
如果有至少一个为是,则确定当前满足预设的条件;
如果均为否,则确定当前不满足预设的条件。
进一步地,所述处理器,具体用于根据预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的region的最大文件的大小,以及一次更新到磁盘的数据的大小确定。
进一步地,如果被访问的次数越多,对应的热度级数越低,所述处理器,还用于针对每个热度级数,根据该热度级数与预先保存的一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
上述各实施例中的总线架构可以包括任意数量的互联的总线和桥,具体由处理器代表的一个或多个处理器和存储器代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。收发机可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器负责管理总线架构和通常的处理,存储器可以存储处理器在执行操作时所使用的数据。
可选的,处理器可以是CPU(中央处埋器)、ASIC(Application SpecificIntegrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)。
实施例15:
图7本发明实施例提供的一种数据存储区域region的切分装置结构图,应用于管理服务器,所述装置包括:
判断模块71,用于在当前切分周期中,判断region服务器是否满足预设的条件;
确定模块72,用于在所述判断模块71的判断结果为是时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;
发送模块73,用于向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分。
进一步地,所述判断模块71,具体用于确定所述region服务器在当前切分周期中的第一读写吞吐量峰值,判断所述第一读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断针对所述region服务器设置的定时器是否达到预设的周期时长;
如果有至少一个为是,则确定region服务器满足预设的条件;
如果均为否,则确定region服务器不满足预设的条件。
进一步地,所述确定模块72,具体用于在当前切分周期的每个子周期中,获取所述region服务器在该子周期中的第二读写吞吐量峰值,其中所述当前切分周期包括至少两个子周期;判断所述第二读写吞吐量峰值是否大于当前保存的第一读写吞吐量峰值;如果是,则根据所述第二读写吞吐量峰值对所述第一读写吞吐量峰值进行更新;如果否,则保持当前切分周期中的第一读写吞吐量峰值不变。
进一步地,所述确定模块72,具体用于根据针对所述region服务器预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的所述region服务器中的region的最大文件的大小,以及该region服务器一次更新到磁盘的数据的大小确定。
进一步地,如果被访问的次数越多,对应的热度级数越低,所述确定模块72,还用于针对每个热度级数,根据该热度级数与预先保存的所述region服务器一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
实施例16:
图8为本发明实施例提供的一种数据存储区域region的切分装置结构图,应用于region服务器,所述装置包括:
接收模块81,用于接收管理服务器发送的region服务器中的每个region对应的目标切分阈值,其中,所述目标切分阈值为管理服务器在当前切分周期中,在判断所述region服务器满足预设的条件时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定的该region的目标热度级数对应的目标切分阈值,并发送的,其中,目标次数越多,目标切分阈值越小;
切分模块82,用于针对每个region,根据其对应的目标切分阈值对其进行切分。
进一步地,所述装置还包括:
第一发送模块,用于在当前切分周期的每个子周期中,向管理服务器上报自身在该子周期中的读写吞吐量峰值。
进一步地,所述装置还包括:
第二发送模块,用于向管理服务器上报每个region在当前切分周期中被访问的目标次数。
实施例17:
图9为本发明实施例提供的一种数据存储区域region的切分装置结构图,应用于region服务器,所述装置包括:
判断模块91,用于在当前切分周期中,判断当前是否满足预设的条件;
确定模块92,用于当所述判断模块91的判断结果为是时,针对每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;
切分模块93,用于根据每个region对应的目标切分阈值,对对应的region进行切分。
进一步地,所述判断模块91,具体用于判断自身在当前切分周期中的读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断设置的定时器是否达到预设的周期时长;
如果有至少一个为是,则确定当前满足预设的条件;
如果均为否,则确定当前不满足预设的条件。
进一步地,所述确定模块92,具体用于根据预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的region的最大文件的大小,以及一次更新到磁盘的数据的大小确定。
进一步地,如果被访问的次数越多,对应的热度级数越低,所述确定模块92,还用于针对每个热度级数,根据该热度级数与预先保存的一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
实施例18:
图10 为本发明实施提供的一种数据存储区域region的切分系统结构图,包括:如上述任一项应用于管理服务器101的数据存储区域region的切分装置和任一项应用于region服务器102的数据存储区域region的切分装置。
实施例19:
图11为本发明实施例提供的一种电子设备,包括:处理器111、通信接口112、存储器113和通信总线114,其中,处理器111,通信接口112,存储器113通过通信总线114完成相互间的通信;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行如下步骤:
在当前切分周期中,判断region服务器是否满足预设的条件;
如果是,则针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;并向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分。
实施例20:
图12为本发明实施例提供的一种电子设备,包括:处理器121、通信接口122、存储器123和通信总线124,其中,处理器121,通信接口122,存储器123通过通信总线124完成相互间的通信;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行如下步骤:
接收管理服务器发送的region服务器中的每个region对应的目标切分阈值,其中,所述目标切分阈值为管理服务器在当前切分周期中,在判断所述region服务器满足预设的条件时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定的该region的目标热度级数对应的目标切分阈值,并发送的,其中,目标次数越多,目标切分阈值越小;
针对每个region,根据其对应的目标切分阈值对其进行切分。
实施例21:
图13为本发明实施例提供的一种电子设备,包括:处理器131、通信接口132、存储器133和通信总线134,其中,处理器131,通信接口132,存储器133通过通信总线134完成相互间的通信;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行如下步骤:
在当前切分周期中,判断当前是否满足预设的条件;
如果是,则针对每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;根据每个region对应的目标切分阈值,对对应的region进行切分。
上述各实施例中的电子设备提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(ExtendedIndustry Standard Architecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口,用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括中央处理器、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
实施例22:
本发明实施例提供了一种计算机可读存储介质,其存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行如下步骤:
在当前切分周期中,判断region服务器是否满足预设的条件;
如果是,则针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;并向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分。
实施例23:
本发明实施例提供了一种计算机可读存储介质,其存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行如下步骤:
接收管理服务器发送的region服务器中的每个region对应的目标切分阈值,其中,所述目标切分阈值为管理服务器在当前切分周期中,在判断所述region服务器满足预设的条件时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定的该region的目标热度级数对应的目标切分阈值,并发送的,其中,目标次数越多,目标切分阈值越小;
针对每个region,根据其对应的目标切分阈值对其进行切分。
实施例24:
本发明实施例提供了一种计算机可读存储介质,其存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行如下步骤:
在当前切分周期中,判断当前是否满足预设的条件;
如果是,则针对每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;根据每个region对应的目标切分阈值,对对应的region进行切分。
上述实施例中的计算机可读存储介质可以是电子设备中的处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器如软盘、硬盘、磁带、磁光盘(MO)等、光学存储器如CD、DVD、BD、HVD等、以及半导体存储器如ROM、EPROM、EEPROM、非易失性存储器(NAND FLASH)、固态硬盘(SSD)等。
本发明实施例公开了一种数据存储区域的切分方法、装置、系统、电子设备和介质,方法包括:管理服务器在当前切分周期中,判断region服务器是否满足预设的条件;如果是,则针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;并向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分。由于在发明实施例中,当region服务器满足预设的条件时,根据每个region被访问的次数,确定每个region对应的目标切分阈值,且被访问的次数越多,对应的切分阈值越小,则region服务器在对region进行切分时,将被访问的次数较多的region切分的较小,将被访问的次数较少的region切分的较大,实现负载均衡。
对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者一个操作与另一个实体或者另一个操作区分开来,而不一定要求或者暗示这些实体或者操作之间存在任何这种实际的关系或者顺序。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全应用实施例、或结合应用和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (28)

1.一种数据存储区域的切分方法,其特征在于,应用于管理服务器,所述方法包括:
在当前切分周期中,判断region服务器是否满足预设的条件;
如果是,则针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;并向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分;
其中,所述判断region服务器是否满足预设的条件包括:
确定所述region服务器在当前切分周期中的第一读写吞吐量峰值,判断所述第一读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断针对所述region服务器设置的定时器是否达到预设的周期时长;
如果有至少一个为是,则确定region服务器满足预设的条件;
如果均为否,则确定region服务器不满足预设的条件。
2.如权利要求1所述的方法,其特征在于,所述确定所述region服务器在当前切分周期中的第一读写吞吐量峰值包括:
在当前切分周期的每个子周期中,获取所述region服务器在该子周期中的第二读写吞吐量峰值,其中所述当前切分周期包括至少两个子周期;
判断所述第二读写吞吐量峰值是否大于当前保存的第一读写吞吐量峰值;
如果是,则根据所述第二读写吞吐量峰值对所述第一读写吞吐量峰值进行更新;
如果否,则保持当前切分周期中的第一读写吞吐量峰值不变。
3.如权利要求1-2任一项所述的方法,其特征在于,所述根据确定的每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,包括:
根据针对所述region服务器预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的所述region服务器中的region的最大文件的大小,以及该region服务器一次更新到磁盘的数据的大小确定。
4.如权利要求3所述的方法,其特征在于,如果被访问的次数越多,对应的热度级数越低,预先确定每个热度级数对应的切分阈值的过程包括:
针对每个热度级数,根据该热度级数与预先保存的所述region服务器一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
5.一种数据存储区域的切分方法,其特征在于,应用于region服务器,所述方法包括:
接收管理服务器发送的region服务器中的每个region对应的目标切分阈值,其中,所述目标切分阈值为管理服务器在当前切分周期中,在判断所述region服务器满足预设的条件时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定的该region的目标热度级数对应的目标切分阈值,并发送给所述region服务器,其中,目标次数越多,目标切分阈值越小;
针对每个region,根据其对应的目标切分阈值对其进行切分;
其中,所述方法还包括:
在当前切分周期的每个子周期中,向管理服务器上报自身在该子周期中的读写吞吐量峰值。
6.如权利要求5所述的方法,其特征在于,所述方法还包括:
向管理服务器上报每个region在当前切分周期中被访问的目标次数。
7.一种数据存储区域的切分方法,其特征在于,应用于region服务器,所述方法包括:
在当前切分周期中,判断当前是否满足预设的条件;
如果是,则针对每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;根据每个region对应的目标切分阈值,对对应的region进行切分;
其中,所述判断当前是否满足预设的条件包括:
判断自身在当前切分周期中的读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断设置的定时器是否达到预设的周期时长;
如果有至少一个为是,则确定当前满足预设的条件;
如果均为否,则确定当前不满足预设的条件。
8.如权利要求7所述的方法,其特征在于,所述根据确定的每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,包括:
根据预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的region的最大文件的大小,以及一次更新到磁盘的数据的大小确定。
9.如权利要求8所述的方法,其特征在于,如果被访问的次数越多,对应的热度级数越低,预先确定每个热度级数对应的切分阈值的过程包括:
针对每个热度级数,根据该热度级数与预先保存的一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
10.一种电子设备,其特征在于,所述电子设备包括:处理器、存储器和收发机;
所述处理器,用于读取所述存储器中的程序,执行下列过程:在当前切分周期中,判断region服务器是否满足预设的条件;如果是,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;
所述收发机,用于在所述处理器的控制下,向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分;
其中,所述处理器,具体用于确定所述region服务器在当前切分周期中的第一读写吞吐量峰值,判断所述第一读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断针对所述region服务器设置的定时器是否达到预设的周期时长;如果有至少一个为是,则确定region服务器满足预设的条件;如果均为否,则确定region服务器不满足预设的条件。
11.如权利要求10所述的电子设备,其特征在于,所述处理器,具体用于在当前切分周期的每个子周期中,获取所述region服务器在该子周期中的第二读写吞吐量峰值,其中所述当前切分周期包括至少两个子周期;判断所述第二读写吞吐量峰值是否大于当前保存的第一读写吞吐量峰值;如果是,则根据所述第二读写吞吐量峰值对所述第一读写吞吐量峰值进行更新;如果否,则保持当前切分周期中的第一读写吞吐量峰值不变。
12.如权利要求10-11任一项所述的电子设备,其特征在于,所述处理器,具体用于根据针对所述region服务器预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的所述region服务器中的region的最大文件的大小,以及该region服务器一次更新到磁盘的数据的大小确定。
13.如权利要求12所述的电子设备,其特征在于,如果被访问的次数越多,对应的热度级数越低,所述处理器,还用于针对每个热度级数,根据该热度级数与预先保存的所述region服务器一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
14.一种电子设备,其特征在于,所述电子设备包括:处理器、存储器和收发机;
所述收发机,用于在所述处理器的控制下,接收管理服务器发送的region服务器中的每个region对应的目标切分阈值,其中,所述目标切分阈值为管理服务器在当前切分周期中,在判断所述region服务器满足预设的条件时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定的该region的目标热度级数对应的目标切分阈值,并发送给所述region服务器,其中,目标次数越多,目标切分阈值越小;
所述处理器,用于读取所述存储器中的程序,执行下列过程:针对每个region,根据其对应的目标切分阈值对其进行切分;
其中,所述收发机,还用于在当前切分周期的每个子周期中,向管理服务器上报自身在该子周期中的读写吞吐量峰值。
15.如权利要求14所述的电子设备,其特征在于,所述收发机,还用于向管理服务器上报每个region在当前切分周期中被访问的目标次数。
16.一种电子设备,其特征在于,所述电子设备包括:处理器、存储器和收发机;
所述处理器,用于读取所述存储器中的程序,执行下列过程:在当前切分周期中,判断当前是否满足预设的条件;
如果是,针对每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;
根据每个region对应的目标切分阈值,对对应的region进行切分;
其中,所述处理器,具体用于判断自身在当前切分周期中的读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断设置的定时器是否达到预设的周期时长;
如果有至少一个为是,则确定当前满足预设的条件;
如果均为否,则确定当前不满足预设的条件。
17.如权利要求16所述的电子设备,其特征在于,所述处理器,具体用于根据预先保存的每个热度级数,每个热度级数对应的region的第一数量,每个热度级数与被访问的次数的对应关系,以及每个region在当前切分周期中被访问的目标次数,确定该region对应的目标热度级数,其中,热度级数的第二数量根据预先保存的region的最大文件的大小,以及一次更新到磁盘的数据的大小确定。
18.如权利要求17所述的电子设备,其特征在于,如果被访问的次数越多,对应的热度级数越低,所述处理器,还用于针对每个热度级数,根据该热度级数与预先保存的一次更新到磁盘的数据的大小,确定该热度级数对应的切分阈值。
19.一种数据存储区域的切分装置,其特征在于,应用于管理服务器,所述装置包括:
判断模块,用于在当前切分周期中,判断region服务器是否满足预设的条件;
确定模块,用于在所述判断模块的判断结果为是时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;
发送模块,用于向所述region服务器发送每个region对应的目标切分阈值,使其对对应的region进行切分;
其中,所述判断模块,具体用于确定所述region服务器在当前切分周期中的第一读写吞吐量峰值,判断所述第一读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断针对所述region服务器设置的定时器是否达到预设的周期时长;如果有至少一个为是,则确定region服务器满足预设的条件;如果均为否,则确定region服务器不满足预设的条件。
20.一种数据存储区域的切分装置,其特征在于,应用于region服务器,所述装置包括:
接收模块,用于接收管理服务器发送的region服务器中的每个region对应的目标切分阈值,其中,所述目标切分阈值为管理服务器在当前切分周期中,在判断所述region服务器满足预设的条件时,针对所述region服务器中的每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定的该region的目标热度级数对应的目标切分阈值,并发送给所述region服务器,其中,目标次数越多,目标切分阈值越小;
切分模块,用于针对每个region,根据其对应的目标切分阈值对其进行切分;
其中,所述装置还包括:上报模块,用于在当前切分周期的每个子周期中,向管理服务器上报自身在该子周期中的读写吞吐量峰值。
21.一种数据存储区域的切分装置,其特征在于,应用于region服务器,所述装置包括:
判断模块,用于在当前切分周期中,判断当前是否满足预设的条件;
确定模块,用于当所述判断模块的判断结果为是时,针对每个region,根据确定的每个region在当前切分周期中被访问的目标次数,确定该region的目标热度级数;根据预先保存的每个热度级数对应的切分阈值,确定该region的目标热度级数对应的目标切分阈值,其中,目标次数越多,目标切分阈值越小;
切分模块,用于根据每个region对应的目标切分阈值,对对应的region进行切分;
其中,所述判断模块,具体用于判断自身在当前切分周期中的读写吞吐量峰值是否大于预设的吞吐量阈值,以及判断设置的定时器是否达到预设的周期时长;如果有至少一个为是,则确定当前满足预设的条件;如果均为否,则确定当前不满足预设的条件。
22.一种数据存储区域的切分系统,其特征在于,包括:如权利要求19所述的应用于管理服务器的数据存储区域的切分装置和如权利要求20所述的应用于region服务器的数据存储区域的切分装置。
23.一种电子设备,其特征在于,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行权利要求1-4任一项所述方法的步骤。
24.一种电子设备,其特征在于,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行权利要求5-6任一项所述方法的步骤。
25.一种电子设备,其特征在于,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行权利要求7-9任一项所述方法的步骤。
26.一种计算机可读存储介质,其特征在于,其存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行权利要求1-4任一项所述方法的步骤。
27.一种计算机可读存储介质,其特征在于,其存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行权利要求5-6任一项所述方法的步骤。
28.一种计算机可读存储介质,其特征在于,其存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行权利要求7-9任一项所述方法的步骤。
CN201810002988.3A 2018-01-02 2018-01-02 数据存储区域的切分方法、装置、系统、电子设备和介质 Active CN109992409B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810002988.3A CN109992409B (zh) 2018-01-02 2018-01-02 数据存储区域的切分方法、装置、系统、电子设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810002988.3A CN109992409B (zh) 2018-01-02 2018-01-02 数据存储区域的切分方法、装置、系统、电子设备和介质

Publications (2)

Publication Number Publication Date
CN109992409A CN109992409A (zh) 2019-07-09
CN109992409B true CN109992409B (zh) 2021-07-30

Family

ID=67128821

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810002988.3A Active CN109992409B (zh) 2018-01-02 2018-01-02 数据存储区域的切分方法、装置、系统、电子设备和介质

Country Status (1)

Country Link
CN (1) CN109992409B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106372077A (zh) * 2015-07-22 2017-02-01 北京京东尚科信息技术有限公司 基于数据使用频率建立数据分区的方法及设备
CN106371762A (zh) * 2016-08-19 2017-02-01 浪潮(北京)电子信息产业有限公司 一种存储数据优化方法及系统
CN106407191A (zh) * 2015-07-27 2017-02-15 中国移动通信集团公司 一种数据处理方法及服务器
CN106534308A (zh) * 2016-11-14 2017-03-22 中国银联股份有限公司 一种分布式存储系统中解决数据块访问热点的方法及装置
CN107273482A (zh) * 2017-06-12 2017-10-20 北京市天元网络技术股份有限公司 基于HBase的告警数据存储方法及装置
CN107329837A (zh) * 2016-09-21 2017-11-07 广州特道信息科技有限公司 一种负载均衡的方法和单元、分布式NewSQL数据库系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9268808B2 (en) * 2012-12-31 2016-02-23 Facebook, Inc. Placement policy

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106372077A (zh) * 2015-07-22 2017-02-01 北京京东尚科信息技术有限公司 基于数据使用频率建立数据分区的方法及设备
CN106407191A (zh) * 2015-07-27 2017-02-15 中国移动通信集团公司 一种数据处理方法及服务器
CN106371762A (zh) * 2016-08-19 2017-02-01 浪潮(北京)电子信息产业有限公司 一种存储数据优化方法及系统
CN107329837A (zh) * 2016-09-21 2017-11-07 广州特道信息科技有限公司 一种负载均衡的方法和单元、分布式NewSQL数据库系统
CN106534308A (zh) * 2016-11-14 2017-03-22 中国银联股份有限公司 一种分布式存储系统中解决数据块访问热点的方法及装置
CN107273482A (zh) * 2017-06-12 2017-10-20 北京市天元网络技术股份有限公司 基于HBase的告警数据存储方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Strategies for Improving Latency and Throughput of the Apache Hadoop Ecosystem for Medical Imaging Data;Shunxing Bao,Andrew Plassard,Bennett Landman,Aniruddha Gokhale;《ACM》;20161216;第1-8页 *

Also Published As

Publication number Publication date
CN109992409A (zh) 2019-07-09

Similar Documents

Publication Publication Date Title
CN109947668B (zh) 存储数据的方法和装置
CN106230997B (zh) 一种资源调度方法和装置
US20210073123A1 (en) Method, device, and computer program product for managing address mapping in storage system
US20200311026A1 (en) File processing method and server
CN104715020A (zh) 缓存数据的删除方法及服务器
CN110442762B (zh) 基于云平台大数据的大数据处理方法
JPWO2014155553A1 (ja) 分散処理のための情報処理方法、情報処理装置及びプログラム、並びに分散処理システム
CN104636286A (zh) 用于数据访问的方法和设备
US20200341899A1 (en) System and method for prediction based cache management
WO2021197042A1 (zh) 分布式图数据库的优化方法、装置和电子设备
CN111767270A (zh) 数据迁移方法、装置、服务器及存储介质
CN109992409B (zh) 数据存储区域的切分方法、装置、系统、电子设备和介质
CN111459913B (zh) 分布式数据库的容量扩展方法、装置及电子设备
US20210382872A1 (en) Blockchain-based Data Storage Method, Related Device and Storage Medium
WO2023279801A9 (zh) 时序数据库的分区调整方法、装置、设备及可读存储介质
CN108804568B (zh) 一种Openstack中副本数据在ceph中存储方法及装置
CN116303343A (zh) 数据分片方法、装置、电子设备及存储介质
CN114064706A (zh) 数据存储方法、装置及服务器
CN115617553A (zh) 一种数据库的熔断降级保护方法、装置及电子设备
US11372832B1 (en) Efficient hashing of data objects
CN111143326B (zh) 减少数据库操作的方法、装置、计算机设备及存储介质
CN108351873B (zh) 一种缓存管理方法和装置
CN115033551A (zh) 一种数据库迁移方法、装置、电子设备及存储介质
US11562042B2 (en) Intelligent hotspot scattering method, apparatus, storage medium, and computer device
CN112269947A (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