CN112817765B - 基于预授权的分布式对象存储桶配额管理方法及系统 - Google Patents

基于预授权的分布式对象存储桶配额管理方法及系统 Download PDF

Info

Publication number
CN112817765B
CN112817765B CN202110173043.XA CN202110173043A CN112817765B CN 112817765 B CN112817765 B CN 112817765B CN 202110173043 A CN202110173043 A CN 202110173043A CN 112817765 B CN112817765 B CN 112817765B
Authority
CN
China
Prior art keywords
quota
storage
object storage
amount
distributed
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.)
Active
Application number
CN202110173043.XA
Other languages
English (en)
Other versions
CN112817765A (zh
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.)
Beijing Toyou Feiji Electronics Co ltd
Original Assignee
Beijing Toyou Feiji Electronics Co ltd
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 Beijing Toyou Feiji Electronics Co ltd filed Critical Beijing Toyou Feiji Electronics Co ltd
Priority to CN202110173043.XA priority Critical patent/CN112817765B/zh
Publication of CN112817765A publication Critical patent/CN112817765A/zh
Application granted granted Critical
Publication of CN112817765B publication Critical patent/CN112817765B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种基于预授权的分布式对象存储桶配额管理方法及系统。该方法包括:对象存储网关根据上个周期消耗配额的数量以及当前配额剩余量计算存储桶的本次申请配额量;对象存储网关定时向配额管理中心批量申请存储桶的存储配额;配额管理中心依据各个对象存储网关的本次申请配额量,向各个对象存储网关分配存储桶的存储配额。本发明提供的基于预授权的分布式对象存储桶配额管理方法及系统能够减少多个节点同时更新资源统计状态发生冲突的概率。

Description

基于预授权的分布式对象存储桶配额管理方法及系统
技术领域
本发明涉及存储配额管理技术领域,特别是涉及一种基于预授权的分布式对象存储桶配额管理方法及系统。
背景技术
随着移动互联网的普及和发展,图片、视频等非结构化数据量迅速增加。对象存储的扁平化的设计结构,使其具有灵活的扩展能力支持海量的非结构化数据存储。桶作为对象存储数据组织的基本单位,如何实现高效可靠的配额管理功能是分布式对象存储必须要解决重要问题。
对于单服务节点,因为所有数据更新都由一个节点完成,所以只要在该节点进行资源统计和限制就可以实现配额控制。而对于多服务节点的分布式存储系统,每个节点都会处理用户读写请求,并更新使用资源的统计信息,就会导致数据不一致性的问题。例如当服务节点A查询统计信息时,满足当前配额限制,而在服务节点A处理请求的过程中,服务节点B查询统计信息检查配额限制,也满足要求。但剩余配额实际可能只能满足其中一个节点的请求,这就会导致实际使用量超出配额限制。现有一般的解决方法是:服务节点将检查配额和更新状态作为一个事务操作一起提交,只有满足配额且状态更新成功后,服务节点才继续执行请求处理。这样就避免了不同的服务节点不一致导致配额超分的情况。
但该方案有两个问题,一个问题是请求处理失败数据没有真正提交,而统计状态已经更新。在异常处理时增加状态回滚操作虽然可以一定程度解决这个问题,但仍无法避免数据处理过程中系统异常退出导致的统计信息与实际数据不一致的问题。另外一个问题是每次请求处理都要查询和更新远程存储中的配额状态,增加了系统处理请求的延时,多个服务节点频繁更新状态,还会增加了写冲突的概率,降低了分布式对象系统的IO处理性能。
发明内容
本发明要解决的技术问题是提供一种基于预授权的分布式对象存储桶配额管理方法及系统,能够减少多个节点同时更新资源统计状态发生冲突的概率。
为解决上述技术问题,本发明提供了一种基于预授权的分布式对象存储桶配额管理方法,所述方法包括:对象存储网关根据上个周期消耗配额的数量以及当前配额剩余量计算存储桶的本次申请配额量;对象存储网关定时向配额管理中心批量申请存储桶的存储配额;配额管理中心依据各个对象存储网关的本次申请配额量,向各个对象存储网关分配存储桶的存储配额。
在一些实施方式中,还包括:当没有足够配额时,对象存储网关从配额管理中心申请存储桶的预授权配额。
在一些实施方式中,还包括:配额管理中心根据分布式存储中保存的配额配置参数,管理存储桶的配额参数和配额使用状态。
在一些实施方式中,配额管理中心根据分布式存储中保存的配额配置参数,管理存储桶的配额参数和配额使用状态,包括:分布式存储存储配额配置参数;配额管理中心从分布式存储中获取配额参数和配额使用状态。
在一些实施方式中,配额管理中心根据分布式存储中保存的配额配置参数,管理存储桶的配额参数和配额使用状态,还包括:若配额参数变更,分布式存储服务通知配额管理中心更新配额参数。
在一些实施方式中,还包括:服务存储网关处理客户端的IO请求,将对象保存至分布式存储服务并更新元数据信息。
在一些实施方式中,元数据信息包括:桶的统计状态信息。
此外,本发明还提供了一种基于预授权的分布式对象存储桶配额管理系统,所述系统包括:对象存储网关,用于根据上个周期消耗配额的数量以及当前配额剩余量计算存储桶的本次申请配额量,以及对象存储网关定时向配额管理中心批量申请存储桶的存储配额;配额管理中心,通过网络连接至各个对象存储网关,用于依据各个对象存储网关的本次申请配额量,向各个对象存储网关分配存储桶的存储配额。
采用这样的设计后,本发明至少具有以下优点:
通过预授权的配额分配策略,可以减少配额申请频率,减少多个节点同时更新资源统计状态发生冲突的概率。
每个服务节点根据自己消耗配额的速度计算申请配额数量,保证大部分场景下周期性申请的配额数量可以满足下个周期的配额消耗,进而减少在请求处理过程中因配额不足触发配额申请。
节点服务只有申请到可用配额后,才能使用相应的配额容量,因此可以避免超过配额限制的问题。
通过配额分配过期时间管理和配额状态重置流程,可以避免节点异常退出导致已分配配额无法回收的问题。
附图说明
上述仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,以下结合附图与具体实施方式对本发明作进一步的详细说明。
图1是本发明提供的数据结构示意图;
图2是本发明提供的系统架构图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明相关组件和系统架构如图2所示,客户端通过访问分布式服务网关的接口使用对象存储服务,分布式存储网关通常采用多个节点部署以提高系统性能和可靠性,客户端按照策略选择不同存储网关接入。配额管理中心是本发明引入的独立实体,服务网关从配额管理中心申请配额资源,配额管理中心负责管理、分配和回收配额资源。分布式存储服务负责实际的对象数据和元数据的存储。服务存储网关处理客户端的IO请求,将对象保存至分布式存储服务并更新元数据信息包括桶的统计状态信息。此外桶的配额配置参数也持久化保存在分布式存储中,配额管理中心可以从分布式存储服务获取最新配额参数和配额使用状态。若配额参数变更分布式存储服务会通知配额管理中心更新配额参数。
根据场景服务网关节点采用两种方式向配额管理中心申请配额授权。一种是定时申请方式,即每隔一段时间申请一定数量的配额授权,以满足接下来一段时间处理用户请求的配额消耗。另一种是请求触发方式,当服务网关节点处理用户请求时,本地没有预授权的配额或预授权的配额不足时,触发一次配额授权申请,以满足当前请求的配额需求。
参见图1,设配额周期更新时间Ttick,已授权配额总量Ntotal,当前已消耗配额数量Nthis,上次申请配额时已消耗配额数量Nlast,上一次申请配额到现在的间隔时间Tinterval,预留比例因子σ,用户请求需要的配额数量Nreq,通过如下公式计算每次申请的配额数量。
首次配额申请需要由用户请求处理来触发,即当Tinterval=0,定时操作不会触发申请配额授权,当用户请求有配额需求时才申请配额授权,以避免申请不必要的配额。另外若请求量μ>0,代表需要申请新的配额量,需等待配额管理中心确认后才能使用新申请的配额资源。若请求量μ<0代表需要释放一些配额资源,此时本地应该先锁定释放配额资源,再发送请求,避免请求处理过程中配额被消耗。
服务节点需定时刷新配额过期时间以保持配额不被回收。预授权配额在服务节点本地和配额管理中心分别维护一个过期时间。设配额管理中心维护授权配额过期时间为Texpired-center,服务节点本地授权维护配额过期时间为Texpired-local,集群中服务器与标准时间最大允许的时钟偏差为Toffset,服务节点的定时更新周期为Ttick,申请配额流程消耗时间为Tfresh。需满足如下条件:Texpired-center=Texpired-local+Tdelta,其中Tdelta=2×Toffset,保证授权回收时节点本地授权已经过期,已授权配额不会在被使用。此外每次设置的过期时间和当前时间间隔Texpired-local-now>Ttick+Tfresh,保证一般情况下预授权配额过期前能够及时刷新过期时间。
通过过期时间可以判断预分配的配额是否可以回收,但并不知道其中已经消耗了多少配额,只知道该节点实际消耗的配额数量不超过其最近一次上报的消耗配额数量。当未分配可用配额消耗尽或没有已分配的配额时,开始进入回收流程,此时每个节点上报的已使用配额和预分配配额总量相同,各节点暂停处理影响配额的用户请求。配额控制中心检查当前是否有过期预分配配额,若有说明可能还有部分配额未使用,执行重置操作,重新从分布式存储服务加载最新配额使用状态和配额参数,状态重置后,若有可用配额继续分配各服务节点使用。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,本领域技术人员利用上述揭示的技术内容做出些许简单修改、等同变化或修饰,均落在本发明的保护范围内。

