多个网络存储装置的数据同步系统及方法

文档序号:7763396阅读:287来源:国知局
专利名称:多个网络存储装置的数据同步系统及方法
技术领域
本发明涉及计算机网络存储装置,尤其涉及一种多个网络存储装置的数据同步系统;此外,本发明还涉及一种多个网络存储装置的数据同步方法。
背景技术
网络存储装置是指网络存储服务,通常包括相册网站、在线笔记网站、在线文档存储网站、网络硬盘服务等。使用网络存储装置,不管是在家中、还是在单位或是在其他任何地方,只要能够连接到因特网,用户就可以访问、管理、编辑网络存储装置中的文件,而不需要随身携带,也不用担心文件数据的损坏或丢失。由于网络存储装置的种种优点,使得其拥有庞大的用户群体,而且有相当一部分用户会注册多个网络存储装置来保存、备份自己的文件数据,用户这样做的原因有(1)由于希望使用特定的在线应用服务,用户会把某一种类型的文件数据存储在特定的网络存储装置上;(2)对于重要的数据文件,用户希望进行多次备份,以防数据丢失、损坏,因此会在多个网络存储装置上重复备份;(3)在某一个网络存储装置停止服务时,用户希望可以从其他网络存储装置处获得数据,以提高文件数据可用性;很多用户倾向于使用多个网络存储装置来保存不同类型的数据文件,但是多个网络存储装置之间由于缺乏一种方便、快捷的数据同步方法,而给用户带来了诸多的不便(1)为了使用特定的应用服务,用户会把不同类型的文件存储在不同的网络存储装置上。而由于缺乏一种网络存储装置间的数据同步方法,使得用户的数据文件分散在多个网络存储装置上,不便于统一管理;(2)对于需要重复备份的重要文件,只能采用人工方式操作,繁琐且费时;(3)由于使用多个网络存储装置进行文件存储,用户需要管理多套用户名和密码。 一旦用户长期不使用某个网络存储装置,极易忘记用户名和密码,因而将面临文件数据无法访问的危险,这种情况也屡见不鲜。

