CN104361069A - 一种集成本地文件系统的云存储服务方法 - Google Patents

一种集成本地文件系统的云存储服务方法 Download PDF

Info

Publication number
CN104361069A
CN104361069A CN201410625868.0A CN201410625868A CN104361069A CN 104361069 A CN104361069 A CN 104361069A CN 201410625868 A CN201410625868 A CN 201410625868A CN 104361069 A CN104361069 A CN 104361069A
Authority
CN
China
Prior art keywords
data
cloud storage
test value
view
file
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.)
Pending
Application number
CN201410625868.0A
Other languages
English (en)
Inventor
肖翱
施魏松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN201410625868.0A priority Critical patent/CN104361069A/zh
Publication of CN104361069A publication Critical patent/CN104361069A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及云存储技术领域,尤其是一种集成本地文件系统的云存储服务方法。本发明的云存储服务包括三个模块:文件校验模块、视图管理器和云存储辅助器;文件校验服务用于对文件进行校验值管理;视图管理器维护两个视图:活动视图、冻结视图,主要用于管理本地文件的状态变化情况;云存储辅助器用于处理本地文件系统和远程云存储平台之间的通信服务,维护文件同步时的同步视图。本发明能有效的防止由于本地操作系统的数据损坏、硬件崩溃等情况造成的数据丢失从而影响到云存储服务端数据的不一致性问题以及由此引起的同一个云存储平台不同的客户端间不一致性扩散问题;可广泛应用于各种云存储平台。

Description

一种集成本地文件系统的云存储服务方法
技术领域
本发明涉及云存储技术领域,尤其是一种集成本地文件系统的云存储服务方法。
背景技术
在云计算日益普及的今天,大家张口闭口谈的几乎都是跟“云”相关的事情。在云计算的各种应用中,云存储是最被广泛使用的。可以说信息时代,基本上每一个人都在使用云存储技术。显式的国内外著名的云存储平台如dropbox、icloud、亚马逊S3、google drive、百度云、360云盘等等,隐式的各种云存储应用如云通讯录、云备份、云笔记、云音乐等,无不跟云存储有关。
由于终端设备越来越多,不同的终端设备采用的技术体系不同,这极大地增加了云端存储技术的复杂性。如果某个云存储平台的一个终端应用上出现了问题,那么这个问题可能会通过云存储平台扩散到所有其他终端应用里,从而造成数据紊乱;对云存储平台里数据的安全性、一致性和稳定性带来了极大地隐患。
发明内容
本发明解决的技术问题在于提供一种集成了本地文件系统的云存储服务方法,可以防止因数据发生错误或者出现不一致性问题时由于云存储的特性造成问题的扩散最终影响到云存储平台的一致性和稳定性的情况。
本发明解决上述技术问题的技术方案是:
所述的方法由文件校验模块、视图管理器和云存储辅助器构成的系统完成;
所述的文件校验模块是基于目前主流的文件系统的一个模块,主要用于在文件块写入或者从磁盘上读取时进行CRC32C校验;
所述的视图管理器是一个轻型的文件系统内核模块,用于在本地文件系统上创建视图,主要维护活动视图和冻结视图两个文件视图;
所述的云存储辅助器是指本地文件系统与远程云存储平台之间的数据交互接口,维护一个或者多个同步视图;
所述的活动视图是指从上一次开始与云存储平台同步的时间点到当前时间点这个时间范围内本地文件或文件夹状态发生的变化;
所述的冻结视图是指视图管理器对当前活动时间点位置活动视图的一个快照,快照内容是静态的、后续不会发生变化;通过对活动视图在不同时间点的快照递增式生成;
所述的同步视图是指将当前冻结视图里的文件和远程云存储平台进行同步时产生的一个文件状态和行为描述,此时冻结视图被销毁;
每一次同步时产生的同步视图都存在于云存储辅助器中,当本地文件系统出现不一致性问题时,从对应时间点的同步视图中获取待恢复的文件列表。
所述的文件校验模块基于目前主流的EXT4、NTFS、HFS+等文件系统。
所述的视图管理器同一时间点只会存在一个活动视图和一个冻结视图。
所述的文件校验模块写入文件到磁盘时在物理数据块前添加一个校验区域,填充该数据块的校验值;从磁盘中读取文件块时也需要根据预先填充的校验值和实际的数据进行校验值匹配,以防磁盘发生损坏时破坏数据的一致性;
当本地文件读出的数据与校验值不一致时,表示该数据已损坏,此时文件校验模块将会直接向云存储辅助器发送请求,通过云存储辅助器获取在云存储平台上该数据最近最新的一个版本;此种情况下的数据不会提交到云存储平台或者从云存储平台更新到本地,以防止这种不一致性扩散到云存储平台其他应用端,造成数据的混乱。
所述的方法中数据读写的处理方式是:
读取数据时,文件校验模块根据对应数据块的实时生成的实际校验值和填充校验值进行比较,若一致则说明数据完好,操作继续;不一致则说明数据出现错误,此时向云存储辅助器发送请求以从云存储平台获取该数据的最新有效数据副本到本地;
写入数据时,如果是本地新增数据,那么针对该数据生成校验值,并将该校验值写入到物理数据块的最前端的校验区域;如果是从云端更新下来的数据,那么以该数据生成的校验值和附随数据块的预填充校验值进行比较,若一致则写入本地磁盘,否则向云存储辅助器发送一条请求,再次从远程云存储平台获取该数据的最新有效数据副本到本地,再次进行本过程,直到数据完好为止。
本发明通过三个模块加上三种视图的方式,既保证了正常模式下数据同步的正确性,又保证了本地数据的强一致性,同时还防止由于数据的错误或者本地文件系统损坏带来的错误数据扩散问题,从而保证了云存储平台的数据一致性和稳定性。
附图说明
下面结合附图对本发明进一步说明:
图1是本发明的框架结构图;
图2是本发明的数据校验流程图;
图3是本发明的三种视图之间的转换关系图。
具体实施方式
如附图1所示,本发明包括三个模块和三种视图,分别是文件校验模块、视图管理器、云存储辅助器;其中视图管理器维护两个视图:活动视图、冻结视图,云存储辅助器维护同步视图;
文件校验模块对所有读写操作的数据进行正确性校验,当实际校验值和填充校验值一致时读写操作才成功,否则执行相应地纠错操作;
视图管理器在同一时间点中只存在一个活动视图和一个冻结视图,冻结视图是由活动视图定时的快照递增生成的;
云存储辅助器负责本地文件系统和远程云存储之间的数据交互问题,同时存在着多个同步视图;
本地文件系统出现损坏且不能通过其自身进行恢复时,云存储模块就需要根据相应时间点的同步视图从云存储平台恢复数据到本地。
如附图2所示,本发明中针对每次文件操作,文件校验模块需进行如下步骤以保持数据的一致性:
读取数据时,文件校验模块根据对应数据块的实时生成的实际校验值和填充校验值进行比较,若一致则说明数据完好,操作继续;不一致则说明数据出现错误,此时向云存储辅助器发送请求以从云存储平台获取该数据的最新有效数据副本到本地;
写入数据时,如果是本地新增数据,那么针对该数据生成校验值,并将该校验值写入到物理数据块的最前端的校验区域;如果是从云端更新下来的数据,那么以该数据生成的校验值和附随数据块的预填充校验值进行比较,若一致则写入本地磁盘,否则将先云存储辅助器发送一条请求,再次从远程云存储平台获取该数据的最新有效数据副本到本地,再次进行本过程,直到数据完好为止。
如附图3所示,本发明中三种视图的转换关系遵循以下的步骤:
活动视图指到某个时间点为止的一个时间范围内文件或者文件夹发生变化的日志记录情况;
冻结视图是由活动视图定时的快照生成的,是某个时间点活动视图内所有内容的一个记录;冻结视图是递增式生成的,在时间上冻结视图生成的时间点是一个新的活动视图的生成时间;
活动视图和冻结视图是一对一的关系存在于视图管理器中;
同步视图是由云存储辅助管理器根据冻结视图里的文件变化状况与远程云存储里的数据进行比较后生成的文件操作记录情况,由于同步视图是右某个时间点的冻结视图提交而生成,因此云存储辅助管理器里同时存在多个同步视图。

Claims (7)

