CN108900621A - 一种基于雾计算模式的差异性云同步方法 - Google Patents
一种基于雾计算模式的差异性云同步方法 Download PDFInfo
- Publication number
- CN108900621A CN108900621A CN201810749961.0A CN201810749961A CN108900621A CN 108900621 A CN108900621 A CN 108900621A CN 201810749961 A CN201810749961 A CN 201810749961A CN 108900621 A CN108900621 A CN 108900621A
- Authority
- CN
- China
- Prior art keywords
- mist
- cloud
- server
- data
- otherness
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种基于雾计算模式的差异性云同步方法,在用户层和云服务层之间添加雾服务层以通过差异性同步法处理每次用户端的同步请求,所述用户层包括若干用户端,雾服务层包括雾服务器,云服务层包括云服务器;所述差异性同步法包括:用户端上传每次修改的差异数据至雾服务器存储,雾服务器判断所存储的数据是否达到预设上限,如果未达到,雾服务器保存每次差异数据并更新数据;如果达到,雾服务器将最终的差异数据上传至云服务器,云服务器基于所述最终的差异数据重构云端文件,使得云服务器端文件和用户端的最新文件保持一致。本发明方法能够优化差异性同步的存储以及运行效率,提升云服务质量。
Description
技术领域
本发明属于云计算领域中的云同步技术,具体涉及一种基于雾计算模式的差异性云同步方法。
背景技术
云存储作为云计算的延伸拓展的新概念,是当前存储方式的一种发展趋势,随着网络带宽的不断发展,云存储在将来的应用将更为普遍。云存储为用户提供多样化的服务,其中最具代表性的就是云同步技术。具体一点,云同步技术即是针对用户存储在云端的数据和用户本地的数据,使得用户无论何时何地对本地数据做出任何改动,云端数据也可以及时更新。云同步中最关键的一点在于最小化云同步时的数据传输量,因为大部分用户尤其是移动用户,他们往往不希望每次同步都会造成大量的数据传输。在传统云同步方案中,为最小化数据传输,通常采用差异性同步或者增量同步的方式,具体来说就是在同步时只传输用户变动的部分,从而减少数据传输量。在最小化数据传输方面,传统差异性同步或者增量同步在面对频繁的同一位置的改动时,无法避免重复的修改所造成的冗余数据产生。另一方面,每一次小的改动都向云服务器发送请求会对云服务器造成很大压力。
雾计算模式是云计算模式的延伸,在2011年由思科(Cisco)提出。与云计算相似,虽然雾计算也为末端网络节点提供计算、数据存储服务,但其主要特点是接近网络末端、具有一定的本地计算能力和支持移动性。形象地说,云在高高的天空飘浮,遥不可及;而雾却贴近地面,近在咫尺。雾计算是介于云计算和个人计算机之间的中间态,可以看作是一种本地云(Local Cloud)。雾计算相较于底层也拥有更强的数据处理和存储能力,能够协助云和底层进行一些数据存储和处理,减轻了数据处理和传输的压力。
发明内容
本发明的目的在于克服传统云同步中,重复多次局部修改造成的数据冗余问题以及频繁修改对云服务器请求过多的问题,提供一种基于雾计算模式的差异性云同步方法,在用户层和云服务层之间加入雾服务层,对于用户端的同步请求,雾服务器进行预处理,保证最终和云端同步时最小化数据传输并减少对云服务器的请求次数,优化差异性同步的存储以及运行效率,提升云服务质量。
为了实现上述目的,本发明的技术方案是:
一种基于雾计算模式的差异性云同步方法,在用户层和云服务层之间添加雾服务层以通过差异性同步法处理每次用户端的同步请求,所述用户层包括若干用户端,雾服务层包括雾服务器,云服务层包括云服务器;所述差异性同步法包括:用户端上传每次修改的差异数据至雾服务器存储,雾服务器判断所存储的数据是否达到预设上限,如果未达到,雾服务器保存每次差异数据并更新数据;如果达到,雾服务器将最终的差异数据上传至云服务器,云服务器基于所述最终的差异数据重构云端文件,使得云服务器端文件和用户端的最新文件保持一致。当存在多次修改时,最终的差异数据为各次修改的差异数据的合并或/和抵消组合,即文件被修改后的最终数据相对于原始数据的差异数据;如果只存在一次修改,则最终的差异数据为当次修改的差异数据。
优选的,所述差异性同步法具体包括:
步骤1,用户端接收对指定文件的修改请求后进行文件修改,并从雾服务器中获取表信息,并以此进行滑动窗口检测,对照表中信息找出差异数据以及对应的位置,然后将差异数据上传至雾服务器;
步骤2,雾服务器判断所存储的数据是否达到预设上限,如果未达到,执行步骤3,如果达到,执行步骤4;
步骤3,雾服务器根据用户端最新上传的差异数据进行表项更新但不发送至云服务器,并等待下一次差异数据的到来;
步骤4,雾服务器将最终的差异数据上传至云服务器,并清空雾服务器中的数据,云服务器通过最终的差异数据重构云端文件,使得云端文件和用户端的最新文件保持一致。
优选的,所述步骤1之前还包括:
云服务器端使用滑动窗口以划分块的方式记录用户端指定文件的原始数据,对划分的各块分别进行弱校验码和强校验码计算,并连同各块的数据偏移量记录到指定表中,接着将这张表发送至雾服器中。
优选的,步骤1中,如果指定文件的数据为第一次修改,雾服务器中的表信息为从云服务器端获取的表;如果指定文件的数据不是第一次修改,则所述表为雾服务器进行表项更新后的表。
优选的,如果用户端文件包括若干次修改,则每次使用相同的滑动窗口检测方法。
优选的,所述弱校验码的计算方法包括Adler-32、CRC和滚动校验算法。
优选的,所述强校验码的计算方法包括MD5、MD4和SHA-1检验算法。
优选的,滑动窗口大小为预设的若干字节。
采用上述方案后,本发明的有益效果是:
(1)充分利用雾服务器减少云服务器压力
本发明方法充分利用了雾服务器的数据存储和处理能力,在雾服务器中对用户端上传的同步数据进行缓存,并通过雾端持有数据量判断是否请求云端同步,相比于传统差异性云同步,减少了一定量的云服务请求次数,在云服务器对用户为一对多的情况下,将大大缓解云服务器的压力;
(2)有效减少了云同步中的数据上传量
不同于传统差异性同步每一次修改都会上传差异性数据,本发明方法对于数据同一区域的重复修改,可以大大减少此类操作造成的数据冗余,减少数据上传量,削减云同步的开销;对于云同步用户来说,每一次小的修改都只会产生很小的数据传输量,在当今数据流量收费的背景下,可以减少用户的开销,对于大型云同步***来说也有着十分重大的意义,减少数据传输量意味着可以在有限带宽限制下提升***的总体性能。
以下结合附图及实施例对本发明作进一步详细说明,但本发明的一种基于雾计算模式的差异性云同步方法不局限于实施例。
附图说明
图1为本发明实施例基于雾计算的差异性云同步架构图;
图2为本发明实施例的采用FSYNC(Fog-based Synchronization,基于雾同步)算法进行云同步流程图。
具体实施方式
以下将结合本发明附图,对本发明实施例中的技术方案进行详细描述和讨论。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明一种基于雾计算模式的差异性云同步方法的基本思想是,在用户层和云服务层之间加入雾服务层,对于用户的同步请求,进行预处理,保证最终和云端同步时最小化数据传输并减少对云服务器的请求次数。这里所提到的雾服务层是基于雾计算思想设计的一种介于云和本地之间的中间计算平台,具有介于云和本地之间的计算能力和存储能力。
具体的,如图1所示,本文一种基于雾计算模式的差异性云同步方法,充分利用雾服务器一定的数据存储和处理能力,在用户层和云服务层之间添加雾服务层,用于处理每次用户的同步请求。用户的每一次同步操作,都会对文件做一定量的改动,这些改动可能很小,因此采用差异性同步的方法,如图1中左边所示,正方形代表未经改动的文件,圆形代表用户新增的部分。本发明中,新增部分数据将上传至雾服务器,由雾服务器暂时保存,直到雾服务器中存储的数据量达到预先设置的上限为止。
本实施例中,如图2所示,假设用户端有一字符串“123abcdef”,用户通过两次操作,参见图2(a),第一次操作将字符串改为“123ABCdefgh”,参见图2(b),紧接着再次更改字符串为“123ABCdefghi符。本发明提出一种FSYNC(Fog-based Synchronization,基于雾同步)算法,首先要用滑动窗口来记录原始文件的信息,例中我们所采用的窗口大小为3字节,这样一来原始字符串被划分为三块。对这三块数据进行强弱校验码计算(所述弱校验码的计算方法包括Adler-32校验算法、CRC校验算法和滚动校验等;所述强校验码的计算方法包括MD5检验算法、MD4校验算法和SHA-1检验算法等),并连同数据偏移量记录到Checksum表中。接着将这张表传到雾服务器中。在用户第一次修改本地文件并进行同步操作时,用户端从雾服务器中获取表信息,并以此进行滑动窗口检测,对照表中信息找出差异数据以及对应的位置。例中“ABC”和“gh”被检测出来并上传至雾服务器。这里假设雾服务器数据量并未达到阈值,因此这次操作不进行云端同步但雾端需要根据刚刚上传的信息更新表项。紧接着用户进行了第二次修改并再次请求云同步。用户端再次从雾服务器中获取表信息,进行与上一次同样的滑动窗口检测,这次被检测出来的是“ghi”。将该数据块传至雾服务器之后,雾服务器存储数据量达到上限,因此需要进行云端总更新。雾服务器将差异信息“ABC”,“ghi”以及它们所对应的相关信息传至云端,并清空雾服务器中的数据。在云端,云服务器通过差异信息重构云端文件,使得云端文件和用户端上的最新文件保持一致。至此完成一次云同步。在此次同步中,对比传统云同步方案,本发明的FSYNC算法的不同之处在于两点。一是节省了向云端请求的次数,减缓云服务器压力。按照传统方法,这两次修改对应两次云端请求,而在FSYNC中只请求了一次,也就是第二次总体更新的时候。其次FSYNC进一步减少了数据上传量。假设我们采取传统同步方法,这两次需要上传的数据为“ABC”,“gh”,“ghi”,后两次为对同一位置的重复修改,而采用FSYNC方法的话,最终上传的数据为“ABC”,“ghi”,可以发现,采用我们的方案可以节省相当可观的数据传输量,具体算法流程如下表1所示。
表1
以上仅为本发明实例中一个较佳的实施方案。但是,本发明并不限于上述实施方案,凡按本发明所做的任何均等变化和修饰,所产生的功能作用未超出本方案的范围时,均属于本发明的保护范围。
Claims (8)
1.一种基于雾计算模式的差异性云同步方法,其特征在于,在用户层和云服务层之间添加雾服务层以通过差异性同步法处理每次用户端的同步请求,所述用户层包括若干用户端,雾服务层包括雾服务器,云服务层包括云服务器;所述差异性同步法包括:用户端上传每次修改的差异数据至雾服务器存储,雾服务器判断所存储的数据是否达到预设上限,如果未达到,雾服务器保存每次差异数据并更新数据;如果达到,雾服务器将最终的差异数据上传至云服务器,云服务器基于所述最终的差异数据重构云端文件,使得云服务器端文件和用户端的最新文件保持一致。
2.根据权利要求1所述的基于雾计算模式的差异性云同步方法,其特征在于,所述差异性同步法具体包括:
步骤1,用户端接收对指定文件的修改请求后进行文件修改,并从雾服务器中获取表信息,并以此进行滑动窗口检测,对照表中信息找出差异数据以及对应的位置,然后将差异数据上传至雾服务器;
步骤2,雾服务器判断所存储的数据是否达到预设上限,如果未达到,执行步骤3,如果达到,执行步骤4;
步骤3,雾服务器根据用户端最新上传的差异数据进行表项更新但不发送至云服务器,并等待下一次差异数据的到来;
步骤4,雾服务器将最终的差异数据上传至云服务器,并清空雾服务器中的数据,云服务器通过最终的差异数据重构云端文件,使得云端文件和用户端的最新文件保持一致。
3.根据权利要求2所述的基于雾计算模式的差异性云同步方法,其特征在于,所述步骤1之前还包括:
云服务器端使用滑动窗口以划分块的方式记录用户端指定文件的原始数据,对划分的各块分别进行弱校验码和强校验码计算,并连同各块的数据偏移量记录到指定表中,接着将这张表发送至雾服器中。
4.根据权利要求2所述的基于雾计算模式的差异性云同步方法,其特征在于,步骤1中,如果指定文件的数据为第一次修改,雾服务器中的表信息为从云服务器端获取的表;如果指定文件的数据不是第一次修改,则所述表为雾服务器进行表项更新后的表。
5.根据权利要求2所述的基于雾计算模式的差异性云同步方法,其特征在于,如果用户端文件包括若干次修改,则每次使用相同的滑动窗口检测方法。
6.根据权利要求2所述的基于雾计算模式的差异性云同步方法,其特征在于,所述弱校验码的计算方法包括Adler-32、CRC和滚动校验算法。
7.根据权利要求2所述的基于雾计算模式的差异性云同步方法,其特征在于,所述强校验码的计算方法包括MD5、MD4和SHA-1检验算法。
8.根据权利要求2所述的基于雾计算模式的差异性云同步方法,其特征在于,滑动窗口大小为预设的若干字节。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810749961.0A CN108900621B (zh) | 2018-07-10 | 2018-07-10 | 一种基于雾计算模式的差异性云同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810749961.0A CN108900621B (zh) | 2018-07-10 | 2018-07-10 | 一种基于雾计算模式的差异性云同步方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108900621A true CN108900621A (zh) | 2018-11-27 |
CN108900621B CN108900621B (zh) | 2021-08-31 |
Family
ID=64349423
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810749961.0A Active CN108900621B (zh) | 2018-07-10 | 2018-07-10 | 一种基于雾计算模式的差异性云同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108900621B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109936562A (zh) * | 2019-01-09 | 2019-06-25 | 南京邮电大学 | 一种面向雾计算的可扩展访问控制方法 |
CN111416873A (zh) * | 2020-03-31 | 2020-07-14 | 广东美的制冷设备有限公司 | 用电设备的数据备份方法、装置、空调器和存储介质 |
CN112163734A (zh) * | 2020-08-28 | 2021-01-01 | 中国南方电网有限责任公司 | 基于云平台整定计算资源动态调度方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104023085A (zh) * | 2014-06-25 | 2014-09-03 | 武汉大学 | 一种基于增量同步的安全云存储*** |
CN104408048A (zh) * | 2014-10-27 | 2015-03-11 | 清华大学 | 一种缓冲式云存储数据同步的方法和装置 |
CN105740418A (zh) * | 2016-01-29 | 2016-07-06 | 杭州亿方云网络科技有限公司 | 一种基于文件监控和消息推送的实时同步*** |
-
2018
- 2018-07-10 CN CN201810749961.0A patent/CN108900621B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104023085A (zh) * | 2014-06-25 | 2014-09-03 | 武汉大学 | 一种基于增量同步的安全云存储*** |
CN104408048A (zh) * | 2014-10-27 | 2015-03-11 | 清华大学 | 一种缓冲式云存储数据同步的方法和装置 |
CN105740418A (zh) * | 2016-01-29 | 2016-07-06 | 杭州亿方云网络科技有限公司 | 一种基于文件监控和消息推送的实时同步*** |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109936562A (zh) * | 2019-01-09 | 2019-06-25 | 南京邮电大学 | 一种面向雾计算的可扩展访问控制方法 |
CN109936562B (zh) * | 2019-01-09 | 2021-07-27 | 南京邮电大学 | 一种面向雾计算的可扩展访问控制方法 |
CN111416873A (zh) * | 2020-03-31 | 2020-07-14 | 广东美的制冷设备有限公司 | 用电设备的数据备份方法、装置、空调器和存储介质 |
CN111416873B (zh) * | 2020-03-31 | 2022-07-19 | 广东美的制冷设备有限公司 | 用电设备的数据备份方法、装置、空调器和存储介质 |
CN112163734A (zh) * | 2020-08-28 | 2021-01-01 | 中国南方电网有限责任公司 | 基于云平台整定计算资源动态调度方法及装置 |
CN112163734B (zh) * | 2020-08-28 | 2024-02-20 | 中国南方电网有限责任公司 | 基于云平台整定计算资源动态调度方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108900621B (zh) | 2021-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103095843B (zh) | 一种基于版本矢量的数据备份方法及客户端 | |
CN103118104B (zh) | 一种基于版本矢量的数据还原方法及服务器 | |
CN104932841B (zh) | 一种云存储***中节约型重复数据删除方法 | |
CN106250270B (zh) | 一种云计算平台下的数据备份方法 | |
CN102684827B (zh) | 数据处理方法及数据处理设备 | |
CN101387976B (zh) | 一种基于数据差异的逻辑卷快速同步方法 | |
CN103152398B (zh) | 一种多终端文件间的文件同步方法及*** | |
CN103959256B (zh) | 基于指纹的数据重复删除 | |
US7636767B2 (en) | Method and apparatus for reducing network traffic over low bandwidth links | |
CN108900621A (zh) | 一种基于雾计算模式的差异性云同步方法 | |
CN102571991B (zh) | 基于多级映射的大规模多副本分布式存储***的应用方法 | |
CN107133251B (zh) | 用于同步异构数据库之间的查询结果的方法、服务器和计算机可读介质 | |
CN101009516A (zh) | 一种进行数据同步的方法及*** | |
CN102065098A (zh) | 网络节点之间数据同步的方法和*** | |
CN109739810A (zh) | 文件同步方法、服务器、客户端及具有存储功能的装置 | |
CN104901983B (zh) | 一种信息同步方法、装置及*** | |
CN107196998B (zh) | 基于数据去重的移动Web请求处理方法、设备及*** | |
CN109684284A (zh) | 基于边缘计算的滑动分块重复数据删除方法 | |
US10339124B2 (en) | Data fingerprint strengthening | |
CN104580522A (zh) | 客户端与服务器端之间数据同步的方法及*** | |
US20160036719A1 (en) | Dynamic scaling of redundancy elimination middleboxes | |
CN103198100B (zh) | 一种多设备间文件同步的重命名处理方法及*** | |
CN102694863B (zh) | 基于负载调整和***容错的分布式存储***的实现方法 | |
CN110941514A (zh) | 一种数据备份方法、恢复方法、计算机设备和存储介质 | |
CN108959278B (zh) | 一种数据同步方法、装置、电子设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |