首页> 中国专利> 一种分布式海量非结构化数据备份方法及系统

一种分布式海量非结构化数据备份方法及系统

摘要

本发明公开了一种分布式海量非结构化数据的备份方法及系统,依据各生产服务器的性能指标确定性能权值,在整个备份任务分解时,均衡生产环境中各生产服务器性能指标,实现多个生产服务器协同将共享存储中海量非结构化数据备份至后端服务器,提高生产环境中服务器总体性能。

著录项

  • 公开/公告号CN109144783A

    专利类型发明专利

  • 公开/公告日2019-01-04

    原文格式PDF

  • 申请/专利权人 南京壹进制信息技术股份有限公司;

    申请/专利号CN201810961531.5

  • 发明设计人 王仁杰;李正祥;张有成;

    申请日2018-08-22

  • 分类号

  • 代理机构南京纵横知识产权代理有限公司;

  • 代理人董建林

  • 地址 210014 江苏省南京市白下高新技术产业园区永智路5号五号楼B栋C栋3楼

  • 入库时间 2024-02-19 08:07:13

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-08-18

    授权

    授权

  • 2019-04-05

    著录事项变更 IPC(主分类):G06F11/14 变更前: 变更后: 申请日:20180822

    著录事项变更

  • 2019-01-29

    实质审查的生效 IPC(主分类):G06F11/14 申请日:20180822

    实质审查的生效

  • 2019-01-04

    公开

    公开

说明书

技术领域

本发明涉及数据备份技术领域,具体涉及一种分布式海量非结构化数据的备份方法及系统。

背景技术

计算机信息化系统中的数据分为结构化数据和非结构化数据。非结构化数据是数据结构不规则或不完整,没有预定义的数据模型,不方便用数据库二维逻辑表来表现的数据,包括格式有办公文档、文本、图片、XML、 HTML、各类报表、图像和音频/视频信息等,其格式非常多样,标准也是多样性的,而且在技术上非结构化信息比结构化信息更难标准化和理解。

随着实际生产环境中,服务器上非结构化数据呈现海量增长趋势,备份技术方案也要求不断优化,以缩短备份周期,减少数据丢失风险。与传统结构化数据相比,具有无规则性,需要使用定制化的备份软件,对其做长期的归档性备份。若数据量接近海量,对备份效率较高时,对生产服务器本身资源(如内存、CPU、存储IO)也有着相应增长的需求,如何保证生产服务器高效备份数据的同时拥有宽松的并发空间,对于备份方法提出了较高的要求。

针对海量非结构化数据的备份性能优化,目前主要通过并行的、多通道化的、多进程间协同执行一个备份任务来提高同一时间所能操作的数据流量来提升整体的备份效率。现有对海量非结构化数据环境中的生产服务器数据所采用的备份方式,主要是通过创建单个进程(内部可使用多个工作子线程)执行一个备份任务;或者通过创建多个执行进程并行执行一个备份任务(并行方式);这两种方式存在单点服务器性能瓶颈,即虽然在单个服务器环境中,可以充分地利用内存、CPU、磁盘等硬件资源来完成特定的备份任务,但是整个服务器在某段时间内的并发性能将得不到充分利用。如果整个服务器只进行特定一个备份任务,并发性能还可以接受,如果需要进行多个备份任务,或者多种类型的任务,整个服务器将会出现严重的性能过载,各任务频繁请求时间片、CPU、内存,IO也将频繁被调度切换,从而导致服务器整体性能下降。

发明内容

本发明的目的在于克服现有技术中的不足,提供一种分布式海量非结构化数据的备份方法及系统,解决了现有存在单点服务器性能瓶颈的技术问题。

为解决上述技术问题,本发明提供了一种分布式海量非结构化数据的备份方法,其特征是,包括多个生产服务器、和后端服务器,多个生产服务器协同将分布式共享存储中海量非结构化数据备份至后端服务器,具体包括以下过程:

步骤S1, 依据各生产服务器的性能指标计算确定对应各生产服务器的性能权重;

步骤S2,当其中一个生产服务器接收到将共享存储中数据备份至后端服务器的备份任务时,针对此备份任务创建一个备份进程生成相应的备份策略;

步骤S3,将备份策略分解成若干个子进程执行,并依据各生产服务器的性能权重将所有子进程分配至各生产服务器;

步骤S4,各生产服务器中所有子进程依据各自的备份策略执行,分别将共享存储中数据备份至后端服务器中;

步骤S5,备份任务完成后,释放各子进程和备份进程资源。

