[发明专利]分布式文件系统数据回收方法有效
申请号: | 201810007985.9 | 申请日: | 2018-01-04 |
公开(公告)号: | CN108197270B | 公开(公告)日: | 2021-05-28 |
发明(设计)人: | 李新明;刘斌 | 申请(专利权)人: | 中科边缘智慧信息科技(苏州)有限公司 |
主分类号: | G06F16/182 | 分类号: | G06F16/182;G06F16/176;G06F16/16 |
代理公司: | 苏州谨和知识产权代理事务所(特殊普通合伙) 32295 | 代理人: | 叶栋 |
地址: | 215000 江苏省苏州市苏州*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 文件系统 数据 回收 方法 | ||
本发明提供一种分布式文件系统数据回收方法,包括:创建一回收链表作为回收空间的核心数据结构,回收链表具有一全局指针变量,该全局指针变量同时作为回收链表的头指针,被命名成trash指针;响应于接收到系统生成的针对任意一个文件节点类型为TYPE_FILE的文件的删除指令,将该文件的文件名、路径记录至一结构体fsedge的path中,同时将该文件节点从系统文件目录树中移动至回收链表上,以及将该文件的节点类型由原TYPE_FILE更改成TYPE_TRASH,以使trash指针能够对其进行访问。本发明通过一个单独的TRASH模块来实现文件系统的回收站机制,系统中的所有文件在删除时,若其回收时间大于0,则不会立即将该文件彻底删除,而是将该文件的节点从文件树上移除并放到回收链表中。
技术领域
本发明涉及分布式存储领域,属于分布式文件系统数据回收方法。
背景技术
分布式文件系统一般都采用冗余的方式来保证数据安全性,这种方式虽然能够在很大程度上避免因为部分物理节点故障而造成的数据丢失,但是它无法避免文件系统的用户误操作造成的数据丢失,例如:用户误删除文件。
当前主流的分布式文件系统已经引入了数据回收站功能,这些系统通用的做法是:在回收站功能开启的状态下,文件数据无论是有意还是无意被删除,都会被系统先放入回收站中一段时间,如果是误删,用户可以在这段时间内恢复被删除的文件。
但是这些分布式文件系统回收站功能普遍有以下局限:
(1)放入回收站的数据无法被用户访问,如果A用户的文件数据被B用户删除了,但是A用户没有恢复数据的权限,虽然A的数据暂时不会丢失,但是A 将无法再访问这些数据。
(2)回收站内如果已经堆放了大量的待回收文件,用户无法批量便捷地查看其中文件的状态。
(3)某个文件的回收时间被设置为0,即被删除后不会停留在回收站中,而是直接被系统清理掉;此时,如果A用户打开该文件,B用户删除该文件,将会发生操作冲突。
发明内容
本发明的目的在于提供一种分布式文件系统数据回收方法,本方法通过一个单独的TRASH模块来实现文件系统的回收站机制,系统中的所有文件在删除时,若其回收时间大于0,则不会立即将该文件彻底删除,而是将该文件的节点从文件树上移除并放到回收链表中,客户端通过文件系统的TRASH模块可以便捷地管理回收站中的文件。
为达到上述目的,本发明提供如下技术方案:
一种分布式文件系统数据回收方法,包括:
创建一回收链表作为回收空间的核心数据结构,回收链表具有一全局指针变量,该全局指针变量同时作为回收链表的头指针,被命名成trash指针;
响应于接收到系统生成的针对任意一个文件节点类型为TYPE_FILE的文件的删除指令,将该文件的文件名、路径记录至一结构体fsedge的path中,同时将该文件节点从系统文件目录树中移动至回收链表上,以及
将该文件的节点类型由原TYPE_FILE更改成TYPE_TRASH,以使trash指针能够对其进行访问。
进一步的实施例中,所述方法还包括:
将文件节点类型为TYPE_TRASH的文件的文件名格式定义成八位十六进制数的ID和文件名的组合;
所述文件名中含有路径信息。
进一步的实施例中,所述方法还包括:
响应于接收到一用户发送的关于回收空间内任意一个文件的访问请求,获取该文件完整文件名需要的总缓冲区长度,创建响应包,以及
访问回收链表以查找到目标文件节点、并且向缓冲区内依次填入目标文件节点的文件名长度、文件名、文件编号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科边缘智慧信息科技(苏州)有限公司,未经中科边缘智慧信息科技(苏州)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810007985.9/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置