Claims (8)

1.一种基于预授权的分布式对象存储桶配额管理方法,其特征在于,包括:
对象存储网关根据上个周期消耗配额的数量以及当前配额剩余量计算存储桶的本次申请配额量,包括:设配额周期更新时间Ttick,已授权配额总量Ntotal,当前已消耗配额数量Nthis,上次申请配额时已消耗配额数量Nlast,上一次申请配额到现在的间隔时间Tinterval,预留比例因子σ,用户请求需要的配额数量Nreq,通过如下公式计算每次申请的配额数量:
对象存储网关定时向配额管理中心批量申请存储桶的存储配额;
配额管理中心依据各个对象存储网关的本次申请配额量,向各个对象存储网关分配存储桶的存储配额。
2.根据权利要求1所述的基于预授权的分布式对象存储桶配额管理方法,其特征在于,还包括:
当没有足够配额时,对象存储网关从配额管理中心申请存储桶的预授权配额。
3.根据权利要求1所述的基于预授权的分布式对象存储桶配额管理方法,其特征在于,还包括:
配额管理中心根据分布式存储中保存的配额配置参数,管理存储桶的配额参数和配额使用状态。
4.根据权利要求3所述的基于预授权的分布式对象存储桶配额管理方法,其特征在于,配额管理中心根据分布式存储中保存的配额配置参数,管理存储桶的配额参数和配额使用状态,包括:
分布式存储存储配额配置参数;
配额管理中心从分布式存储中获取配额参数和配额使用状态。
5.根据权利要求4所述的基于预授权的分布式对象存储桶配额管理方法,其特征在于,配额管理中心根据分布式存储中保存的配额配置参数,管理存储桶的配额参数和配额使用状态,还包括:
若配额参数变更,分布式存储服务通知配额管理中心更新配额参数。
6.根据权利要求1所述的基于预授权的分布式对象存储桶配额管理方法,其特征在于,还包括:
服务存储网关处理客户端的IO请求,将对象保存至分布式存储服务并更新元数据信息。
7.根据权利要求6所述的基于预授权的分布式对象存储桶配额管理方法,其特征在于,元数据信息包括:桶的统计状态信息。
8.一种基于预授权的分布式对象存储桶配额管理系统,其特征在于,包括:
对象存储网关,用于根据上个周期消耗配额的数量以及当前配额剩余量计算存储桶的本次申请配额量,包括:设配额周期更新时间Ttick,已授权配额总量Ntotal,当前已消耗配额数量Nthis,上次申请配额时已消耗配额数量Nlast,上一次申请配额到现在的间隔时间Tinterval,预留比例因子σ,用户请求需要的配额数量Nreq,通过如下公式计算每次申请的配额数量:
配额申请模块,用于对象存储网关定时向配额管理中心批量申请存储桶的存储配额;
配额管理中心,通过网络连接至各个对象存储网关,用于依据各个对象存储网关的本次申请配额量,向各个对象存储网关分配存储桶的存储配额。
CN202110173043.XA 2021-02-08 2021-02-08 基于预授权的分布式对象存储桶配额管理方法及系统 Active CN112817765B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110173043.XA CN112817765B (zh) 2021-02-08 2021-02-08 基于预授权的分布式对象存储桶配额管理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110173043.XA CN112817765B (zh) 2021-02-08 2021-02-08 基于预授权的分布式对象存储桶配额管理方法及系统

Publications (2)

Publication Number Publication Date
CN112817765A CN112817765A (zh) 2021-05-18
CN112817765B true CN112817765B (zh) 2024-06-04

Family

ID=75864168

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110173043.XA Active CN112817765B (zh) 2021-02-08 2021-02-08 基于预授权的分布式对象存储桶配额管理方法及系统

Country Status (1)