优选的,性能权重是依据生产服务器的性能指标,采用负载均衡服务算法计算得到的一个具体数值,性能权重数值越大,代表生产服务器性能越好。

优选的,生产服务器的性能权重数值越大,分配得到的子进程数越多。

优选的,所有子进程中选举一个子进程作为主子进程,其他子进程为从子进程,以主-从方式执行。

优选的,采用分布式一致性算法选出主子进程。

相应的,与上述方法同样的发明构思,本发明的一种分布式海量非结构化数据的备份系统,包括多个生产服务器和后端服务器,多个生产服务器协同将共享存储中数据备份至后端服务器,具体包括:

性能权重计算模块,用于依据各生产服务器的性能指标计算确定对应各生产服务器的性能权重;

备份任务创建模块,用于当其中一个生产服务器接收到将共享存储中数据备份至后端服务器的备份任务时,针对此备份任务创建一个备份进程生成相应的备份策略;

备份任务分解模块,用于将备份策略分解成若干个子进程执行,并依据各生产服务器的性能权重将所有子进程分配至各生产服务器;

备份任务执行模块,用于各生产服务器中所有子进程同时执行,以将共享存储中数据备份至后端服务器中;

资源回收模块,用于备份任务完成后,释放各子进程和备份进程资源。

优选的,性能权重是依据生产服务器的性能指标,采用负载均衡服务算法计算得到的一个具体数值,性能权重数值越大,代表生产服务器性能越好。

优选的,备份任务分解模块中,生产服务器的性能权重数值越大,分配得到的子进程数越多。

优选的,备份任务执行模块中,所有子进程中选举一个子进程作为主子进程,其他子进程为从子进程,以主-从方式执行。

与现有技术相比,本发明所达到的有益效果是:

(1) 通过负载均衡算法,依据各生产服务器节点的性能状态确定其性能指标,;达到在整个任务分解过程中,依据性能指标均衡生产环境中各生产服务器负载,提高生产环境中服务器总体性能;

(2)通过分布式算法中的一致性选举方式,达到整个任务被分解的各进程始终以主-从方式执行,达到了整个分解任务的分布式执行的一致性;

(3)通过将整个任务,结合负载均衡、及分布式一致性算法,分解到生产环境中各服务器上执行,达到了充分利用生产环境中服务器性能资源;达到了减少单点服务器性能瓶颈;达到了避免单点服务器饥饿现象;达到了整体任务备份速度的有效提升。

附图说明

图1为本发明方法的架构图;

图2是本发明方法实施例一的架构图;

图3是图2实施例的方法流程图。

具体实施方式

下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。

本发明的一种分布式海量非结构化数据的备份方法,包括多个生产服务器、和后端服务器,多个生产服务器协同将分布式共享存储中海量非结构化数据备份至后端服务器,具体包括以下过程:

步骤S1, 依据各生产服务器的性能指标计算确定对应各生产服务器的性能权重;

步骤S2,当其中一个生产服务器接收到将共享存储中数据备份至后端服务器的备份任务时,针对此备份任务创建一个备份进程生成相应的备份策略;

步骤S3,将备份策略分解成若干个子进程执行,并依据各生产服务器的性能权重将所有子进程分配至各生产服务器;

步骤S4,各生产服务器中所有子进程依据各自的备份策略执行,分别将共享存储中数据备份至后端服务器中;

步骤S5,备份任务完成后,释放各子进程和备份进程资源。

本发明中,在整个备份任务分解过程中,均衡生产环境中各生产服务器负载性能,提高生产环境中服务器总体性能。

实施例

参见图1和图2所示,整个生产环境中有2台生产服务器,定义为生产服务器1和生产服务器2,备份任务是将分布式共享存储中的海量非结构化数据备份至后端服务器存储。参见图3所示,具体的备份过程如下:

1)生产服务器1和生产服务器2定时向负载均衡服务器注册自身的性能指标,负载均衡服务器依据各生产服务器的性能指标计算确定各生产服务器当前状态下的性能权重,

性能权重这里主要是结合具体生产服务器的性能指标,如内存、磁盘、CPU等,采用负载均衡服务算法,计算得到的一个具体数值:如范围可为1-100;数值越大,代表权重越高,性能越好。如图2所示,生产服务器1的性能权重为1,生产服务器2的性能权重为3。

2)当生产服务器1收到一个备份任务时,通过其进程管理器创建了一个备份进程1,并且进程管理器向分布式协同调度服务器注册本次备份任务;

