CN103714183B - 一种元数据租约期限的动态获取方法和系统 - Google Patents
一种元数据租约期限的动态获取方法和系统 Download PDFInfo
- Publication number
- CN103714183B CN103714183B CN201410012694.0A CN201410012694A CN103714183B CN 103714183 B CN103714183 B CN 103714183B CN 201410012694 A CN201410012694 A CN 201410012694A CN 103714183 B CN103714183 B CN 103714183B
- Authority
- CN
- China
- Prior art keywords
- metadata
- client
- node
- time limit
- lease
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000001914 filtration Methods 0.000 claims description 3
- 230000009471 action Effects 0.000 claims description 2
- 241001269238 Data Species 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000009342 intercropping Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/122—File system administration, e.g. details of archiving or snapshots using management policies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种元数据租约期限的动态获取方法和系统,其中,所述方法包括:客户端从应用的操作请求中筛选出元数据请求,所述元数据请求包括元数据节点和元数据操作类型;客户端根据元数据操作类型统计操作元数据节点存储的数据所需的时间;客户端将所需的时间作为其请求的元数据的租约期限和所述元数据请求一并发送至元数据服务器。通过本发明获取的元数据租约期限,更加准确,并且能够满足客户端在不同应用操作下对元数据的要求。
Description
技术领域
本发明涉及元数据租约期限的获取机制,尤其涉及一种元数据租约期限的动态获取方法和系统。
背景技术
在分布式文件系统中,为了减少客户端向元数据服务器端发送的网络请求次数,客户端通常会将从元数据服务器端请求的元数据暂存在缓存中。为了保证客户端缓存的元数据与元数据服务器端存储的对应数据一致,需要对客户端缓存的元数据采用缓存期限管理机制,租约(leases)就是一种常用的缓存期限管理机制。
租约(leases),相当于合同,即元数据服务器端给予客户端在一定期限内对所请求的元数据控制修改的权利。客户端从元数据服务器端请求到元数据的同时获取该元数据的租约。租约内,服务器端如果要修改元数据,需要征求拥有该元数据租约的客户端同意;如果客户端同意了元数据服务器端的修改请求,客户端需要清空缓存,重新接收元数据服务器端发送的修改后的数据。租约到期后,如果客户端还需要读取缓存中的数据,需要重新向元数据服务器端申请该元数据并获取新的租约,这个操作称为“续约”。
在租约机制中,租约期限的选择是性能的关键。租约期限过小,会加重客户端的续约开销;租约期限过长,会造成伪共享,即拥有元数据租约的客户端即便不需要再读取元数据,服务器端对该元数据的操作仍然需要该客户端的同意。因此,租约的选择需要在最小化续约开销与最小化伪共享之间进行权衡。
现有元数据服务器端通常采用静态的方法指定元数据的租约期限。元数据服务器通过分析客户端上的应用对自身访问的频率、并发特征等信息得到一个元数据租约期限的经验值,并将该元数据租约期限应用于所有客户端的数据请求。
随着应用操作种类的增多,执行不同应用操作的客户端对不同元数据所需的占用时间也不尽相同,因此上述对所有元数据均采用相同的租约期限的方法已不再适用。
发明内容
本发明提供了一种元数据租约期限的动态获取方法和系统,以解决如何根据客户端上的应用操作确定元数据租约期限的问题。
为解决上述技术问题,本发明提供了一种元数据租约期限的动态获取方法,所述方法包括:
客户端从应用的操作请求中筛选出元数据请求,所述元数据请求包括元数据节点和元数据操作类型;
客户端根据元数据操作类型统计操作元数据节点存储的数据所需的时间;
客户端将所需的时间作为其请求的元数据的租约期限和所述元数据请求一并发送至元数据服务器。
进一步地,所述客户端根据元数据操作类型统计操作元数据节点存储的数据所需的时间,包括:
客户端根据元数据节点获取元数据索引节点;
客户端统计为执行该操作所述元数据索引节点从请求到释放的时间跨度;
客户端将所述时间跨度作为操作元数据节点存储的数据所需的时间。
进一步地,所述方法包括:
当索引到元数据节点需要多个源数据索引节点时,客户端统计所有元数据索引节点从请求到释放时间跨度的平均值;
客户端将所述时间跨度的平均值作为操作元数据节点存储的数据所需的时间。
进一步地,所述方法还包括:
元数据服务器将请求的元数据租约期限设定为该元数据的租约期限,在客户端从元数据节点获取元数据时将设定的元数据租约期限发送给所述客户端。
为解决上述技术问题,本发明还提供了一种元数据租约期限的动态获取系统,所述系统包括客户端,所述客户端包括统计模块以及元数据租约期限请求模块,其中,
所述统计模块,用于从应用的操作请求中筛选出元数据请求,所述元数据请求包括元数据节点和元数据操作类型,并根据元数据操作类型统计操作元数据节点存储的数据所需的时间,将统计结果发送至元数据租约期限请求模块;
所述元数据租约期限请求模块,用于与元数据服务器进行交互,将统计的时间作为客户端向元数据服务器请求的元数据租约期限和所述元数据请求一并发送至元数据服务器。
进一步地,所述统计模块,用于根据元数据的操作类型统计操作元数据节点存储的数据所需的时间,包括:
根据元数据节点获取元数据索引节点;
统计为执行该操作所述元数据索引节点从请求到释放的时间跨度;
将所述时间跨度作为操作元数据节点存储的数据所需的时间。
进一步地,
所述统计模块,用于在索引到元数据节点需要多个源数据索引节点时,统计所有元数据索引节点从请求到释放时间跨度的平均值,将所述时间跨度的平均值作为操作元数据节点存储的数据所需的时间。
进一步地,所述系统还包括元数据服务器;
所述元数据服务器,用于将请求的元数据租约期限设定为该元数据的租约期限,在客户端从元数据节点获取元数据时将设定的元数据租约期限发送给所述客户端。
上述技术方案对元数据租约期限的获取过程基于对元数据的实际操作,相对于现有技术给出的经验元数据租约期限,更加准确;并且,上述技术方案给出的针对元数据操作类型的元数据租约期限,能够满足客户端在不同应用操作下对元数据的要求。
附图说明
图1为本实施例的元数据租约期限的动态获取方法流程图;
图2为本实施例的元数据租约期限的动态获取系统组成图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图1为本实施例的元数据租约期限的动态获取方法流程图。
S101客户端从应用的操作请求中筛选出元数据请求,所述元数据请求包括元数据节点和元数据操作类型;
如,应用要进行修改文件的操作,客户端从应用发送的修改文件操作请求中筛选出打开文件操作和关闭文件操作的元数据请求;
S102客户端根据元数据操作类型统计操作元数据节点存储的数据所需的时间;
客户端根据元数据节点获取元数据索引节点;所述元数据索引节点存储在客户端上;客户端统计为执行该元数据操作所述元数据索引节点从请求到释放的时间跨度;客户端将所述时间跨度作为操作元数据节点存储的数据所需的时间;
如,客户端获取到打开文件操作和关闭文件操作的元数据请求中包含的元数据节点后,确定索引到所述元数据节点的元数据索引节点;记录该索引节点(记为n1)被请求的时间(记为t1),以及该索引节点n1被释放的时间(记为t2),则时长(t2-t1)即为元数据索引节点从请求到释放的时间跨度;
当索引到元数据节点需要多个源数据索引节点时,客户端可以统计所有元数据索引节点从请求到释放时间跨度的平均值,将所述时间跨度的平均值作为操作元数据节点存储的数据所需的时间;
上述统计结果可以先写入内存,然后通过后台的异步线程保存到磁盘中,方便后续读取;
S103客户端将所需的时间作为其请求的元数据的租约期限和所述元数据请求一并发送至元数据服务器;
元数据服务器将请求的元数据租约期限设定为该元数据的租约期限,在客户端从元数据节点获取元数据时将设定的元数据租约期限发送给所述客户端。
在其他实施例中,客户端确定请求的元数据租约期限时,除考虑元数据索引节点从请求到释放的时间跨度外,还可考虑客户端和服务器间的传输时延,以使请求的元数据租约期限更加贴近实际操作元数据节点存储的数据的时间。
上述实施例对元数据租约期限的获取过程基于对元数据的实际操作,相对于现有技术给出的经验元数据租约期限,更加准确;并且,上述实施例给出了针对元数据操作类型的元数据租约期限,能够满足客户端在不同应用操作下对元数据的要求。
图2为本实施例的元数据租约期限的动态获取系统组成图。
该系统包括客户端,所述客户端包括统计模块以及元数据租约期限请求模块,其中,
所述统计模块,用于从应用的操作请求中筛选出元数据请求,所述元数据请求包括元数据节点和元数据操作类型,并根据元数据操作类型统计操作元数据节点存储的数据所需的时间,将统计结果发送至元数据租约期限请求模块;
上述统计模块根据元数据操作类型统计操作元数据节点存储的数据所需的时间具体包括:根据元数据节点获取元数据索引节点;统计为执行该操作所述元数据索引节点从请求到释放的时间跨度;将所述时间跨度作为操作元数据节点存储的数据所需的时间;
上述统计模块在索引到元数据节点需要多个源数据索引节点时,统计所有元数据索引节点从请求到释放时间跨度的平均值,将所述时间跨度的平均值作为操作元数据节点存储的数据所需的时间;
所述元数据租约期限请求模块,用于与元数据服务器进行交互,将统计的时间作为客户端向元数据服务器请求的元数据租约期限和所述元数据请求一并发送至元数据服务器。
上述元数据租约期限的动态获取系统还可包括元数据服务器,用于将请求的元数据租约期限设定为该元数据的租约期限,在客户端从元数据节点获取元数据时将设定的元数据租约期限发送给所述客户端。
上述实施例对元数据租约期限的获取过程基于对元数据的实际操作,相对于现有技术给出的经验元数据租约期限,更加准确;并且,上述实施例给出了针对元数据操作类型的元数据租约期限,能够满足客户端在不同应用操作下对元数据的要求。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
需要说明的是,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (8)
1.一种元数据租约期限的动态获取方法,其特征在于,所述方法包括:
客户端从应用的操作请求中筛选出元数据请求,所述元数据请求包括元数据节点和元数据操作类型;
客户端根据元数据操作类型统计操作元数据节点存储的数据所需的时间;
客户端将所需的时间作为其请求的元数据的租约期限和所述元数据请求一并发送至元数据服务器。
2.如权利要求1所述的方法,其特征在于,所述客户端根据元数据操作类型统计操作元数据节点存储的数据所需的时间,包括:
客户端根据元数据节点获取元数据索引节点;
客户端统计为执行该操作所述元数据索引节点从请求到释放的时间跨度;
客户端将所述时间跨度作为操作元数据节点存储的数据所需的时间。
3.如权利要求2所述的方法,其特征在于,所述方法包括:
当索引到元数据节点需要多个元数据索引节点时,客户端统计所有元数据索引节点从请求到释放时间跨度的平均值;
客户端将所述时间跨度的平均值作为操作元数据节点存储的数据所需的时间。
4.如权利要求1~3中任一项所述的方法,其特征在于,所述方法还包括:
元数据服务器将请求的元数据租约期限设定为该元数据的租约期限,在客户端从元数据节点获取元数据时将设定的元数据租约期限发送给所述客户端。
5.一种元数据租约期限的动态获取系统,其特征在于,所述系统包括客户端,所述客户端包括统计模块以及元数据租约期限请求模块,其中,
所述统计模块,用于从应用的操作请求中筛选出元数据请求,所述元数据请求包括元数据节点和元数据操作类型,并根据元数据操作类型统计操作元数据节点存储的数据所需的时间,将统计结果发送至元数据租约期限请求模块;
所述元数据租约期限请求模块,用于与元数据服务器进行交互,将统计的时间作为客户端向元数据服务器请求的元数据租约期限和所述元数据请求一并发送至元数据服务器。
6.如权利要求5所述的系统,其特征在于,所述统计模块,用于根据元数据的操作类型统计操作元数据节点存储的数据所需的时间,包括:
根据元数据节点获取元数据索引节点;
统计为执行该操作所述元数据索引节点从请求到释放的时间跨度;
将所述时间跨度作为操作元数据节点存储的数据所需的时间。
7.如权利要求6所述的系统,其特征在于,
所述统计模块,用于在索引到元数据节点需要多个元数据索引节点时,统计所有元数据索引节点从请求到释放时间跨度的平均值,将所述时间跨度的平均值作为操作元数据节点存储的数据所需的时间。
8.如权利要求5~7中任一项所述的系统,其特征在于,所述系统还包括元数据服务器;
所述元数据服务器,用于将请求的元数据租约期限设定为该元数据的租约期限,在客户端从元数据节点获取元数据时将设定的元数据租约期限发送给所述客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410012694.0A CN103714183B (zh) | 2014-01-10 | 2014-01-10 | 一种元数据租约期限的动态获取方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410012694.0A CN103714183B (zh) | 2014-01-10 | 2014-01-10 | 一种元数据租约期限的动态获取方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103714183A CN103714183A (zh) | 2014-04-09 |
CN103714183B true CN103714183B (zh) | 2017-02-15 |
Family
ID=50407158
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410012694.0A Active CN103714183B (zh) | 2014-01-10 | 2014-01-10 | 一种元数据租约期限的动态获取方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103714183B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111177197B (zh) * | 2019-12-26 | 2023-03-14 | 北京仁科互动网络技术有限公司 | 一种缓存处理方法及系统 |
CN111158597A (zh) * | 2019-12-28 | 2020-05-15 | 浪潮电子信息产业股份有限公司 | 一种元数据读取方法、装置及电子设备和存储介质 |
CN112905556B (zh) * | 2021-02-09 | 2022-11-15 | 山东英信计算机技术有限公司 | 分布式系统的目录租约管理方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101997920A (zh) * | 2010-11-18 | 2011-03-30 | 中兴通讯股份有限公司 | Dhcp租约处理方法及装置 |
CN102521224A (zh) * | 2010-09-17 | 2012-06-27 | 微软公司 | 目录租赁 |
CN102546751A (zh) * | 2011-12-06 | 2012-07-04 | 华中科技大学 | 一种分布式文件系统分级元数据缓存控制方法 |
CN103262090A (zh) * | 2010-10-27 | 2013-08-21 | 马普科技促进协会 | 使用存储租约保护数据完整性 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7783664B2 (en) * | 2004-12-17 | 2010-08-24 | Microsoft Corporation | Method and system for protecting the consistency of information in a distributed file system |
US8086634B2 (en) * | 2008-10-07 | 2011-12-27 | Hitachi, Ltd. | Method and apparatus for improving file access performance of distributed storage system |
US8185566B2 (en) * | 2009-01-15 | 2012-05-22 | Microsoft Corporation | Client-based caching of remote files |
-
2014
- 2014-01-10 CN CN201410012694.0A patent/CN103714183B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521224A (zh) * | 2010-09-17 | 2012-06-27 | 微软公司 | 目录租赁 |
CN103262090A (zh) * | 2010-10-27 | 2013-08-21 | 马普科技促进协会 | 使用存储租约保护数据完整性 |
CN101997920A (zh) * | 2010-11-18 | 2011-03-30 | 中兴通讯股份有限公司 | Dhcp租约处理方法及装置 |
CN102546751A (zh) * | 2011-12-06 | 2012-07-04 | 华中科技大学 | 一种分布式文件系统分级元数据缓存控制方法 |
Non-Patent Citations (2)
Title |
---|
基于三方传送的存储管理系统设计与实现;姜明华;《计算机工程与应用》;20071231;第43卷(第33期);第37-40页 * |
面向多租约SaaS 应用的负载均衡机制研究与实现;汪德帅;《小型微型计算机系统》;20110131(第1期);第71-77页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103714183A (zh) | 2014-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10768857B2 (en) | Storage system having a controller that selects a die of a solid state disk to store data | |
US10956246B1 (en) | Isolated read channel management interfaces at streaming data service | |
KR101865491B1 (ko) | 다중-익스텐트 연산에 대한 원자 기록 | |
KR101891425B1 (ko) | 분산형 저장 시스템에서의 이름공간 관리 | |
JP6416279B2 (ja) | 拡張縮小可能なファイル格納サービス | |
KR101867949B1 (ko) | 가변 스트라이프 크기를 사용하는 파일 저장소 | |
US11075984B1 (en) | Workload management at streaming data service supporting persistent connections for reads | |
CN105224255B (zh) | 一种存储文件管理方法及装置 | |
CN105549905A (zh) | 一种多虚拟机访问分布式对象存储系统的方法 | |
DE112019002948T5 (de) | Feststellen einer optimalen speicherumgebung für datensätze und für das migrieren von datensätzen | |
JP2017510004A (ja) | 分散格納システムにおけるセッション管理 | |
US11449479B2 (en) | Data migration methods and system | |
CN105653642A (zh) | 分布式文件系统的数据管理方法和装置 | |
CN103714183B (zh) | 一种元数据租约期限的动态获取方法和系统 | |
US11509700B2 (en) | Stream data record reads using push-mode persistent connections | |
US11675501B2 (en) | Streaming data service with isolated read channels | |
CN104657260A (zh) | 控制分布式节点间访问共享资源的分布式锁的实现方法 | |
US20140089562A1 (en) | Efficient i/o processing in storage system | |
US20230239345A1 (en) | Isolated read channel categories at streaming data service | |
US20140351550A1 (en) | Memory management apparatus and method for threads of data distribution service middleware | |
CN105930178B (zh) | 一种可配置的参数动态装载方法及系统 | |
WO2016095760A1 (zh) | 数据动态重分布的方法、数据节点、名字节点及系统 | |
JP2015153123A (ja) | アクセス制御プログラム、アクセス制御方法、およびアクセス制御装置 | |
US11070600B1 (en) | Optimization techniques to support lagging readers at streaming data service | |
CN108897618A (zh) | 一种异构内存架构下基于任务感知的资源分配方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |