一种文件增量同步方法及系统与流程

文档序号:12719541阅读:572来源:国知局
一种文件增量同步方法及系统与流程

本发明涉及互联网技术领域,特别涉及一种文件增量同步方法及系统。



背景技术:

随着互联网的发展,越来越多的数据累计起来。对于一个运营中的用户平台,会出现海量的数据需要处理和分析。这就需要数据的导入导出以及备份、同步等工作。通常的文件同步是在数据库层面进行的。

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。

数据库中的数据是为众多用户所共享其信息而建立的,已经摆脱了具体程序的限制和制约。不同的用户可以按各自的用法使用数据库中的数据;多个用户可以同时共享数据库中的数据资源,即不同的用户可以同时存取数据库中的同一个数据。数据共享性不仅满足了各用户对信息内容的要求,同时也满足了各用户之间信息通信的要求。

随着云时代的来临,大数据(Big data)也吸引了越来越多的关注。《著云台》的分析师团队认为,大数据(Big data)通常用来形容一个公司创造的大量非结构化数据和半结构化数据,这些数据在下载到关系型数据库用于分析时会花费过多时间和金钱。大数据分析常和云计算联系到一起,因为实时的大型数据集分析需要像MapReduce一样的框架来向数十、数百或甚至数千的电脑分配工作。

大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。适用于大数据的技术,包括大规模并行处理(MPP)数据库、数据挖掘电网、分布式文件系统、分布式数据库、云计算平台、互联网和可扩展的存储系统。

大数据就是互联网发展到现今阶段的一种表象或特征而已,没有必要神话它或对它保持敬畏之心,在以云计算为代表的技术创新大幕的衬托下,这些原本很难收集和使用的数据开始容易被利用起来了,通过各行各业的不断创新,大数据会逐步为人类创造更多的价值。

文件同步和备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其它的存储介质的过程。传统的文件同步和备份主要是采用内置或外置的磁带机进行冷备份。但是这种方式只能防止操作失误等人为故障,而且其恢复时间也很长。随着技术的不断发展,数据的海量增加,不少的企业开始采用网络备份。网络备份一般通过专业的数据存储管理软件结合相应的硬件和存储设备来实现。

文件同步,是数据库的一种专用命令。这里的数据库指的是软件方面的所有与之有关的数据库。不同数据库对于文件同步的要求不同。

例如,微软的ACCSS数据库,是数据库中拥有比较傻瓜的文件同步。同样,微软其它办公软件也拥有相同的功能,直接把数据导入到新建的文件就可以了。同步的字段的多少不受限制。莲花软件则是比较严厉的数据库。在导入导出时必须把字段一一对应,才可以导入导出成功。包括了APPROACH,LOTUS 123办公软件,而APPROACH数据库仅有108个字段。而在电影动画业采用的动画制造软件,如FLASH,这里的同步,实际上就是把制作动画的元素、舞台和元素库,导入到单独的动画,导出到不同的场景和舞台。

现有技术中,对于数据的同步通常包含很多种方式,为了节约数据传输的数量,则通常会采取增量同步的方法。而现有的增量更新的方案,仍然设计复杂,步骤繁琐,不能适应大数据情况下的应用。因而,亟需要一种提高文件同 步效率的方案。



技术实现要素:

本发明提供一种文件增量同步方法及系统,用以解决现有技术中大数据量情况下文件同步效率低下的问题。

本发明提供一种文件增量同步方法,包括:

为每个文件配置递增的唯一识别序列号;

增量同步时,获取当前已同步文件的所述唯一识别序列号;

同步所述唯一识别序列号大于当前已同步文件的所述唯一识别序列号的文件。

所述方法还包括:

所述每个文件均按照先后顺序递增的配置对应的唯一识别序列号。

所述方法还包括:

所述唯一识别序列号唯一对应每个文件,根据文件发布时间顺序,逐个加一递增。

所述方法还包括:

增量同步时,获取已发布同步文件的唯一识别序列号以及待发布同步的文件的唯一识别序列号;

仅同步唯一识别序列号大于所述已发布同步文件的待发布同步文件。

所述方法还包括:

将所述唯一识别序列号大于所述已发布同步文件的待发布同步文件打包成为一个同步文件包;

同步所述同步文件包中的文件。

所述方法还包括:

增量同步时,获取所需同步的文件中唯一识别序列号最小的文件,同步所述唯一识别序列号大于该文件对应的唯一识别序列号的所有文件。

一种文件增量同步系统,包括:

序列号配置单元,用于为每个文件配置递增的唯一识别序列号;

序列号获取单元,用于增量同步时,获取当前已同步文件的所述唯一识别序列号;

增量同步单元,用于同步所述唯一识别序列号大于当前已同步文件的所述唯一识别序列号的文件。

所述序列号配置单元还用于为每个文件均按照先后顺序递增的配置对应的唯一识别序列号;

所述唯一识别序列号唯一对应每个文件,根据文件发布时间顺序,逐个加一递增。