发明内容
本发明要解决的技术问题是提供一种在多个网络存储装置之间进行文件数据同步的方法。通过这种方法,可以自动的将网络存储装置上的数据文件方便、快捷的同步到用户指定的网络存储装置上,以满足用户需求。为此,本发明还提供一种多个网络存储装置的数据同步系统。为解决上述技术问题,本发明提供一种多个网络存储装置的数据同步系统,包括 文件操作单元、存储单元和数据同步单元;该存储单元由用户使用的多个网络存储装置组成;
该文件操作单元用于对任意一个网络存储装置进行文件操作,并将该文件操作的数据流传输到该网络存储装置上;该数据同步单元用于把该网络存储装置上发生的文件操作同时作用到其他网络存储装置上,实现多个网络存储装置之间的数据同步。所述文件操作单元通过网络存储装置开放的应用程序编程接口来完成数据通讯。所述网络存储装置是指网络存储服务,通常包括相册网站、在线笔记网站、在线文档存储网站、网络硬盘服务等。所述数据同步单元包括比较模块和同步模块;该比较模块用于将本次用户对任意一个网络存储装置进行文件操作的数据文件与上次多个网络存储装置数据同步操作后形成的基准文件进行比较(可以采用对文件自增的版本号、时间戳、文件的MD5 (Message Digest Algorithm version 5,信息摘要算法第五版)或SHAl (Secure Hash Algorithm,安全哈希算法)哈希值等进行比较的方法),如果不同,则通过同步模块将文件内容的变化同步到用户指定的若干个网络存储装置或全部的网络存储装置上。所述文件操作单元需要获得所述多个网络存储装置的授权,该多个网络存储装置的授权指第三方通过使用信任证书或用户授权的方式来访问资源,而无需使用用户名和密码的传统认证模型,可以采用OAUTH、OpenID或信任证书等来实现授权访问。此外,本发明还提供一种多个网络存储装置的数据同步方法,包括如下步骤(1)用户通过文件操作单元对任意一个网络存储装置进行文件操作;(2)通过数据同步单元把该网络存储装置上发生的文件操作同时作用到其他网络存储装置上,实现多个网络存储装置之间的数据同步。在步骤(1)中所述用户在进行文件操作时,无需同时登录多个网络存储装置,也无需维护多套用户名和密码,只需获得网络存储装置的授权即可,可以采用OAUTH、OpenID 或信任证书等来实现授权访问。在步骤(2)中所述用户在进行文件操作时,网络存储装置将是一种双向的同步方式,即任意一个网络存储装置上发生的文件变化都可以作用到其他网络存储装置上,并且接受来自其他网络存储装置上的文件同步操作。步骤(2)具体为A.多个网络存储装置上的文件在数据同步操作后形成一个基准文件;B.对于已经处于同步状态的多个网络存储装置,如果用户通过文件操作单元对任意一个网络存储装置进行修改、删除或增加文件,或者删除或添加网络存储装置,数据同步单元会将本次用户修改的文件与步骤A形成的基准文件进行比较(可以采用对文件自增的版本号、时间戳、文件的MD5或者SHAl哈希值等进行比较),如果不同,则将文件内容的变化同步到指定的网络存储装置或所有网络存储装置上。步骤B分为以下几种情况1)已经处于同步状态的多个网络存储装置,在其中一个网络存储装置中修改了某个文件在下次同步过程中,这个被修改的文件版本号会和基准文件的版本号进行比较,如果不同,则将文件内容的变化同步到用户指定的若干个网络存储装置或全部的网络存储装置上;2)已经处于同步状态的多个网络存储装置,在其中一个网络存储装置中添加了某个文件在下次同步过程中,由于这个新文件的基准文件是空,会添加此文件到用户指定的若干个网络存储装置或全部的网络存储装置上;3)已经处于同步状态的多个网络存储装置,在其中一个网络存储装置中删除了某个文件在下次同步过程中,被删除的文件对应的基准文件会找不到该文件,此时会在用户指定的若干个网络存储装置或全部的网络存储装置上删除该文件;4)已经处于同步状态的多个网络存储装置,在其中多个网络存储装置中同时修改了某个文件F 如果发现文件F的修改内容都相同,则按步骤1)进行处理;如果发现文件 F存在不同的修改结果,则在下次同步过程中,数据同步单元的比较模块会发现文件F出现了多个与基准文件不同的版本,即存在文件冲突,用户可按需要选择解决冲突的方法;5)已经处于同步状态的多个网络存储装置,在其中若干个网络存储装置中同时添加了某个同名文件F:a)如果添加的各个同名文件F内容均相同,则文件F产生的基准文件也相同,那么将此文件F直接添加到用户指定的网络存储装置或全部网络存储装置中即可;b)如果添加的各个同名文件F内容不相同,则会产生多个与基准文件不同的文件版本,即存在文件冲突,用户可按需要选择解决冲突的方法;6)从已经处于同步状态的多个网络存储装置中,删除某个网络存储装置在下次同步过程中,所有的文件操作将不会同步到被删除的网络存储装置,并且不会处理任何来自该网络存储装置的同步任务;7)向已经处于同步状态的一个或若干个网络存储装置,新添加一个网络存储装置a)对于原来处于同步状态的网络存储装置,在下次同步过程中,相当于加入了新网络存储装置的所有文件,则按照步骤5). a)的方式处理所有新加入的文件即可,若出现同名文件冲突,用户可按需要选择解决冲突的方法;b)对于新添加的网络存储装置,在下次同步过程完成后,保持和其他网络存储装置的文件内容一致。步骤4)、5)、7)中,所述用户可按需要选择解决冲突的方法,可以采用文件合并、 文件覆盖或者修改文件名的方法。本发明的有益效果在于本发明的多个网络存储装置之间的数据同步方法,对于有多个网络存储装置、以及对文件数据可用性有较高要求的用户,会带来以下好处(1)区别于单向的备份和同步,本发明提出的这种同步方式是一种网络存储装置间的双向同步任意一个网络存储装置上发生的文件变化都可以作用到其他网络存储装置上,并且接受来自其他网络存储装置上的文件同步操作,这使得用户能够进行协同文件操作;(2)如果用户仅仅是为了使用特定的应用服务,而将数据文件存储在某一网络存储装置上,则可以使用本发明提出的这种方法将数据文件同步到一个指定的网络存储装置,以便于文件的访问和管理;(3)本方法可以将重要的文件数据自动的在多个网络存储装置之间进行备份,避免了繁琐、费时的手工备份;(4)在某个网络存储装置无法服务的情况下,可以保证文件数据的高可用性;
(5)可以从一定程度上避免由于忘记用户名和密码导致无法访问文件的问题。


