一种分区分裂、删除分区中数据文件的方法、装置及系统制造方法及图纸

技术编号:17779331 阅读:18 留言:0更新日期:2018-04-22 07:38
本申请公开了一种分区分裂的方法、装置、一种删除分区中数据文件的方法、装置以及一种分区管理系统。其中,所述分区分裂的方法,包括:获取第一分区的数据文件;获取新建分区的数据文件;将所述新建分区的数据文件与所述第一分区的数据文件相链接,以创建所述新建分区与所述第一分区的链接关系。所述技术方案通过创建链接关系代替了现有的引用文件,解决了由于分区分裂时间与文件数有关,分裂过程比较繁琐,且分区分裂的效率低的问题;特别是如果用户请求突增时,通过新建分区与所述第一分区间创建链接关系,使得新建分区可以进行连续多次分裂。

【技术实现步骤摘要】
一种分区分裂、删除分区中数据文件的方法、装置及系统
本申请涉及通信信息
,具体涉及一种分区分裂的方法、一种删除分区中数据文件的方法以及一种分区管理系统;本申请同时涉及一种分区分裂的装置以及一种删除分区中数据文件的装置。
技术介绍
随着通信技术的发展使数据海量剧增,大数据已然成为了当今的焦点。在大数据所需的技术中,分布式文件系统、分布式数据库等都是在大数据背景下所适用的技术。在分布式文件系统中的大数据量下,分布式NOSQL数据库具有非常高的读写性能,这得益于它的无关系性,数据库的结构简单。在分布式NOSQL数据库中,一个分区只会被一台机器加载工作。但随着用户请求的增加,一个分区是无法满足服务需求的,此时需要将分区分裂成2个或者多个以满足服务需求,但是在分区分裂的过程中是无法提供服务的,用户的访问请求都会失败。分区分裂是通过将一个分区分裂成多个分区后,下线原始的分区,使分裂出的新分区上线的服务,使得原始分区的写入压力分摊到不同的分区上,突破单分区处理能力的极限。目前,NOSQL数据库的自动分裂方案为:分区分裂时对每个数据文件创建引用文件,并在文件中写入分裂点,当所有的数据文件的引用文件创建好后,分区的分裂完成。加载新分区时,会将引用文件逐个转换成真正的数据文件。在所有的引用文件被换成真正的数据文件前,新分区是不能被再次分裂的。由此可见,在现有NOSQL数据库的分区分裂方案下,存在以下问题:分区分裂时间与文件数有关,对于每个数据文件都要创建一个引用文件,每次数据文件创建引用文件都有IO,分裂过程比较繁琐,且在加载时会将引用文件逐个转换成真正的数据文件,还需进行多次IO,分区分裂的效率低。特别是如果用户请求突增,分区可能需要进行多次分裂,当分区内还包含引用文件时,该分区无法被分裂。
技术实现思路
本申请提供一种分区分裂的方法、一种删除分区中数据文件的方法以及一种分区管理系统,以解决现有技术中的上述问题。本申请同时涉及一种分区分裂的装置以及一种删除分区中数据文件的装置。本申请提供了一种分区分裂的方法,所述分区分裂的方法,包括:获取第一分区的数据文件;获取新建分区的数据文件;将所述新建分区的数据文件与所述第一分区的数据文件相链接,以创建所述新建分区与所述第一分区的链接关系。可选的,所述数据文件,包括:物理文件以及映射链接文件。可选的,所述将所述新建分区的数据文件与所述第一分区的数据文件相链接,包括:将所述新建分区中的映射链接文件指向所述第一分区中的所述数据文件。可选的,在所述将新建分区的数据文件与所述第一分区的数据文件相链接的步骤之前,包括:判断所述第一分区中的所述数据文件是否为映射链接文件;若是,则将所述新建分区中的映射链接文件指向所述第一分区中的数据文件指向的上一级数据文件,以创建所述新建分区与所述上一级分区的链接关系;若否,则执行所述将新建分区的数据文件与所述第一分区的数据文件相链接的步骤。可选的,所述创建所述新建分区与所述第一分区的链接关系,包括:在所述新建分区中创建映射链接集合;所述映射链接集合包括:在所述新建分区中的映射链接文件;为所述新建分区创建指向所述映射链接集合中映射链接文件指向的数据文件所在的第一分区的映射链接。可选的,所述在所述新建分区中创建映射链接集合的步骤之后,包括:对所述映射链接集合执行持久化操作。可选的,在所述为所述新建分区创建指向所述映射链接集合中映射链接文件指向的数据文件所在的第一分区的映射链接的步骤之后,包括:向主服务进程发送第一分区完成分裂的反馈信息;接收所述主服务进程发送的分区调度请求;阻止对已分裂的分区的访问请求,并将新建分区连接进入数据库系统。可选的,在所述获取第一分区的数据文件的步骤之前,包括:为所述第一分区创建至少两个新建分区。可选的,所述为所述第一分区创建至少两个新建分区,包括:遍历在数据库系统中连接的各个存储服务器的负载压力;获取负载压力低于预设的阈值的存储服务器,在所述存储服务器中为所述第一分区创建两个新建分区。可选的,在所述将所述新建分区的数据文件与所述第一分区的数据文件相链接,以创建所述新建分区与所述第一分区的链接关系的步骤之后,包括:在所述新建分区中创建数据文件;所述数据文件包括物理文件。相应的,本申请还提供了一种分区分裂的装置,所述分区分裂的装置,包括:第一数据文件获取单元,用于获取第一分区的数据文件;新建数据文件获取单元,用于获取新建分区的数据文件;链接关系创建单元,用于将所述新建分区的数据文件与所述第一分区的数据文件相链接,以创建所述新建分区与所述第一分区的链接关系。可选的,所述数据文件获取单元,具体用于获取第一分区的物理文件以及映射链接文件。可选的,所述链接关系创建单元,具体用于将所述新建分区中的映射链接文件指向所述第一分区中的所述数据文件。可选的,所述的分区分裂的装置,还包括:映射链接文件判断子单元,用于在所述将新建分区的数据文件与所述第一分区的数据文件相链接之前,判断所述第一分区中的所述数据文件是否为映射链接文件;映射链接指向子单元,用于接收所述映射链接文件判断子单元的判断结果,若是,则将所述新建分区中的映射链接文件指向所述第一分区中的数据文件指向的上一级数据文件,以创建所述新建分区与所述上一级分区的链接关系;映射链接关系创建触发子单元,用于接收所述映射链接文件判断子单元的判断结果,若否,则触发所述链接关系创建单元。可选的,所述链接关系创建单元,还包括:集合创建子单元,用于在所述新建分区中创建映射链接集合;所述映射链接集合包括:在该新建分区中的映射链接文件;分区映射创建子单元,用于为所述新建分区创建指向所述映射链接集合中映射链接文件指向的数据文件所在的第一分区的映射链接。可选的,所述链接关系创建单元,还包括:持久化子单元,用于在所述新建分区中创建映射链接集合之后,对所述映射链接集合执行持久化操作。可选的,所述的分区分裂的装置,还包括:反馈信息发送单元,用于为所述新建分区创建指向所述映射链接集合中映射链接文件指向的数据文件所在的第一分区的映射链接之后,向主服务进程发送第一分区完成分裂的反馈信息;调度请求接收单元,用于接收所述主服务进程发送的分区调度请求;分区上下线单元,用于阻止对已分裂的分区的访问请求,并将新建分区连接进入数据库系统。可选的,所述的分区分裂的装置,还包括:分区新建单元,用于在所述获取第一分区的数据文件之前,为所述第一分区创建至少两个新建分区。可选的,所述分区新建单元,包括:负载压力遍历子单元,用于遍历在数据库系统中连接的各个存储服务器的负载压力;分区创建子单元,用于获取负载压力低于预设的阈值的存储服务器,在所述存储服务器中为所述第一分区创建两个新建分区。可选的,所述的分区分裂的装置,还包括:物理文件创建单元,用于将所述新建分区的数据文件与所述第一分区的数据文件相链接,以创建所述新建分区与所述第一分区的链接关系之后,在所述新建分区中创建数据文件;所述数据文件包括物理文件。此外,本申请还提供了一种删除分区中数据文件的方法,所述删除分区中数据文件的方法,包括:接收删除数据文件的指令;判断所述数据文件的类型;若所述数据文件的类型为物理文件,则在存储所述数据文件的分区中删除所述数据文件;若所述数据文件的类型为映射链接文件,本文档来自技高网
...
一种分区分裂、删除分区中数据文件的方法、装置及系统

