分布式文件存储系统中截断操作的优化方法及系统.pdf

上传人:62****3 文档编号:10344515 上传时间:2021-06-18 格式:PDF 页数:13 大小:643.59KB
收藏 版权申诉 举报 下载
分布式文件存储系统中截断操作的优化方法及系统.pdf_第1页
第1页 / 共13页
分布式文件存储系统中截断操作的优化方法及系统.pdf_第2页
第2页 / 共13页
分布式文件存储系统中截断操作的优化方法及系统.pdf_第3页
第3页 / 共13页
文档描述:

《分布式文件存储系统中截断操作的优化方法及系统.pdf》由会员分享,可在线阅读,更多相关《分布式文件存储系统中截断操作的优化方法及系统.pdf(13页完成版)》请在专利查询网上搜索。

1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 202010472341.4 (22)申请日 2020.05.29 (71)申请人 苏州浪潮智能科技有限公司 地址 215100 江苏省苏州市吴中区吴中经 济开发区郭巷街道官浦路1号9幢 (72)发明人 张其万孟祥瑞 (74)专利代理机构 济南诚智商标专利事务所有 限公司 37105 代理人 黄晓燕 (51)Int.Cl. G06F 16/182(2019.01) G06F 16/172(2019.01) (54)发明名称 一种分布式文件存储系统中截断操作的优 化方法及系统 (5。

2、7)摘要 本发明涉及服务器技术领域, 提供一种分布 式文件存储系统中截断操作的优化方法及系统, 方法包括: 获取客户端发送的包含截断操作信息 在内的请求信息; 根据获取到的所述请求信息, 对当前节点信息进行修改; 根据对所述当前节点 信息的修改, 生成新的日志文件, 并提交落盘; 根 据对当前节点信息的修改, 控制对同一文件的多 次截断请求执行一次截断操作, 从而实现当对同 一个文件进行多次截断操作为零的操作时, 由原 来的多次调用filer的截断操作方法优化成只调 用一次filer的阶段操作方法来执行RADOS层面 的对象删除, 减少了落盘的次数, 优化了不必要 的流程, 缩短了截断操作时间。

3、。 权利要求书2页 说明书6页 附图4页 CN 111737220 A 2020.10.02 CN 111737220 A 1.一种分布式文件存储系统中截断操作的优化方法, 其特征在于, 所述方法包括下述 步骤: 获取客户端发送的包含截断操作信息在内的请求信息; 根据获取到的所述请求信息, 对当前节点信息进行修改; 根据对所述当前节点信息的修改, 生成新的日志文件, 并提交落盘; 根据对当前节点信息的修改, 控制对同一文件的多次截断请求执行一次截断操作。 2.根据权利要求1所述的分布式文件存储系统中截断操作的优化方法, 其特征在于, 所 述根据获取到的所述请求信息, 对当前元数据服务模块的节点。

4、信息进行修改的步骤具体包 括下述步骤: 根据获取到的所述请求信息, 对所述节点的属性进行修改; 对所述请求信息中所包含的截断操作信息进行解析, 并依据解析的结果对截断操作状 态truncate_mode进行设置。 3.根据权利要求2所述的分布式文件存储系统中截断操作的优化方法, 其特征在于, 所 述对所述请求信息中所包含的截断操作信息进行解析, 并依据解析的结果对截断操作状态 truncate_mode进行设置的步骤具体包括下述步骤: 对所述请求信息中所包含的截断操作信息进行解析, 获取截断操作后所对应的文件期 望大小truncate_size; 判断截断操作后truncate_size是否为。

5、0, 当判定truncate_size0时, 将所述 truncate_mode设置为1, 否则设置为0。 4.根据权利要求3所述的分布式文件存储系统中截断操作的优化方法, 其特征在于, 所 述根据对当前节点信息的修改, 控制对同一文件的多次截断请求执行一次截断操作的步骤 具体包括下述步骤: 根据对当前节点信息的修改, 控制向客户端发送消息, 更新索引节点所有相关客户端 的权限信息; 判断当前是否正在进行截断操作且truncate_size0, 若是则控制不执行任何操作, 若否则调用文件管理工具filer的truncate接口, 向底层下发截断请求; 接收客户端定期发送的权限信息, 并执行权限。