Country Link
CN (1) CN112817765B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114157614A (zh) * 2021-11-30 2022-03-08 上海派拉软件股份有限公司 一种资源管理方法、装置、设备及存储介质
CN114390058B (zh) * 2022-02-24 2024-03-08 百果园技术(新加坡)有限公司 服务管理系统、方法、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1606301A (zh) * 2004-07-09 2005-04-13 清华大学 一种共享资源访问的调度控制方法及装置
CN106899676A (zh) * 2017-02-28 2017-06-27 郑州云海信息技术有限公司 一种多客户端写入目录配额分配方法
CN106897440A (zh) * 2017-02-28 2017-06-27 郑州云海信息技术有限公司 一种分布式文件系统文件读写处理方法
CN107562386A (zh) * 2017-09-13 2018-01-09 郑州云海信息技术有限公司 一种分布式存储集群的数据写入方法及装置
CN110519336A (zh) * 2019-08-01 2019-11-29 北京浪潮数据技术有限公司 分布式存储系统配额状态更新方法及分布式存储系统
CN111181791A (zh) * 2019-12-31 2020-05-19 浪潮电子信息产业股份有限公司 一种配额管理方法、装置、设备及存储介质
CN111327684A (zh) * 2020-01-21 2020-06-23 苏州浪潮智能科技有限公司 一种分布式对象存储系统的配额管理方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4049525B2 (ja) * 2000-08-16 2008-02-20 富士通株式会社 分散処理システム
US9201896B2 (en) * 2012-11-26 2015-12-01 Red Hat, Inc. Managing distributed storage quotas

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1606301A (zh) * 2004-07-09 2005-04-13 清华大学 一种共享资源访问的调度控制方法及装置
CN106899676A (zh) * 2017-02-28 2017-06-27 郑州云海信息技术有限公司 一种多客户端写入目录配额分配方法
CN106897440A (zh) * 2017-02-28 2017-06-27 郑州云海信息技术有限公司 一种分布式文件系统文件读写处理方法
CN107562386A (zh) * 2017-09-13 2018-01-09 郑州云海信息技术有限公司 一种分布式存储集群的数据写入方法及装置
CN110519336A (zh) * 2019-08-01 2019-11-29 北京浪潮数据技术有限公司 分布式存储系统配额状态更新方法及分布式存储系统
CN111181791A (zh) * 2019-12-31 2020-05-19 浪潮电子信息产业股份有限公司 一种配额管理方法、装置、设备及存储介质
CN111327684A (zh) * 2020-01-21 2020-06-23 苏州浪潮智能科技有限公司 一种分布式对象存储系统的配额管理方法及装置

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Safety and Consistency of Mutable Attributes Using Quotas: A Formal Analysis;Mehrnoosh Shakarami;IEEE;第1-9页 *
分布式加密存储系统的文件数据分布与磁盘配额管理技术研究;谭子军;中国优秀硕士论文电子期刊网;第I137-81页 *
分布式存储系统中用户磁盘空间分配策略;谭子军;何连跃;;计算机工程(09);第50-52页 *
基于配额的资源配送节能研究;刘友生;;计算机工程与应用(13);第85-92页 *
数字有机体存储空间中配额机制的研究与实现;周正娟;中国优秀硕士论文电子期刊网;第I139-46页 *

Also Published As

Publication number Publication date
CN112817765A (zh) 2021-05-18

Similar Documents

Publication Publication Date Title
CN112817765B (zh) 基于预授权的分布式对象存储桶配额管理方法及系统
EP0312865B1 (en) Space management system for a data access system of a file access processor
US6718448B1 (en) Queued locking of a shared resource using multimodal lock types
US6691194B1 (en) Selective association of lock override procedures with queued multimodal lock
US8495266B2 (en) Distributed lock
US8145759B2 (en) Dynamically configurable resource pool
US7246187B1 (en) Method and apparatus for controlling exclusive access to a shared resource in a data storage system
US6757769B1 (en) Cooperative lock override procedure
US5615373A (en) Data lock management in a distributed file server system determines variable lock lifetime in response to request to access data object
US8392668B2 (en) Distributed-state-information-based distributed computing systems and methods and protocols for managing distributed state information
CN107733957B (zh) 分布式服务配置系统及版本号分配方法
US20060190482A1 (en) Method and system for resource management
US7047387B2 (en) Block cache size management via virtual memory manager feedback
Polyzois et al. Evaluation of remote backup algorithms for transaction-processing systems
EP1107132A2 (en) Method and apparatus for reducing network traffic for remote file append operations
EP4213036A1 (en) Data storage method and device
CN116489179A (zh) 业务处理系统及业务处理方法
CN113342507B (zh) 一种分布式锁服务实现方法、装置及计算机设备
CN111291062A (zh) 数据同步写入方法、装置、计算机设备及存储介质
US7526767B1 (en) Methods for automatic group switching according to a resource plan
CN114820218A (zh) 内容操作方法、装置、服务器及存储介质
US7647296B2 (en) Method for estimating a first access time of transactions accessing a database object
CN113342511A (zh) 一种分布式任务管理系统及方法
Kuo et al. A two-version approach for real-time concurrency control and recovery
Lam et al. Transaction scheduling in distributed real-time systems

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