此备份任务是从共享存储NAS/SAN中将海量非结构化数据备份至后端服务器,生产服务器收到备份任务时,进程管理器将本次备份任务的备份策略信息(如备份源等)发送至分布式协同调度服务器;注册是向分布式服务器保存任务的记录,由该服务器统一管理;分布式协同调度服务器存入任务注册信息后,以为后续的分布式子进程的管理、及通知进程管理器整个任务的进展情况。

3)分布式协同调度服务器,通过查询负载均衡服务器获取已注册的生产服务器的各自性能权重,依据性能权值组织任务分解计划:权重越高的生产服务器分得的子进程越多,将备份进程1的备份策略分解成5个子进程执行(分别记为1-1、1-2、1-3、1-4、1-5子进程,也可以称为第1、2…5个子进程),将5个子进程分别下发到生产服务器1、2上执行(此时服务器1上分配到1-1,1-2两个任务子进程;服务器2上分配到1-3,1-4,1-5三个任务子进程);

分解子进程个数一方面是通过生产机权重控制的;另一方面备份策略一般是按照目录下发,或者多个文件路径下发;可以通过分解目录给多个子进程;也可以通过指派不同的文件路径给不同的子进程。

4)分布式协同调度服务器将已经分配好的任务子进程,通过结合分布式一致性选举算法(使用现有分布式开源技术zookeeper实现),选举出一个主子进程,及其他子进程为从子进程(因为整个被分解的备份任务,是在分布式环境中执行的,需要保证整个备份任务的一致性);主子进程和各从子进程同步执行,都根据备份策略从共享存储中读取备份数据存储到后端服务器。

通过分布式算法中的一致性选举方式,达到整个任务被分解的各进程始终以主-从方式执行(过程中如遇异常,则重新进行主-从选举),达到了整个分解任务的分布式执行的一致性。

各子进程备份的数据是独立的,每个进程生成的数据会以存储数据对象的形式存放在后端服务器中;后端服务器中索引库记录了备份数据的元数据信息,如文件名,大小,及在后端服务器中的数据偏移,根据索引库中记录,即可以读写存储中数据。

5)整个备份任务执行过程中,各从子进程向主子进程汇报当前备份进度情况(如已完成备份数据的进度比例,文件个数,目录个数等),主子进程负责向生产服务器1的进程管理器汇报当前整体备份任务进展情况(主要是备份的数据进度比例,和一些异常错误);

6)最终,随着各子进程备份任务的完成,整个备份任务也结束;

7)生产服务器2回收从子进程1-3、1-4、1-5资源;

8)生产服务器1回收子进程1-1、1-2资源。

9)生成服务器1回收备份进程1资源。

本发明所达到的有益效果是:

(1) 通过负载均衡算法,将各生产服务器节点的性能状态,汇总到负载均衡服务器;在整个任务分解过程中,均衡生产环境中各生产服务器负载,提高生产环境中服务器总体性能;

(2)通过将整个任务,结合负载均衡、及分布式一致性算法,分解到生产环境中各服务器上执行,达到了充分利用生产环境中服务器性能资源;达到了减少单点服务器性能瓶颈;达到了避免单点服务器饥饿现象;达到了整体任务备份速度的有效提升。

相应的,与上述方法同样的发明构思,本发明的一种分布式海量非结构化数据的备份系统,包括多个生产服务器和后端服务器,多个生产服务器协同将共享存储中数据备份至后端服务器,具体包括:

性能权重计算模块,用于依据各生产服务器的性能指标计算确定对应各生产服务器的性能权重;此模块采用现有的负载均衡服务器执行实现;

备份任务创建模块,用于当其中一个生产服务器接收到将共享存储中数据备份至后端服务器的备份任务时,针对此备份任务创建一个备份进程生成相应的备份策略;

备份任务分解模块,用于将备份策略分解成若干个子进程执行,并依据各生产服务器的性能权重将所有子进程分配至各生产服务器;此模块采用分布式协同调度服务器执行实现,

备份任务执行模块,用于各生产服务器中所有子进程同时执行,以将共享存储中数据备份至后端服务器中;

资源回收模块,用于备份任务完成后,释放各子进程和备份进程资源。

优选的,性能权重是依据生产服务器的性能指标,采用负载均衡服务算法计算得到的一个具体数值,性能权重数值越大,代表生产服务器性能越好。

优选的,备份任务分解模块中,生产服务器的性能权重数值越大,分配得到的子进程数越多。

优选的,备份任务执行模块中,所有子进程中选举一个子进程作为主子进程,其他子进程为从子进程,以主-从方式执行。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号