所述序列号获取单元还用于增量同步时,获取已发布同步文件的唯一识别序列号以及待发布同步的文件的唯一识别序列号;

所述增量同步单元仅同步唯一识别序列号大于所述已发布同步文件的待发布同步文件。

所述增量同步单元还用于将所述唯一识别序列号大于所述已发布同步文件的待发布同步文件打包成为一个同步文件包;

同步所述同步文件包中的文件。

本发明实施例通过为每个文件配置递增的唯一识别序列号;增量同步时,获取当前已同步文件的所述唯一识别序列号;同步所述唯一识别序列号大于当前已同步文件的所述唯一识别序列号的文件。本发明实施例的方案,能够提高文件同步的速度和效率,并提高数据安全性,同时,对于数据增量同步的可操作性也有所改善,极大的提高了用户体验度。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获 得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为本发明实施例1提供的一种文件增量同步方法原理流程图;

图2为本发明实施例2提供的一种文件增量同步系统结构示意图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

如图1所示,为本发明实施例1提供的一种文件增量同步方法原理流程图,其中,

步骤11,为每个文件配置递增的唯一识别序列号。

文件同步,是现有文件处理和数据处理的常规步骤。通常,对于发布的文件,需要通过文件同步的方式进行。一般的,由于现有文件的数量巨大,因而,对于文件同步,通常采取增量同步的方式,也就是仅对新增的文件进行同步,这样避免所有数据文件全部同步造成的资源浪费。

增量同步是针对于上一次同步(无论是哪种同步):同步上一次同步后,所有发生变化的文件。

增量同步过程中,只同步有标记的选中的文件和文件夹,它清除标记,即:同步后标记文件,换言之,清除存档属性。

增量同步是指在一次全同步或上一次增量同步后,以后每次的同步只需同步与前一次相比增加或者被修改的文件。这就意味着,第一次增量同步的对象是进行全备后所产生的增加和修改的文件;第二次增量同步的对象是进行第一 次增量同步后所产生的增加和修改的文件,如此类推。这种同步方式最显著的优点就是:没有重复的同步数据,因此同步的数据量不大,同步所需的时间很短。但增量同步的数据恢复是比较麻烦的。必须具有上一次全同步和所有增量同步磁带(一旦丢失或损坏其中的一盘磁带,就会造成恢复的失败),并且它们必须沿着从全同步到依次增量同步的时间顺序逐个反推恢复,因此这就极大地延长了恢复时间。

使用增量同步最大的好处在于同步速度:它的速度比完整同步快上许多,同时由于增量同步在做同步前会自动判断同步时间点及文件是否已作改动,所以相对于完全同步其对于节省存储空间也大有益处。增量同步的不足之处在于数据还原的时间较长,效率相对较低,例如,如果您要还原一个同步档案,您必须把所有增量同步的磁盘都找一遍,直到找到为止,如果您要复原整个档案系统,那就得先复原最近一次的完整同步,然后复原一个又一个的增量同步。

一般有三种同步种类:完全同步、差异同步、增量同步。

完全同步:同步全部选中的文件夹,并不依赖文件的存档属性来确定同步那些文件。在同步过程中,任何现有的标记都被清除,每个文件都被标记为已同步,换言之,清除存档属性。

差异同步:差异同步是针对完全同步:同步上一次的完全同步后发生变化的所有文件。差异同步过程中,只同步有标记的那些选中的文件和文件夹。它不清除标记,即:同步后不标记为已同步文件,换言之,不清除存档属性。说白了就是:差异将把前一次的数据都同步,一定要搞清是前一次的,另外他不管有没有打过标记他都同步,总之好恢复但太占空间。

不同同步类型可以存在一定组合,下面的示例供您参考:

完全同步和差异同步

在星期一进行完全同步,在星期二至星期五进行差异同步。如果在星期五数据被破坏了,则你只需要还原星期一完全的同步和星期四的差异同步。这种策略同步数据需要较多的时间,但还原数据使用较少的时间。

完全同步和增量同步

在星期一进行完全同步,在星期二至星期五进行增量同步。如果在星期五数据被破坏了,则你需要还原星期一正常的同步和从星期二至星期五的所有增量同步。这种策略同步数据需要较少的时间,但还原数据使用较多的时间。

Oracle中,增量同步时分等级的,级别从0开始,一级一级递增,不过实际上用的最多的也就是0级和1级了,0级增量同步是后面级别的增量同步的基础,0级同步实际上就是一个完全同步,与普通的完全同步唯一的不同点是0级同步可以作为其他级别增量同步的基础,而普通的完全同步是不能的。

从级别1开始,Oracle的增量同步分为差异增量同步和积累增量同步两种,其中差异增量同步的是自上一次同级别的差异同步或者是上一次更高级别的同步完成之后的数据库发生改变的数据块;而积累增量同步则是同步的自上一次上一级增量同步完成以来数据库发生改变的数据块。

增量同步,现有技术存在多种方案,这些方案都具有一定的适用性,但均不能满足现有大数据条件下文件同步的要求。本实施例旨在提出一种简单易行的文件增量同步方案。

本实施例中,首先为每个文件配置一个唯一识别序列号,每个文件均需要配置。所有经过发布和同步的文件,不论是不是通过增量同步的文件,均需要配置一个唯一识别序列号。这个唯一识别序列号每个文件均按照先后顺序递增的配置对应的唯一识别序列号。唯一识别序列号唯一对应每个文件,根据文件发布时间顺序,逐个加一递增。

也就是说,唯一识别序列号与其文件一一对应,根据这个唯一识别序列号可以唯一对应一个文件。这个唯一识别序列号可以是一个简单的流水号,根据文件生成或者发布的顺序而逐个加一产生。例如,第一个文件序列号可以是1,第二个文件的唯一识别序列号为2,以此类推,直到后续的所有文件。这样的好处在于,每个文件的唯一识别序列号即可有一个排列顺序,获取这些唯一识别序列号即可直到该文件在所有文件中的顺序。

步骤12,增量同步时,获取当前已同步文件的唯一识别序列号。

增量同步时,不需要获取所有的文件的唯一识别序列号,而是仅需要获取当前已经同步完成的文件的唯一识别序列号,也就是获取当前已经同步完成的文件的唯一识别序列号中最大的那个。这个最大的序列号就是已经同步完成的唯一识别序列号中最大的一个,所有比它小的唯一识别序列号对应的文件均已同步完成,后续的增量同步仅需要从这个唯一识别序列号开始,同步唯一识别序列号更大的文件即可。

步骤13,同步唯一识别序列号大于当前已同步文件的唯一识别序列号的文件。

这里,实际上是在获取已经同步完成的文件中唯一识别序列号最大的一个,然后将所有大于这个唯一识别序列号的唯一识别序列号对应的文件全部进行同步。原理在于:同步是根据唯一识别序列号来进行的,而唯一识别序列号是有现有顺序的。每次增量同步的时候,仅需要同步唯一识别序列号比较大的文件即可。因而,仅需要获取已经同步的文件中唯一识别序列号最大的,然后即可获知需要增量同步的文件的唯一识别序列号序列号最小的是多少,只要同步大于这个唯一识别序列号的所有文件即可。

当然,增量同步时,获取已发布同步文件的唯一识别序列号以及待发布同步的文件的唯一识别序列号;

仅同步唯一识别序列号大于所述已发布同步文件的待发布同步文件。

将所述唯一识别序列号大于所述已发布同步文件的待发布同步文件打包成为一个同步文件包;

同步所述同步文件包中的文件。

增量同步时,获取所需同步的文件中唯一识别序列号最小的文件,同步所述唯一识别序列号大于该文件对应的唯一识别序列号的所有文件。

对于增量同步来说,实际上仅根据唯一识别序列号来进行的。根据唯一识别序列号的排序,即可获知需要增量更新的文件。如果记录下每次更新后的唯 一识别序列号的具体值,然后在下次更新时候根据这个记录的值来选择唯一识别序列号对应的文件来进行增量更新,无疑会带来效率的进一步提高,是本实施例的一个实施方式。

本发明实施例通过为每个文件配置递增的唯一识别序列号;增量同步时,获取当前已同步文件的所述唯一识别序列号;同步所述唯一识别序列号大于当前已同步文件的所述唯一识别序列号的文件。本发明实施例的方案,能够提高文件同步的速度和效率,并提高数据安全性,同时,对于数据增量同步的可操作性也有所改善,极大的提高了用户体验度。

如图2所示,为本发明实施例2提供的一种文件增量同步系统结构示意图,其中,

序列号配置单元21,用于为每个文件配置递增的唯一识别序列号;

序列号获取单元22,用于增量同步时,获取当前已同步文件的所述唯一识别序列号;

增量同步单元23,用于同步所述唯一识别序列号大于当前已同步文件的所述唯一识别序列号的文件。

进一步的,上述序列号配置单元21还用于为每个文件均按照先后顺序递增的配置对应的唯一识别序列号;

所述唯一识别序列号唯一对应每个文件,根据文件发布时间顺序,逐个加一递增。

进一步的,上述序列号获取单元22还用于增量同步时,获取已发布同步文件的唯一识别序列号以及待发布同步的文件的唯一识别序列号;

增量同步单元23仅同步唯一识别序列号大于所述已发布同步文件的待发布同步文件。

进一步的,上述增量同步单元23还用于将所述唯一识别序列号大于所述已发布同步文件的待发布同步文件打包成为一个同步文件包;

同步所述同步文件包中的文件。

综上所述,本发明实施例通过为每个文件配置递增的唯一识别序列号;增量同步时,获取当前已同步文件的所述唯一识别序列号;同步所述唯一识别序列号大于当前已同步文件的所述唯一识别序列号的文件。本发明实施例的方案,能够提高文件同步的速度和效率,并提高数据安全性,同时,对于数据增量同步的可操作性也有所改善,极大的提高了用户体验度。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个 流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1