1.一种集成本地文件系统的云存储服务方法,其特征在于:所述的方法由文件校验模块、视图管理器和云存储辅助器构成的系统完成;
所述的文件校验模块是基于目前主流的文件系统的一个模块,主要用于在文件块写入或者从磁盘上读取时进行CRC32C校验;
所述的视图管理器是一个轻型的文件系统内核模块,用于在本地文件系统上创建视图,主要维护活动视图和冻结视图两个文件视图;
所述的云存储辅助器是指本地文件系统与远程云存储平台之间的数据交互接口,维护一个或者多个同步视图;
所述的活动视图是指从上一次开始与云存储平台同步的时间点到当前时间点这个时间范围内本地文件或文件夹状态发生的变化;
所述的冻结视图是指视图管理器对当前活动时间点位置活动视图的一个快照,快照内容是静态的、后续不会发生变化;通过对活动视图在不同时间点的快照递增式生成;
所述的同步视图是指将当前冻结视图里的文件和远程云存储平台进行同步时产生的一个文件状态和行为描述,此时冻结视图被销毁;
每一次同步时产生的同步视图都存在于云存储辅助器中,当本地文件系统出现不一致性问题时,从对应时间点的同步视图中获取待恢复的文件列表。
2.根据权利要求1所述的云存储服务方法,其特征在于:所述的文件校验模块基于目前主流的EXT4、NTFS、HFS+等文件系统。
3.根据权利要求1所述的云存储服务方法,其特征在于:所述的视图管理器同一时间点只会存在一个活动视图和一个冻结视图。
4.根据权利要求2所述的云存储服务方法,其特征在于:所述的视图管理器同一时间点只会存在一个活动视图和一个冻结视图。
5.根据权利要求1至4任一项所述的云存储服务方法,其特征在于:所述的文件校验模块写入文件到磁盘时在物理数据块前添加一个校验区域,填充该数据块的校验值;从磁盘中读取文件块时也需要根据预先填充的校验值和实际的数据进行校验值匹配,以防磁盘发生损坏时破坏数据的一致性;
当本地文件读出的数据与校验值不一致时,表示该数据已损坏,此时文件校验模块将会直接向云存储辅助器发送请求,通过云存储辅助器获取在云存储平台上该数据最近最新的一个版本;此种情况下的数据不会提交到云存储平台或者从云存储平台更新到本地,以防止这种不一致性扩散到云存储平台其他应用端,造成数据的混乱。
6.根据权利要求1至4任一项所述的云存储服务方法,其特征在于:所述的方法中数据读写的处理方式是:
读取数据时,文件校验模块根据对应数据块的实时生成的实际校验值和填充校验值进行比较,若一致则说明数据完好,操作继续;不一致则说明数据出现错误,此时向云存储辅助器发送请求以从云存储平台获取该数据的最新有效数据副本到本地;
写入数据时,如果是本地新增数据,那么针对该数据生成校验值,并将该校验值写入到物理数据块的最前端的校验区域;如果是从云端更新下来的数据,那么以该数据生成的校验值和附随数据块的预填充校验值进行比较,若一致则写入本地磁盘,否则向云存储辅助器发送一条请求,再次从远程云存储平台获取该数据的最新有效数据副本到本地,再次进行本过程,直到数据完好为止。
7.根据权利要求5所述的云存储服务方法,其特征在于:所述的方法中数据读写的处理方式是:
读取数据时,文件校验模块根据对应数据块的实时生成的实际校验值和填充校验值进行比较,若一致则说明数据完好,操作继续;不一致则说明数据出现错误,此时向云存储辅助器发送请求以从云存储平台获取该数据的最新有效数据副本到本地;
写入数据时,如果是本地新增数据,那么针对该数据生成校验值,并将该校验值写入到物理数据块的最前端的校验区域;如果是从云端更新下来的数据,那么以该数据生成的校验值和附随数据块的预填充校验值进行比较,若一致则写入本地磁盘,否则向云存储辅助器发送一条请求,再次从远程云存储平台获取该数据的最新有效数据副本到本地,再次进行本过程,直到数据完好为止。
CN201410625868.0A 2014-11-07 2014-11-07 一种集成本地文件系统的云存储服务方法 Pending CN104361069A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410625868.0A CN104361069A (zh) 2014-11-07 2014-11-07 一种集成本地文件系统的云存储服务方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410625868.0A CN104361069A (zh) 2014-11-07 2014-11-07 一种集成本地文件系统的云存储服务方法