图1是本发明一种多个网络存储装置的数据同步系统的结构示意图。
具体实施例方式如图1所示,本发明一种多个网络存储装置的数据同步系统主要由以下单元组成文件操作单元、存储单元和数据同步单元;该存储单元由用户使用的多个网络存储装置组成(如图1中的网络存储装置A、网络存储装置B、网络存储装置C),网络存储装置是指网络存储服务,例如相册网站、在线笔记网站、在线文档存储网站、网络硬盘服务等;该文件操作单元用于对任意一个网络存储装置进行文件操作,并将该文件操作的数据流传输到该网络存储装置上(可以通过网络存储装置开放的API (Application Programming Interface,应用程序编程接口)来完成数据通讯);该数据同步单元用于把该网络存储装置上发生的文件操作同时作用到其他网络存储装置上,实现多个网络存储装置之间的数据同步。该数据同步单元包括比较模块和同步模块;该比较模块用于将本次用户对任意一个网络存储装置进行文件操作的数据文件与上次多个网络存储装置数据同步操作后形成的基准文件进行比较,如果不同,则通过同步模块将文件内容的变化同步到用户指定的若干个网络存储装置或全部的网络存储装置上。所述文件操作单元需要获得多个网络存储装置的授权,该多个网络存储装置的授权指第三方通过使用信任证书或用户授权的方式来访问资源,而无需使用用户名和密码的传统认证模型。即用户在进行文件操作时,无需同时登录多个网络存储装置,也无需维护多套用户名和密码,只需获得网络存储装置的授权即可,如 OAUTH授权、OpenID、信任证书等。该授权协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是该授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此该授权是安全的。因此,本发明可以从一定程度上避免由于忘记用户名和密码导致无法访问文件的问题。本发明还提供一种多个网络存储装置的数据同步方法,该方法主要包括如下步骤(1)用户通过文件操作单元对任意一台网络存储装置进行文件操作;用户在进行文件操作时,无需同时登录多个网络存储装置,也无需维护多套用户名和密码,只需获得网络存储装置的授权即可,例如OAUTH授权、OpenID、信任证书等;(2)通过数据同步单元把该网络存储装置上发生的文件操作同时作用到其他网络存储装置上,实现多个网络存储装置之间的数据同步。步骤(2)具体为A.多个网络存储装置上的文件在数据同步操作后形成一个基准文件;B.对于已经处于同步状态的多个网络存储装置,如果用户通过文件操作单元对任意一个网络存储装置进行修改、删除或增加文件,或者删除或添加网络存储装置,数据同步单元会将本次用户修改的文件与步骤A形成的基准文件进行比较,如果不同,则将文件内容的变化同步到指定的网络存储装置或所有网络存储装置上。在描述多网络存储装置间的数据同步策略的具体实施方式
之前,首先需要定义基准文件的概念。某个文件的基准文件是指该文件经过多个网络存储装置的数据同步操作后,形成的一个一致的基准文件。在数据同步后,如果文件数据没有被改动,那么该文件在所有网络存储装置中的所有版本都会和基准文件保持一致;如果数据同步单元的比较模块经过比较后发现某个网络存储装置中文件的版本和基准文件不同,则认为该文件在数据同步之后又被用户修改过。其中,同一文件的版本比较可以有很多种实现方案,例如使用以下值来记录文件的版本号进行比较使用文件自增的一个版本号、使用文件的一个时间戳、或者是文件的 MD5 (Message Digest Algorithm version 5,信息摘要算法第五版)或 SHAl Gecure Hash Algorithm,安全哈希算法)哈希值。用户在进行文件操作时,网络存储装置将是一种双向的同步方式,即任意一个网络存储装置上发生的文件变化都可以作用到其他网络存储装置上,并且接受来自其他网络存储装置上的文件同步操作。本发明中,在多个网络存储装置之间,进行数据同步的具体实施会有以下几种形式1.已经处于同步状态的多个网络存储装置,在其中一个网络存储装置中修改了某个文件在下次同步过程中,这个被修改的文件版本号将会和基准文件的版本号进行比较,如果不同,就认为文件发生了变化,那么会立即将文件内容的变化同步到用户指定的网络存储装置或所有网络存储装置上;2.已经处于同步状态的多个网络存储装置,在其中一个网络存储装置中添加了某个文件在下次同步过程中,由于这个新文件的基准文件是空,因此将会立即添加此文件到用户指定的网络存储装置或所有网络存储装置上;3.已经处于同步状态的多个网络存储装置,在其中一个或若干个网络存储装置中删除了某个文件在下次同步过程中,被删除的文件对应的基准文件会找不到该文件,此时将会立即在用户指定的网络存储装置或所有其他网络存储装置上删除该文件。4.已经处于同步状态的多个网络存储装置,在其中多个网络存储装置中同时修改了某个文件F:如果发现文件F的修改的内容都相同,则按上述第1种方法进行处理;如果发现文件F存在不同的修改结果,则在下次同步过程中,数据同步单元的比较模块会发现文件F出现多个不同的版本,并且均和基准文件的版本不同,即存在了文件冲突。用户可以按需要选择解决冲突的方法,比如文件合并、文件覆盖或者修改文件名;5.已经处于同步状态的多个网络存储装置,在其中若干个网络存储装置中同时添加了某个同名文件F:(1)如果添加的各个同名文件F内容均相同,则文件F产生的基准文件也相同,那么将此文件F直接添加到用户指定的网络存储装置或所有其他网络存储装置中即可;(2)如果添加的各个同名文件F内容不相同,则会产生多个与基准文件不同的文件版本,即存在了文件冲突。用户可以按需要选择解决冲突的方法,比如文件合并、文件覆盖或者修改文件名;
6.从已经处于同步状态的多个网络存储装置中,删除某个网络存储装置在下次同步过程中,所有的文件操作将不会同步到被删除的网络存储装置,并且不会处理任何来自该网络存储装置的同步任务;7.向已经处于同步状态的若干个(包括一个)网络存储装置,新添加一个网络存储装置(1)对于原来的若干个网络存储装置,在下次同步过程中,相当于加入了新网络存储装置的所有文件,则按照5. (1)的方式处理所有新加入的文件即可,若出现同名文件冲突,用户可以按需要选择解决冲突的方法,比如文件合并、文件覆盖或者修改文件名;(2)对于新加入的网络存储装置,在下次同步过程完成后,保持和其他网络存储装置的文件内容一致。
权利要求
1.一种多个网络存储装置的数据同步系统,其特征在于,包括文件操作单元、存储单元和数据同步单元;该存储单元由用户使用的多个网络存储装置组成;该文件操作单元用于对任意一个网络存储装置进行文件操作,并将该文件操作的数据流传输到该网络存储装置上;该数据同步单元用于把该网络存储装置上发生的文件操作同时作用到其他网络存储装置上,实现多个网络存储装置之间的数据同步。
2.如权利要求1所述的多个网络存储装置的数据同步系统,其特征在于,所述文件操作单元通过网络存储装置开放的应用程序编程接口来完成数据通讯。
3.如权利要求1所述的多个网络存储装置的数据同步系统,其特征在于,所述网络存储装置是指网络存储服务,包括相册网站、在线笔记网站、在线文档存储网站和网络硬盘服务。
4.如权利要求1所述的多个网络存储装置的数据同步系统,其特征在于,所述数据同步单元包括比较模块和同步模块;该比较模块用于将本次用户对任意一个网络存储装置进行文件操作的数据文件与上次多个网络存储装置数据同步操作后形成的基准文件进行比较,如果不同,则通过同步模块将文件内容的变化同步到用户指定的若干个网络存储装置或全部的网络存储装置上。
5.如权利要求4所述的多个网络存储装置的数据同步系统,其特征在于,所述比较模块用于将本次用户对任意一个网络存储装置进行文件操作的数据文件与上次多个网络存储装置数据同步操作后形成的基准文件进行比较,采用对文件自增的版本号、时间戳、文件的MD5或者SHAl哈希值进行比较的方法。
6.如权利要求1所述的多个网络存储装置的数据同步系统,其特征在于,所述文件操作单元需要获得所述多个网络存储装置的授权,该多个网络存储装置的授权指第三方通过使用信任证书或用户授权的方式来访问资源,而无需使用用户名和密码的传统认证模型。
7.如权利要求6所述的多个网络存储装置的数据同步系统,其特征在于,所述获得多个网络存储装置的授权采用OAUTH、OpenID或信任证书来实现授权访问。
8.—种多个网络存储装置的数据同步方法,其特征在于,包括如下步骤(1)用户通过文件操作单元对任意一个网络存储装置进行文件操作;(2)通过数据同步单元把该网络存储装置上发生的文件操作同时作用到其他网络存储装置上,实现多个网络存储装置之间的数据同步。
9.如权利要求8所述的多个网络存储装置的数据同步方法,其特征在于,在步骤(1)中所述用户在进行文件操作时,无需同时登录多个网络存储装置,也无需维护多套用户名和密码,只需获得网络存储装置的授权即可。
10.如权利要求9所述的多个网络存储装置的数据同步方法,其特征在于,所述获得网络存储装置的授权采用OAUTH、OpenID或信任证书来实现授权访问。
11.如权利要求8所述的多个网络存储装置的数据同步系统,其特征在于,在步骤(2) 中所述用户在进行文件操作时,网络存储装置将是一种双向的同步方式,即任意一个网络存储装置上发生的文件变化都可以作用到其他网络存储装置上,并且接受来自其他网络存储装置上的文件同步操作。
12.如权利要求8所述的多个网络存储装置的数据同步方法,其特征在于,步骤(2)具体为A.多个网络存储装置上的文件在数据同步操作后形成一个基准文件;B.对于已经处于同步状态的多个网络存储装置,如果用户通过文件操作单元对任意一个网络存储装置进行修改、删除或增加文件,或者删除或添加网络存储装置,数据同步单元会将本次用户修改的文件与步骤A形成的基准文件进行比较,如果不同,则将文件内容的变化同步到指定的网络存储装置或所有网络存储装置上。
13.如权利要求12所述的多个网络存储装置的数据同步方法,其特征在于,步骤B中, 所述数据同步单元会将本次用户修改的文件与步骤A形成的基准文件进行比较,采用对文件自增的版本号、时间戳、文件的MD5或者SHAl哈希值进行比较。
14.如权利要求12所述的多个网络存储装置的数据同步方法,其特征在于,步骤B分为以下几种情况1)已经处于同步状态的多个网络存储装置,在其中一个网络存储装置中修改了某个文件在下次同步过程中,这个被修改的文件版本号会和基准文件的版本号进行比较,如果不同,则将文件内容的变化同步到用户指定的若干个网络存储装置或全部的网络存储装置上;2)已经处于同步状态的多个网络存储装置,在其中一个网络存储装置中添加了某个文件在下次同步过程中,由于这个新文件的基准文件是空,会添加此文件到用户指定的若干个网络存储装置或全部的网络存储装置上;3)已经处于同步状态的多个网络存储装置,在其中一个网络存储装置中删除了某个文件在下次同步过程中,被删除的文件对应的基准文件会找不到该文件,此时会在用户指定的若干个网络存储装置或全部的网络存储装置上删除该文件;4)已经处于同步状态的多个网络存储装置,在其中多个网络存储装置中同时修改了某个文件F 如果发现文件F的修改内容都相同,则按步骤1)进行处理;如果发现文件F存在不同的修改结果,则在下次同步过程中,数据同步单元的比较模块会发现文件F出现了多个与基准文件不同的版本,即存在文件冲突,用户可按需要选择解决冲突的方法;5)已经处于同步状态的多个网络存储装置,在其中若干个网络存储装置中同时添加了某个同名文件F:a)如果添加的各个同名文件F内容均相同,则文件F产生的基准文件也相同,那么将此文件F直接添加到用户指定的网络存储装置或全部网络存储装置中即可;b)如果添加的各个同名文件F内容不相同,则会产生多个与基准文件不同的文件版本,即存在文件冲突,用户可按需要选择解决冲突的方法;6)从已经处于同步状态的多个网络存储装置中,删除某个网络存储装置在下次同步过程中,所有的文件操作将不会同步到被删除的网络存储装置,并且不会处理任何来自该网络存储装置的同步任务;7)向已经处于同步状态的一个或若干个网络存储装置,新添加一个网络存储装置a)对于原来处于同步状态的网络存储装置,在下次同步过程中,相当于加入了新网络存储装置的所有文件,则按照步骤5). a)的方式处理所有新加入的文件即可,若出现同名文件冲突,用户可按需要选择解决冲突的方法;b)对于新添加的网络存储装置,在下次同步过程完成后,保持和其他网络存储装置的文件内容一致。
15.如权利要求14所述的多个网络存储装置的数据同步方法,其特征在于,步骤4)、 5)、7)中,所述用户可按需要选择解决冲突的方法,采用文件合并、文件覆盖或者修改文件名的方法。
全文摘要
本发明公开了一种多个网络存储装置的数据同步系统,包括文件操作单元、存储单元和数据同步单元;存储单元由用户使用的多个网络存储装置组成,网络存储装置是指网络存储服务,如相册网站、网络硬盘服务等;文件操作单元用于对任意一个网络存储装置进行文件操作,并将该文件操作的数据流传输到该网络存储装置上;数据同步单元用于把该网络存储装置上发生的文件操作同时作用到其他网络存储装置上,实现多个网络存储装置之间的数据同步。此外,本发明还公开了多个网络存储装置的数据同步方法。本发明可自动的将用户对某个网络存储装置的文件操作方便、快捷的同步到其他若干个指定的网络存储装置上,以满足用户对多个网络存储装置的数据同步需求。
文档编号H04L29/08GK102457549SQ201010523250
公开日2012年5月16日 申请日期2010年10月28日 优先权日2010年10月28日
发明者许式伟 申请人:盛乐信息技术(上海)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1