6、信息的更新动作; 判断当前是否没有执行截断操作且truncate_mode0, 若是则调用文件管理工具 filer的truncate接口, 向底层下发截断请求, 否则控制不执行任何操作。 5.根据权利要求3所述的分布式文件存储系统中截断操作的优化方法, 其特征在于, 所 述根据对所述当前节点信息的修改, 生成新的日志文件, 并提交落盘的步骤具体包括下述 步骤: 获得当前日志, 并开始一段新的日志信息; 将元数据操作中涉及到的索引节点及其所有祖先索引节点加入到请求对应的日志中; 当节点添加完成时, 提交日志并落盘。 6.一种分布式文件存储系统中截断操作的优化系统, 其特征在于, 所述系统包括: 。

7、请求信息获取模块, 用于获取客户端发送的包含截断操作信息在内的请求信息; 节点信息修改模块, 用于根据获取到的所述请求信息, 对当前节点信息进行修改; 日志文件提交模块, 用于根据对所述当前节点信息的修改, 生成新的日志文件, 并提交 权利要求书 1/2 页 2 CN 111737220 A 2 落盘; 截断操作执行模块, 用于根据对当前节点信息的修改, 控制对同一文件的多次截断请 求执行一次截断操作。 7.根据权利要求6所述的分布式文件存储系统中截断操作的优化系统, 其特征在于, 所 述节点信息修改模块具体包括: 节点属性修改模块, 用于根据获取到的所述请求信息, 对所述节点的属性进行修改;。

8、 截断操作状态设置模块, 用于对所述请求信息中所包含的截断操作信息进行解析, 并 依据解析的结果对截断操作状态truncate_mode进行设置。 8.根据权利要求7所述的分布式文件存储系统中截断操作的优化系统, 其特征在于, 所 述截断操作状态设置模块具体包括: 文件期望大小获取模块, 用于对所述请求信息中所包含的截断操作信息进行解析, 获 取截断操作后所对应的文件期望大小truncate_size; 文件期望大小判断模块, 用于判断截断操作后truncate_size是否为0; 设置模块, 用于当判定truncate_size0时, 将所述truncate_mode设置为1, 否则设置 为。

9、0。 9.根据权利要求8所述的分布式文件存储系统中截断操作的优化系统, 其特征在于, 所 述截断操作执行模块具体包括: 第一权限信息更新模块, 用于根据对当前节点信息的修改, 控制向客户端发送消息, 更 新索引节点所有相关客户端的权限信息; 第一判断模块, 用于判断当前是否正在进行截断操作且truncate_size0; 第一控制模块, 用于当判定当前正在进行截断操作且truncate_size0时, 控制不执 行任何操作; 第一截断操作模块, 用于当判定当前正在进行截断操作且truncate_size1时, 若否 则调用文件管理工具filer的truncate接口, 向底层下发截断请求; 第。

10、二权限信息更新模块, 用于接收客户端定期发送的权限信息, 并执行权限信息的更 新动作; 第二判断模块, 用于判断当前是否没有执行截断操作且truncate_mode0; 第二截断操作模块, 用于判定当前没有执行截断操作且truncate_mode0时, 调用文 件管理工具filer的truncate接口, 向底层下发截断请求; 第二控制模块, 用于判定当前没有执行截断操作且truncate_mode1时, 控制不执行 任何操作。 10.根据权利要求8所述的分布式文件存储系统中截断操作的优化系统, 其特征在于, 所述日志文件提交模块具体包括: 日志信息设置模块, 用于获得当前日志, 并开始一段新。

11、的日志信息; 节点加入模块, 用于将元数据操作中涉及到的索引节点及其所有祖先索引节点加入到 请求对应的日志中; 落盘模块, 用于当节点添加完成时, 提交日志并落盘。 权利要求书 2/2 页 3 CN 111737220 A 3 一种分布式文件存储系统中截断操作的优化方法及系统 技术领域 0001 本发明属于服务器技术领域, 尤其涉及一种分布式文件存储系统中截断操作的优 化方法及系统。 背景技术 0002 在分布式文件存储系统中, 经常会用到截断操作truncate命令, 由于下一次截断 操作需要等待前一次截断操作落盘完成, 在某些场景下, 当对某个文件连续进行多次截断 操作文件为零的操作时, 。

12、截断操作性能就会受到影响, 速度变慢, 影响客户的使用体验。 发明内容 0003 针对现有技术中的缺陷, 本发明提供了一种分布式文件存储系统中截断操作的优 化方法, 旨在解决现有技术中当对某个文件连续进行多次截断操作文件为零的操作时, 截 断操作性能就会受到影响, 速度变慢, 影响客户的使用体验的问题。 0004 本发明所提供的技术方案是: 一种分布式文件存储系统中截断操作的优化方法, 所述方法包括下述步骤: 0005 获取客户端发送的包含截断操作信息在内的请求信息; 0006 根据获取到的所述请求信息, 对当前节点信息进行修改; 0007 根据对所述当前节点信息的修改, 生成新的日志文件, 。

13、并提交落盘; 0008 根据对当前节点信息的修改, 控制对同一文件的多次截断请求执行一次截断操 作。 0009 作为一种改进的方案, 所述根据获取到的所述请求信息, 对当前元数据服务模块 的节点信息进行修改的步骤具体包括下述步骤: 0010 根据获取到的所述请求信息, 对所述节点的属性进行修改; 0011 对所述请求信息中所包含的截断操作信息进行解析, 并依据解析的结果对截断操 作状态truncate_mode进行设置。 0012 作为一种改进的方案, 所述对所述请求信息中所包含的截断操作信息进行解析, 并依据解析的结果对截断操作状态truncate_mode进行设置的步骤具体包括下述步骤: 。

14、0013 对所述请求信息中所包含的截断操作信息进行解析, 获取截断操作后所对应的文 件期望大小truncate_size; 0014 判断截断操作后truncate_size是否为0, 当判定truncate_size0时, 将所述 truncate_mode设置为1, 否则设置为0。 0015 作为一种改进的方案, 所述根据对当前节点信息的修改, 控制对同一文件的多次 截断请求执行一次截断操作的步骤具体包括下述步骤: 0016 根据对当前节点信息的修改, 控制向客户端发送消息, 更新索引节点所有相关客 户端的权限信息; 0017 判断当前是否正在进行截断操作且truncate_size0, 。

15、若是则控制不执行任何操 说明书 1/6 页 4 CN 111737220 A 4 作, 若否则调用文件管理工具filer的truncate接口, 向底层下发截断请求; 0018 接收客户端定期发送的权限信息, 并执行权限信息的更新动作; 0019 判断当前是否没有执行截断操作且truncate_mode0, 若是则调用文件管理工具 filer的truncate接口, 向底层下发截断请求, 否则控制不执行任何操作。 0020 作为一种改进的方案, 所述根据对所述当前节点信息的修改, 生成新的日志文件, 并提交落盘的步骤具体包括下述步骤: 0021 获得当前日志, 并开始一段新的日志信息; 002。

16、2 将元数据操作中涉及到的索引节点及其所有祖先索引节点加入到请求对应的日 志中; 0023 当节点添加完成时, 提交日志并落盘。 0024 作为一种改进的方案一种分布式文件存储系统中截断操作的优化系统, 其特征在 于, 所述系统包括: 0025 请求信息获取模块, 用于获取客户端发送的包含截断操作信息在内的请求信息; 0026 节点信息修改模块, 用于根据获取到的所述请求信息, 对当前节点信息进行修改; 0027 日志文件提交模块, 用于根据对所述当前节点信息的修改, 生成新的日志文件, 并 提交落盘; 0028 截断操作执行模块, 用于根据对当前节点信息的修改, 控制对同一文件的多次截 断请。

17、求执行一次截断操作。 0029 作为一种改进的方案, 所述节点信息修改模块具体包括: 0030 节点属性修改模块, 用于根据获取到的所述请求信息, 对所述节点的属性进行修 改; 0031 截断操作状态设置模块, 用于对所述请求信息中所包含的截断操作信息进行解 析, 并依据解析的结果对截断操作状态truncate_mode进行设置。 0032 作为一种改进的方案, 所述截断操作状态设置模块具体包括: 0033 文件期望大小获取模块, 用于对所述请求信息中所包含的截断操作信息进行解 析, 获取截断操作后所对应的文件期望大小truncate_size; 0034 文件期望大小判断模块, 用于判断截断。

18、操作后truncate_size是否为0; 0035 设置模块, 用于当判定truncate_size0时, 将所述truncate_mode设置为1, 否则 设置为0。 0036 作为一种改进的方案, 所述截断操作执行模块具体包括: 0037 第一权限信息更新模块, 用于根据对当前节点信息的修改, 控制向客户端发送消 息, 更新索引节点所有相关客户端的权限信息; 0038 第一判断模块, 用于判断当前是否正在进行截断操作且truncate_size0; 0039 第一控制模块, 用于当判定当前正在进行截断操作且truncate_size0时, 控制 不执行任何操作; 0040 第一截断操作模。

19、块, 用于当判定当前正在进行截断操作且truncate_size1时, 若否则调用文件管理工具filer的truncate接口, 向底层下发截断请求; 0041 第二权限信息更新模块, 用于接收客户端定期发送的权限信息, 并执行权限信息 的更新动作; 说明书 2/6 页 5 CN 111737220 A 5 0042 第二判断模块, 用于判断当前是否没有执行截断操作且truncate_mode0; 0043 第二截断操作模块, 用于判定当前没有执行截断操作且truncate_mode0时, 调 用文件管理工具filer的truncate接口, 向底层下发截断请求; 0044 第二控制模块, 用。

20、于判定当前没有执行截断操作且truncate_mode1时, 控制不 执行任何操作。 0045 作为一种改进的方案, 所述日志文件提交模块具体包括: 0046 日志信息设置模块, 用于获得当前日志, 并开始一段新的日志信息; 0047 节点加入模块, 用于将元数据操作中涉及到的索引节点及其所有祖先索引节点加 入到请求对应的日志中; 0048 落盘模块, 用于当节点添加完成时, 提交日志并落盘。 0049 在本发明实施例中, 获取客户端发送的包含截断操作信息在内的请求信息; 根据 获取到的所述请求信息, 对当前节点信息进行修改; 根据对所述当前节点信息的修改, 生成 新的日志文件, 并提交落盘;。

21、 根据对当前节点信息的修改, 控制对同一文件的多次截断请求 执行一次截断操作, 从而实现当对同一个文件进行多次截断操作为零的操作时, 由原来的 多次调用filer的截断操作方法优化成只调用一次filer的阶段操作方法来执行RADOS层面 的对象删除, 减少了落盘的次数, 优化了不必要的流程, 缩短了截断操作时间。 附图说明 0050 为了更清楚地说明本发明具体实施方式或现有技术中的技术方案, 下面将对具体 实施方式或现有技术描述中所需要使用的附图作简单地介绍。 在所有附图中, 类似的元件 或部分一般由类似的附图标记标识。 附图中, 各元件或部分并不一定按照实际的比例绘制。 0051 图1是本发。

22、明提供的分布式文件存储系统中截断操作的优化方法的实现流程图; 0052 图2是本发明提供的根据获取到的所述请求信息, 对当前元数据服务模块的节点 信息进行修改的实现流程图; 0053 图3是本发明提供的对所述请求信息中所包含的截断操作信息进行解析, 并依据 解析的结果对截断操作状态truncate_mode进行设置的实现流程图; 0054 图4是本发明提供的根据对当前节点信息的修改, 控制对同一文件的多次截断请 求执行一次截断操作的实现流程图; 0055 图5是本发明提供的根据对所述当前节点信息的修改, 生成新的日志文件, 并提交 落盘的实现流程图; 0056 图6是本发明提供的分布式文件存储。

23、系统中截断操作的优化系统的结构框图; 0057 图7是本发明提供的节点信息修改模块的结构框图; 0058 图8是本发明提供的截断操作执行模块的结构框图; 0059 图9是本发明提供的日志文件提交模块的结构框图; 0060 图10是本发明提供的截断操作状态设置模块的结构框图。 具体实施方式 0061 下面将结合附图对本发明技术方案的实施例进行详细的描述。 以下实施例仅用于 更加清楚地说明本发明的、 技术方案, 因此只作为示例, 而不能以此来限制本发明的保护范 说明书 3/6 页 6 CN 111737220 A 6 围。 0062 图1是本发明提供的分布式文件存储系统中截断操作的优化方法的实现流。

24、程图, 其具体包括下述步骤: 0063 在步骤S101中, 获取客户端发送的包含截断操作信息在内的请求信息; 0064 在步骤S102中, 根据获取到的所述请求信息, 对当前节点信息进行修改; 0065 在步骤S103中, 根据对所述当前节点信息的修改, 生成新的日志文件, 并提交落 盘; 0066 在步骤S104中, 根据对当前节点信息的修改, 控制对同一文件的多次截断请求执 行一次截断操作。 0067 在该实施例中, 通过对现有的截断操作流程进行优化, 当对同一个文件进行多次 截断操作为零的操作时, 由原来的多次调用filer的截断操作方法优化成只调用一次filer 的截断操作方法来执行R。

25、ADOS层面的对象删除, 减少了落盘的次数, 优化了不必要的流程, 缩短了截断操作时间。 0068 如图2所示, 根据获取到的所述请求信息, 对当前元数据服务模块的节点信息进行 修改的步骤具体包括下述步骤: 0069 在步骤S201中, 根据获取到的所述请求信息, 对所述节点的属性进行修改; 0070 在该步骤中, 该节点的属性包括mtime、 mode、 uid、 gid、 atime以及ctime等信息 0071 在步骤S202中, 对所述请求信息中所包含的截断操作信息进行解析, 并依据解析 的结果对截断操作状态truncate_mode进行设置。 0072 在本发明实施例中, 如图3所示。

26、, 对所述请求信息中所包含的截断操作信息进行解 析, 并依据解析的结果对截断操作状态truncate_mode进行设置的步骤具体包括下述步骤: 0073 在步骤S301中, 对所述请求信息中所包含的截断操作信息进行解析, 获取截断操 作后所对应的文件期望大小truncate_size; 0074 在步骤S302中, 判断截断操作后truncate_size是否为0, 当判定truncate_size 0时, 将所述truncate_mode设置为1, 否则设置为0。 0075 在本发明实施例中, 如图4所示, 根据对当前节点信息的修改, 控制对同一文件的 多次截断请求执行一次截断操作的步骤具体。

27、包括下述步骤: 0076 在步骤S401中, 根据对当前节点信息的修改, 控制向客户端发送消息, 更新索引节 点所有相关客户端的权限信息; 0077 在步骤S402中, 判断当前是否正在进行截断操作且truncate_size0, 若是则控 制不执行任何操作, 若否则调用文件管理工具filer的truncate接口, 向底层下发截断请 求; 0078 在步骤S403中, 接收客户端定期发送的权限信息, 并执行权限信息的更新动作; 0079 在步骤S404中, 判断当前是否没有执行截断操作且truncate_mode0, 若是则调 用文件管理工具filer的truncate接口, 向底层下发截断。

28、请求, 否则控制不执行任何操作。 0080 如图5所示, 根据对所述当前节点信息的修改, 生成新的日志文件, 并提交落盘的 步骤具体包括下述步骤: 0081 在步骤S501中, 获得当前日志, 并开始一段新的日志信息; 0082 在步骤S502中, 将元数据操作中涉及到的索引节点及其所有祖先索引节点加入到 说明书 4/6 页 7 CN 111737220 A 7 请求对应的日志中; 0083 在步骤S503中, 当节点添加完成时, 提交日志并落盘。 0084 图6示出了本发明提供的分布式文件存储系统中截断操作的优化系统的结构框 图, 为了便于说明, 图中仅给出了与本发明实施例相关的部分。 00。

29、85 分布式文件存储系统中截断操作的优化系统包括: 0086 请求信息获取模块11, 用于获取客户端发送的包含截断操作信息在内的请求信 息; 0087 节点信息修改模块12, 用于根据获取到的所述请求信息, 对当前节点信息进行修 改; 0088 日志文件提交模块13, 用于根据对所述当前节点信息的修改, 生成新的日志文件, 并提交落盘; 0089 截断操作执行模块14, 用于根据对当前节点信息的修改, 控制对同一文件的多次 截断请求执行一次截断操作。 0090 在该实施例中, 如图7所示, 节点信息修改模块12具体包括: 0091 节点属性修改模块15, 用于根据获取到的所述请求信息, 对所述。

30、节点的属性进行 修改; 0092 截断操作状态设置模块16, 用于对所述请求信息中所包含的截断操作信息进行解 析, 并依据解析的结果对截断操作状态truncate_mode进行设置。 0093 在该实施例中, 如图10所示, 截断操作状态设置模块16具体包括: 0094 文件期望大小获取模块17, 用于对所述请求信息中所包含的截断操作信息进行解 析, 获取截断操作后所对应的文件期望大小truncate_size; 0095 文件期望大小判断模块18, 用于判断截断操作后truncate_size是否为0; 0096 设置模块30, 用于当判定truncate_size0时, 将所述trunca。

31、te_mode设置为1, 否 则设置为0。 0097 在本发明实施例中, 如图8所示, 截断操作执行模块14具体包括: 0098 第一权限信息更新模块19, 用于根据对当前节点信息的修改, 控制向客户端发送 消息, 更新索引节点所有相关客户端的权限信息; 0099 第一判断模块20, 用于判断当前是否正在进行截断操作且truncate_size0; 0100 第一控制模块21, 用于当判定当前正在进行截断操作且truncate_size0时, 控 制不执行任何操作; 0101 第一截断操作模块22, 用于当判定当前正在进行截断操作且truncate_size1 时, 若否则调用文件管理工具fi。

32、ler的truncate接口, 向底层下发截断请求; 0102 第二权限信息更新模块23, 用于接收客户端定期发送的权限信息, 并执行权限信 息的更新动作; 0103 第二判断模块24, 用于判断当前是否没有执行截断操作且truncate_mode0; 0104 第二截断操作模块25, 用于判定当前没有执行截断操作且truncate_mode0时, 调用文件管理工具filer的truncate接口, 向底层下发截断请求; 0105 第二控制模块26, 用于判定当前没有执行截断操作且truncate_mode1时, 控制 不执行任何操作。 说明书 5/6 页 8 CN 111737220 A 8。

33、 0106 在本发明实施例中, 如图9所示, 日志文件提交模块13具体包括: 0107 日志信息设置模块27, 用于获得当前日志, 并开始一段新的日志信息; 0108 节点加入模块28, 用于将元数据操作中涉及到的索引节点及其所有祖先索引节点 加入到请求对应的日志中; 0109 落盘模块29, 用于当节点添加完成时, 提交日志并落盘。 0110 其中, 上述各个模块的功能如上述方法实施例所记载。 0111 在本发明实施例中, 获取客户端发送的包含截断操作信息在内的请求信息; 根据 获取到的所述请求信息, 对当前节点信息进行修改; 根据对所述当前节点信息的修改, 生成 新的日志文件, 并提交落盘。

34、; 根据对当前节点信息的修改, 控制对同一文件的多次截断请求 执行一次截断操作, 从而实现当对同一个文件进行多次截断操作为零的操作时, 由原来的 多次调用filer的截断操作方法优化成只调用一次filer的阶段操作方法来执行RADOS层面 的对象删除, 减少了落盘的次数, 优化了不必要的流程, 缩短了截断操作时间。 0112 以上各实施例仅用以说明本发明的技术方案, 而非对其限制; 尽管参照前述各实 施例对本发明进行了详细的说明, 本领域的普通技术人员应当理解: 其依然可以对前述各 实施例所记载的技术方案进行修改, 或者对其中部分或者全部技术特征进行等同替换; 而 这些修改或者替换, 并不使相应技术方案的本质脱离本发明各实施例技术方案的范围, 其 均应涵盖在本发明的权利要求和说明书的范围当中。 说明书 6/6 页 9 CN 111737220 A 9 图1 图2 说明书附图 1/4 页 10 CN 111737220 A 10 图3 图4 说明书附图 2/4 页 11 CN 111737220 A 11 图5 图6 图7 说明书附图 3/4 页 12 CN 111737220 A 12 图8 图9 图10 说明书附图 4/4 页 13 CN 111737220 A 13 。

展开阅读全文
内容关键字: 分布式 文件 存储系统 截断 操作 优化 方法 系统
关于本文
本文标题:分布式文件存储系统中截断操作的优化方法及系统.pdf
链接地址:https://www.zhuanlichaxun.net/pdf/10344515.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1