Publications (1)

Publication Number Publication Date
CN104361069A true CN104361069A (zh) 2015-02-18

Family

ID=52528330

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410625868.0A Pending CN104361069A (zh) 2014-11-07 2014-11-07 一种集成本地文件系统的云存储服务方法

Country Status (1)

Country Link
CN (1) CN104361069A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105045536A (zh) * 2015-07-29 2015-11-11 百度在线网络技术(北京)有限公司 一种数据存储的方法、装置与系统
CN107807792A (zh) * 2017-10-27 2018-03-16 郑州云海信息技术有限公司 一种基于副本存储系统的数据处理方法及相关装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040003007A1 (en) * 2002-06-28 2004-01-01 Prall John M. Windows management instrument synchronized repository provider
CN102368737A (zh) * 2011-11-25 2012-03-07 裘嘉 一种云存储系统及其数据访问方法
CN102685222A (zh) * 2012-05-02 2012-09-19 武汉供电公司变电检修中心 一种用于电力系统的云存储资源管理装置
CN102821111A (zh) * 2012-09-07 2012-12-12 普华基础软件股份有限公司 文件云存储实时同步方法
CN103415842A (zh) * 2010-11-16 2013-11-27 阿克蒂菲奥股份有限公司 用于数据管理虚拟化的系统和方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040003007A1 (en) * 2002-06-28 2004-01-01 Prall John M. Windows management instrument synchronized repository provider
CN103415842A (zh) * 2010-11-16 2013-11-27 阿克蒂菲奥股份有限公司 用于数据管理虚拟化的系统和方法
CN102368737A (zh) * 2011-11-25 2012-03-07 裘嘉 一种云存储系统及其数据访问方法
CN102685222A (zh) * 2012-05-02 2012-09-19 武汉供电公司变电检修中心 一种用于电力系统的云存储资源管理装置
CN102821111A (zh) * 2012-09-07 2012-12-12 普华基础软件股份有限公司 文件云存储实时同步方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105045536A (zh) * 2015-07-29 2015-11-11 百度在线网络技术(北京)有限公司 一种数据存储的方法、装置与系统
CN105045536B (zh) * 2015-07-29 2019-09-20 百度在线网络技术(北京)有限公司 一种数据存储的方法、装置与系统
CN107807792A (zh) * 2017-10-27 2018-03-16 郑州云海信息技术有限公司 一种基于副本存储系统的数据处理方法及相关装置

Similar Documents

Publication Publication Date Title
US10503616B2 (en) Periodic data replication
US9658928B2 (en) File-based cluster-to-cluster replication recovery
US10216589B2 (en) Smart data replication recoverer
CN108369487B (zh) 用于在去重虚拟文件系统中拍摄快照的系统和方法
US20160092491A1 (en) Synchronizing copies of an extent in an append-only storage system
US11487706B2 (en) System and method for lazy snapshots for storage cluster with delta log based architecture
CN102955720A (zh) 一种提高ext文件系统稳定性的方法
CN101945131B (zh) 一种基于存储虚拟化的数据迁移方法
CN103914359A (zh) 一种数据恢复方法及装置
CN111771193A (zh) 用于在生产集群中备份最终一致的数据库的系统和方法
US9612917B2 (en) Systems and methods for backing up storage volumes in a storage system
CN103617097A (zh) 文件恢复方法及装置
CN106682021A (zh) 数据库迁移方法及装置
US11176034B2 (en) System and method for inline tiering of write data
CN103176867A (zh) 一种快速文件差异备份方法
US8595271B1 (en) Systems and methods for performing file system checks
CN104361069A (zh) 一种集成本地文件系统的云存储服务方法
US10997040B1 (en) System and method for weight based data protection
US11093348B2 (en) Method, device and computer program product for recovering metadata
CN103714089A (zh) 一种实现云数据库回滚的方法及系统
CN103412802B (zh) 容灾数据文件访问控制列表备份的方法及装置
US10372560B2 (en) Cloud storage write cache management system and method
US11263237B2 (en) Systems and methods for storage block replication in a hybrid storage environment
US20160170678A1 (en) Committing data across multiple, heterogeneous storage devices
US11645333B1 (en) Garbage collection integrated with physical file verification

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20150218