【技术保护点】
一种分区分裂的方法,其特征在于,包括:获取第一分区的数据文件;获取新建分区的数据文件;将所述新建分区的数据文件与所述第一分区的数据文件相链接,以创建所述新建分区与所述第一分区的链接关系。

【技术特征摘要】
1.一种分区分裂的方法,其特征在于,包括:获取第一分区的数据文件;获取新建分区的数据文件;将所述新建分区的数据文件与所述第一分区的数据文件相链接,以创建所述新建分区与所述第一分区的链接关系。2.根据权利要求1所述的分区分裂的方法,其特征在于,所述数据文件,包括:物理文件以及映射链接文件。3.根据权利要求2所述的分区分裂的方法,其特征在于,所述将所述新建分区的数据文件与所述第一分区的数据文件相链接,包括:将所述新建分区中的映射链接文件指向所述第一分区中的所述数据文件。4.根据权利要求3所述的分区分裂的方法,其特征在于,在所述将新建分区的数据文件与所述第一分区的数据文件相链接的步骤之前,包括:判断所述第一分区中的所述数据文件是否为映射链接文件;若是,则将所述新建分区中的映射链接文件指向所述第一分区中的数据文件指向的上一级数据文件,以创建所述新建分区与所述上一级分区的链接关系;若否,则执行所述将新建分区的数据文件与所述第一分区的数据文件相链接的步骤。5.根据权利要求3所述的分区分裂的方法,其特征在于,所述创建所述新建分区与所述第一分区的链接关系,包括:在所述新建分区中创建映射链接集合;所述映射链接集合包括:在所述新建分区中的映射链接文件;为所述新建分区创建指向所述映射链接集合中映射链接文件指向的数据文件所在的第一分区的映射链接。6.根据权利要求5所述的分区分裂的方法,其特征在于,所述在所述新建分区中创建映射链接集合的步骤之后,包括:对所述映射链接集合执行持久化操作。7.根据权利要求5所述的分区分裂的方法,其特征在于,在所述为所述新建分区创建指向所述映射链接集合中映射链接文件指向的数据文件所在的第一分区的映射链接的步骤之后,包括:向主服务进程发送第一分区完成分裂的反馈信息;接收所述主服务进程发送的分区调度请求;阻止对已分裂的分区的访问请求,并将新建分区连接进入数据库系统。8.根据权利要求1-7任意一项所述的分区分裂的方法,其特征在于,在所述获取第一分区的数据文件的步骤之前,包括:为所述第一分区创建至少两个新建分区。9.根据权利要求8所述的分区分裂的方法,其特征在于,所述为所述第一分区创建至少两个新建分区,包括:遍历在数据库系统中连接的各个存储服务器的负载压力;获取负载压力低于预设的阈值的存储服务器,在所述存储服务器中为所述第一分区创建两个新建分区。10.根据权利要求8所述的分区分裂的方法,其特征在于,在所述将所述新建分区的数据文件与所述第一分区的数据文件相链接,以创建所述新建分区与所述第一分区的链接关系的步骤之后,包括:在所述新建分区中创建数据文件;所述数据文件包括物理文件。11.一种分区分裂的装置,其特征在于,包括:第一数据文件获取单元,用于获取第一分区的数据文件;新建数据文件获取单元,用于获取新建分区的数据文件;链接关系创建单元,用于将所述新建分区的数据文件与所述第一分区的数据文件相链接,以创建所述新建分区与所述第一分区的链接关系。12.根据权利要求11所述的分区分裂的装置,其特征在于,所述数据文件获取单元,具体用于获取第一分区的物理文件以及映射链接文件。13.根据权利要求12所述的分区分裂的装置,其特征在于,所述链接关系创建单元,具体用于将所述新建分区中的映射链接文件指向所述第一分区中的所述数据文件。14.根据权利要求13所述的分区分裂的装置,其特征在于,还包括:映射链接文件判断子单元,用于在所述将新建分区的数据文件与所述第一分区的数据文件相链接之前,判断所述第一分区中的所述数据文件是否为映射链接文件;映射链接指向子单元,用于接收所述映射链接文件判断子单元的判断结果,若是,则将所述新建分区中的映射链接文件指向所述第一分区中的数据文件指向的上一级数据文件,以创建所述新建分区与所述上一级分区的链接关系;映射链接关系创建触发子单元,用于接收所述映射链接文件判断子单元的判断结果,若否,则触发所述链接关系创建单元。15.根据权利要求14所述的分区分裂的装置,其特征在于,所述链接关系创建单元,还包括:集合创建子单元,用于在所述新建分区中创建映射链接集合;所述映射链接集合包括:在该新建分区中的映射链接文件;分区映射创建子单元,用于为所述新建分区创建指向所述映射链接集合中映射链接文件指向的数据文件所在的第一分区的映射链接。16.根...

【专利技术属性】
技术研发人员:杨恋杨皓然赵波
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1