分布式数据库的空间整理方法、装置、设备以及存储介质制造方法及图纸

技术编号:26065696 阅读:14 留言:0更新日期:2020-10-28 16:38
本申请公开了分布式数据库的空间整理方法、装置、设备以及存储介质,涉及分布式数据库、大数据领域。具体实现方案为:对于分布式数据库中各数据库分片中的每个数据表,统计针对该数据表的数据写入请求和数据删除请求,确定待写入数据的数据量和待删除数据的数据量;确定目标空间整理单位值;根据预先获取的该数据表的各存储单元的元数据,确定该数据表的各存储单元中满足预设整理条件的存储单元为目标存储单元;基于目标空间整理单位值以及目标存储单元的元数据,生成迁移任务信息;输出迁移任务信息,以供对各数据库分片进行空间整理。本实现方式通过对每个数据表的每个存储单元的空间进行整理,实现了对整个分布式数据库的空间整理。

【技术实现步骤摘要】
分布式数据库的空间整理方法、装置、设备以及存储介质
本申请涉及计算机
,具体涉及分布式数据库、大数据领域,尤其涉及分布式数据库的空间整理方法、装置、设备以及存储介质。
技术介绍
在互联网业务中,随着业务数据量的不断增加,需要大量的存储空间来存储互联网业务中的相关数据。由于分布式存储系统的存储空间能够无限扩展,因此在存储互联网的业务数据时得到了广泛利用。在互联网业务中,由于经常需要对数据进行插入、更新、删除等相关操作,因此在互联网业务的分布式存储过程中,也会对应地对存储的数据进行诸如插入、删除、拆分以及迁移等相关操作,这些操作容易导致分布式存储系统的存储空间碎片化。随着存储数据的数据量增多,存储空间中会累积起大量冗余的碎片化存储空间。这些累积的碎片化存储空间由于数量巨大,导致其占用的总存储空间会变得非常大。并且,在对数据进行永久性存储时,存储数据会随着时间的增加的成倍增加,从而使上述问题更加凸显。
技术实现思路
提供了一种分布式数据库的空间整理方法、装置、设备以及存储介质。根据第一方面,提供了一种分布式数据库的空间整理方法,包括:对于分布式数据库中各数据库分片中的每个数据表,统计针对该数据表的数据写入请求和数据删除请求,确定该数据表的待写入数据的数据量和待删除数据的数据量;根据待写入数据的数据量和待删除数据的数据量,确定目标空间整理单位值;根据预先获取的该数据表的各存储单元的元数据,确定该数据表的各存储单元中满足预设整理条件的存储单元为目标存储单元;基于目标空间整理单位值以及目标存储单元的元数据,生成迁移任务信息;输出迁移任务信息,以供对各数据库分片进行空间整理。根据第二方面,提供了一种分布式数据库的空间整理装置,包括:统计单元,被配置成对于分布式数据库中各数据库分片中的每个数据表,统计针对该数据表的数据写入请求和数据删除请求,确定该数据表的待写入数据的数据量和待删除数据的数据量;确定单元,被配置成根据待写入数据的数据量和待删除数据的数据量,确定目标空间整理单位值;筛选单元,被配置成根据预先获取的该数据表的各存储单元的元数据,确定该数据表的各存储单元中满足预设整理条件的存储单元为目标存储单元;生成单元,被配置成基于目标空间整理单位值以及目标存储单元的元数据,生成迁移任务信息;输出单元,被配置成输出迁移任务信息,以供对各数据库分片进行空间整理。根据第三方面,提供了一种分布式数据库的空间整理电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,所述指令被至少一个处理器执行,以使至少一个处理器能够执行如第一方面所描述的方法。根据第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,上述计算机指令用于使计算机执行如第一方面所描述的方法。根据本申请的技术解决了现有的分布式存储系统无法有效地对存储空间进行整理的问题,通过对每个数据表的每个存储单元的空间进行整理,实现了对整个分布式数据库的空间整理。应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。附图说明附图用于更好地理解本方案,不构成对本申请的限定。其中:图1是本申请的一个实施例可以应用于其中的示例性系统架构图;图2是根据本申请的分布式数据库的空间整理方法的一个实施例的流程图;图3是根据本申请的分布式数据库的空间整理方法的一个应用场景的示意图;图4是根据本申请的分布式数据库的空间整理方法的另一个实施例的流程图;图5是根据本申请的分布式数据库的空间整理装置的一个实施例的结构示意图;图6是用来实现本申请实施例的分布式数据库的空间整理方法的电子设备的框图。具体实施方式以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。图1示出了可以应用本申请的分布式数据库的空间整理方法或分布式数据库的空间整理装置的实施例的示例性系统架构100。如图1所示,系统架构100可以包括分布式数据库101,服务器102和终端设备103、104。分布式数据库101与服务器102之间以及服务器102与终端设备103、104之间可以通过网络连接。网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。分布式数据库101可以包括多个数据库分片1011、1012、1013。每个数据库分片中可以包括多个数据表,每个数据表可以包括多个存储单元,存储单元用于存储数据。上述分布式数据库101可以是分布式键值存储系统(分布式KV存储系统)。服务器102可以是对分布式数据库101中的各数据库分片1011、1012、1013进行管理的管理服务器。服务器102可以根据接收到的写入请求和删除请求,生成迁移任务信息,以使各数据库分片对其中的每个数据表中的各存储单元进行空间整理,减少存储碎片,提供存储空间的利用率。服务器102可以是硬件,也可以是软件。当服务器102为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器102为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。用户可以使用终端设备103、104通过网络与服务器102交互,以请求访问分布式数据库101中的各数据库分片1011、1012、1013,实现数据的写入、读取和删除。终端设备103、104上可以安装有各种通讯客户端应用,例如数据库访问类应用等。终端设备103、104可以是硬件,也可以是软件。当终端设备103、104为硬件时,可以是各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、车载电脑、膝上型便携计算机和台式计算机等等。当终端设备103、104为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。需要说明的是,本申请实施例所提供的分布式数据库的空间整理方法一般由服务器102执行。相应地,分布式数据库的空间整理装置一般设置于服务器102中。应该理解,图1中的分布式数据中的各数据库分片、服务器和终端设备的数目仅仅是示意性的。根据实现需要,可以具有任意数目的分布式数据中的各数据库分片、服务器和终端设备。继续参考图2,示出了根据本申请的分布式数据库的空间整理方法的一个实施例的流程200。本实施例的分布式数据库的空间整本文档来自技高网...

【技术保护点】
1.一种分布式数据库的空间整理方法,包括:/n对于分布式数据库中各数据库分片中的每个数据表,统计针对该数据表的数据写入请求和数据删除请求,确定该数据表的待写入数据的数据量和待删除数据的数据量;/n根据所述待写入数据的数据量和所述待删除数据的数据量,确定目标空间整理单位值;/n根据预先获取的该数据表的各存储单元的元数据,确定该数据表的各存储单元中满足预设整理条件的存储单元为目标存储单元;/n基于所述目标空间整理单位值以及所述目标存储单元的元数据,生成迁移任务信息;/n输出所述迁移任务信息,以供对各数据库分片进行空间整理。/n

【技术特征摘要】
1.一种分布式数据库的空间整理方法,包括:
对于分布式数据库中各数据库分片中的每个数据表,统计针对该数据表的数据写入请求和数据删除请求,确定该数据表的待写入数据的数据量和待删除数据的数据量;
根据所述待写入数据的数据量和所述待删除数据的数据量,确定目标空间整理单位值;
根据预先获取的该数据表的各存储单元的元数据,确定该数据表的各存储单元中满足预设整理条件的存储单元为目标存储单元;
基于所述目标空间整理单位值以及所述目标存储单元的元数据,生成迁移任务信息;
输出所述迁移任务信息,以供对各数据库分片进行空间整理。


2.根据权利要求1所述的方法,其中,所述根据所述待写入数据的数据量和待删除数据的数据量,确定目标空间整理单位值,包括:
确定所述待写入数据的数据量与所述待删除数据的数据量的比值为目标比值;
根据预设的比值与空间整理单位值的对应关系以及所述目标比值,确定所述目标空间整理单位值。


3.根据权利要求1所述的方法,其中,元数据包括运行状态、可用空间以及创建时间;以及
所述根据预先获取的该数据表的各存储单元的元数据,确定该数据表的各存储单元中满足预设整理条件的存储单元为目标存储单元,包括:
将所述待写入数据分别写入各存储单元以及将所述待删除数据分别从各存储单元中删除,确定处理后各存储单元的可用空间;
确定该数据表的各存储单元中运行正常的存储单元为候选存储单元;
将所述候选存储单元中满足以下至少一项的存储单元作为目标存储单元:可用空间大于所述目标空间整理单位值、创建时间与当前时间之间的时长大于预设时长。


4.根据权利要求3所述的方法,其中,所述基于所述目标空间整理单位值以及所述目标存储单元的元数据,生成迁移任务信息,包括:
根据所述目标空间整理单位值以及所述目标存储单元的可用空间,确定所述目标存储单元的目标空间;
基于所述目标空间整理单位值、所述目标空间以及所述目标存储单元的元数据,生成迁移任务信息。


5.根据权利要求4所述的方法,其中,所述根据所述目标空间整理单位值以及所述目标存储单元的可用空间,确定所述目标存储单元的目标空间,包括:
确定所述可用空间与所述目标空间整理单位值的比值对应的整数值;
计算所述目标空间整理单位值与所述整数值的积值;
将所述可用空间与所述积值的差值作为所述目标空间。


6.根据权利要求4所述的方法,其中,所述基于所述目标空间整理单位值、所述目标空间以及所述目标存储单元的元数据,生成迁移任务信息,包括:
确定对所述目标存储单元进行数据迁移所需的新存储单元的地址;
根据所述目标空间整理单位值、所述地址、所述目标空间以及所述目标存储单元的元数据,生成迁移任务信息。


7.根据权利要求1所述的方法,其中,所述输出所述迁移任务信息,包括:
从等待队列中选取出目标迁移任务,向所述目标迁移任务对应的数据库分片输出所述目标迁移任务,所述等待队列包括生成的迁移任务信息。


8.根据权利要求1所述的方法,其中,所述方法还包括:
响应于接收到数据库分片发送的迁移成功消息,将所述目标存储单元的元数据删除,其中,所述迁移成功消息是数据库分片根据所述迁移任务信息将所述目标存储单元的数据迁移至新存储单元后发送的;
获取以及存储所述新存储单元的元数据。


9.一种分布式数据库的空间整理装置,包括:
统计单元,被配置成对于分布式数据库中各数据库分片中的每个...

【专利技术属性】
技术研发人员:卢祚李理
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1