CN106845259B - 一种分布式文件读写权限设置方法 - Google Patents
一种分布式文件读写权限设置方法 Download PDFInfo
- Publication number
- CN106845259B CN106845259B CN201710113817.3A CN201710113817A CN106845259B CN 106845259 B CN106845259 B CN 106845259B CN 201710113817 A CN201710113817 A CN 201710113817A CN 106845259 B CN106845259 B CN 106845259B
- Authority
- CN
- China
- Prior art keywords
- client
- cache
- file
- write
- read
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种分布式文件读写权限设置方法,获取当前等待使用文件的客户端数量;当单一客户端使用当前文件时,MDS授权给所述客户端写缓存权限和读缓存权限;客户端得到文件使用权限后,对该客户端使用文件的读写权限进行标记及统计;当至少两个客户端使用当前文件时,MDS授权给每个客户端直写权限和直读权限;每个客户端获取文件使用权限后,将本次使用文件的权限发送给MDS,MDS收到所述客户端的文件使用权限后,对该客户端使用文件的读写权限进行标记及统计。保证单一客户端操作的情况下通过读写缓存提高文件读写效率,多客户端操作的情况下通过数据直写方式保证数据一致性。
Description
技术领域
本发明涉及数据处理领域,尤其涉及一种分布式文件读写权限设置方法。
背景技术
随着计算机技术的快速发展,各种形式的信息数据量越来越大,根据行业情况不同,对数据的读写方式存在差异,针对同一个文件,同一时刻可以有一个或者多个客户端进行读写。多个客户端同时对MDS进行数据处理时,容易导致***访问量过大,致使***瘫痪,影响***正常运行。
发明内容
为了克服上述现有技术中的不足,本发明提供一种分布式文件读写权限设置方法,方法包括:
获取当前等待使用文件的客户端数量;
当单一客户端使用当前文件时, MDS授权给所述客户端写缓存权限和读缓存权限;
客户端得到文件使用权限后,将本次使用文件的权限发送给MDS,MDS收到所述客户端的文件使用权限后,对该客户端使用文件的读写权限进行标记及统计;
当至少两个客户端使用当前文件时, MDS授权给每个客户端直写权限和直读权限;
每个客户端获取文件使用权限后,将本次使用文件的权限发送给MDS,MDS收到所述客户端的文件使用权限后,对该客户端使用文件的读写权限进行标记及统计。
优选地,当单一客户端的写缓存权限失效后,客户端将在缓存写入的文件存储到客户端的存储设备;
客户端的读缓存权限失效后,将本地缓存数据作失效处理。
优选地,在单一客户端具有写缓存权限和读缓存权限时,所述客户端将脏数据存储到客户端的存储设备;
当其他客户端也请求对所述文件进行读写时,MDS将单一客户端的写缓存权限和读缓存权限收回,所述客户端将脏数据存储到客户端的存储设备,作废缓存数据;
MDS授权给每个客户端直写权限和直读权限。
优选地,被访问的文件关闭句柄后,MDS收回所有访问该文件的权限。
优选地,当单一客户端具有读写缓存权限时,其他客户端请求对所述文件进行读写,MDS将单一客户端写入的文件数据更新至元数据,MDS对单一客户端写入的脏数据不做刷新。
优选地,步骤:当单一客户端使用当前文件时, MDS授权给所述客户端写缓存权限和读缓存权限还包括:
单一客户端对当前文件使用写缓存权限,进行写数据时,将写入数据先缓存在第一缓存中;
第一缓存数据处理模块根据预设的压缩量将第一缓存中多个数据进行组合压缩,形成压缩数据块;
第一缓存数据处理模块针对压缩数据块中的每个数据对应生成一元数据,元数据记录压缩前后的每个数据处于第一缓存中的位置;
将压缩数据块以及与压缩数据块相对应的元数据下发给第二缓存;
第二缓存保存压缩数据块和元数据;
当单一客户端的写缓存权限被收回,或者单一客户端读写操作完成时,第二缓存将保存的压缩数据块和元数据保存到客户端的存储设备。
优选地,预设的压缩量的获取方式包括:第一缓存数据处理模块在第一缓存随机抽取N个数据,N为非零的自然数,对抽取的数据进行组合压缩,组合压缩后计算出N个数据的平均MD5值,将该值作为预设压缩量。
从以上技术方案可以看出,本发明具有以下优点:
通过对文件读写权限控制,可以保证单一客户端操作的情况下通过读写缓存提高文件读写效率,多客户端操作的情况下通过数据直写方式保证数据一致性。
附图说明
为了更清楚地说明本发明的技术方案,下面将对描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为分布式文件读写权限设置方法的整体流程图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将运用具体的实施例及附图,对本发明保护的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本专利中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利保护的范围。
本实施例提供一种分布式文件读写权限设置方法,如图1所示,方法包括:
S1:获取当前等待使用文件的客户端数量;
S2:当单一客户端使用当前文件时, MDS授权给所述客户端写缓存权限和读缓存权限;
S3:客户端得到文件使用权限后,将本次使用文件的权限发送给MDS,MDS收到所述客户端的文件使用权限后,对该客户端使用文件的读写权限进行标记及统计;
S4:当至少两个客户端使用当前文件时, MDS授权给每个客户端直写权限和直读权限;
S5:每个客户端获取文件使用权限后,将本次使用文件的权限发送给MDS,MDS收到所述客户端的文件使用权限后,对该客户端使用文件的读写权限进行标记及统计。
通过四种读写权限控制,可以保证单一客户端操作的情况下通过读写缓存提高文件读写效率,多客户端操作的情况下通过数据直写方式保证数据一致性。
本实施例中,当单一客户端的写缓存权限失效后,客户端将在缓存写入的文件存储到客户端的存储设备;
客户端的读缓存权限失效后,将本地缓存数据作失效处理。
具体的,客户端打开文件,将读写标记传递到MDS,MDS统计所有客户端的读写请求,单一客户端授权读写缓存权限,多客户端授权直读直写权限。读写缓存权限回收后,本地缓存作废处理。
本实施例中,在单一客户端具有写缓存权限和读缓存权限时,所述客户端将脏数据存储到客户端的存储设备;
当其他客户端也请求对所述文件进行读写时,MDS将单一客户端的写缓存权限和读缓存权限收回,所述客户端将脏数据存储到客户端的存储设备,作废缓存数据;
MDS授权给每个客户端直写权限和直读权限。
本实施例中,被访问的文件关闭句柄后,MDS收回所有访问该文件的权限。
本实施例中,当单一客户端具有读写缓存权限时,其他客户端请求对所述文件进行读写,MDS将单一客户端写入的文件数据更新至元数据,MDS对单一客户端写入的脏数据不做刷新。
本实施例中,步骤:当单一客户端使用当前文件时, MDS授权给所述客户端写缓存权限和读缓存权限还包括:客户端将缓存空间划分为两层,包括:第一缓存,第二缓存;
单一客户端对当前文件使用写缓存权限,进行写数据时,将写入数据先缓存在第一缓存中;
第一缓存数据处理模块根据预设的压缩量将第一缓存中多个数据进行组合压缩,形成压缩数据块;
第一缓存数据处理模块针对压缩数据块中的每个数据对应生成一元数据,元数据记录压缩前后的每个数据处于第一缓存中的位置;
将压缩数据块以及与压缩数据块相对应的元数据下发给第二缓存;
第二缓存保存压缩数据块和元数据;
当单一客户端的写缓存权限被收回,或者单一客户端读写操作完成时,第二缓存将保存的压缩数据块和元数据保存到客户端的存储设备。
预设的压缩量的获取方式包括:第一缓存数据处理模块在第一缓存随机抽取N个数据,N为非零的自然数,对抽取的数据进行组合压缩,组合压缩后计算出N个数据的平均MD5值,将该值作为预设压缩量。
这样,单一客户端写入对缓存的数据进行实时压缩,可以事先预设数据的压缩量,保证压缩效果。并且在数据储存至存储设备之前先对写入数据进行了压缩,节约了存储设备空间。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (5)
1.一种分布式文件读写权限设置方法,其特征在于,方法包括:
获取当前等待使用文件的客户端数量;
当单一客户端使用当前文件时,MDS授权给所述客户端写缓存权限和读缓存权限;
客户端得到文件使用权限后,将本次使用文件的权限发送给MDS,MDS收到所述客户端的文件使用权限后,对该客户端使用文件的读写权限进行标记及统计;
当至少两个客户端使用当前文件时,MDS授权给每个客户端直写权限和直读权限;
每个客户端获取文件使用权限后,将本次使用文件的权限发送给MDS,MDS收到所述客户端的文件使用权限后,对该客户端使用文件的读写权限进行标记及统计;
在单一客户端具有写缓存权限和读缓存权限时,所述客户端将脏数据存储到客户端的存储设备;
当其他客户端也请求对所述文件进行读写时,MDS将单一客户端的写缓存权限和读缓存权限收回,所述客户端将脏数据存储到客户端的存储设备,作废缓存数据;
MDS授权给每个客户端直写权限和直读权限;
当单一客户端具有读写缓存权限时,其他客户端请求对所述文件进行读写,MDS将单一客户端写入的文件数据更新至元数据,MDS对单一客户端写入的脏数据不做刷新。
2.根据权利要求1所述的分布式文件读写权限设置方法,其特征在于,方法包括:
当单一客户端的写缓存权限失效后,客户端将在缓存写入的文件存储到客户端的存储设备;
客户端的读缓存权限失效后,将本地缓存数据作失效处理。
3.根据权利要求1所述的分布式文件读写权限设置方法,其特征在于,方法包括:
被访问的文件关闭句柄后,MDS收回所有访问该文件的权限。
4.根据权利要求1所述的分布式文件读写权限设置方法,其特征在于,方法包括:
步骤:当单一客户端使用当前文件时,MDS授权给所述客户端写缓存权限和读缓存权限还包括:
单一客户端对当前文件使用写缓存权限,进行写数据时,将写入数据先缓存在第一缓存中;
第一缓存数据处理模块根据预设的压缩量将第一缓存中多个数据进行组合压缩,形成压缩数据块;
第一缓存数据处理模块针对压缩数据块中的每个数据对应生成一元数据,元数据记录压缩前后的每个数据处于第一缓存中的位置;
将压缩数据块以及与压缩数据块相对应的元数据下发给第二缓存;
第二缓存保存压缩数据块和元数据;
当单一客户端的写缓存权限被收回,或者单一客户端读写操作完成时,第二缓存将保存的压缩数据块和元数据保存到客户端的存储设备。
5.根据权利要求4所述的分布式文件读写权限设置方法,其特征在于,
预设的压缩量的获取方式包括:第一缓存数据处理模块在第一缓存随机抽取N个数据,N为非零的自然数,对抽取的数据进行组合压缩,组合压缩后计算出N个数据的平均MD5值,将该值作为预设压缩量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710113817.3A CN106845259B (zh) | 2017-02-28 | 2017-02-28 | 一种分布式文件读写权限设置方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710113817.3A CN106845259B (zh) | 2017-02-28 | 2017-02-28 | 一种分布式文件读写权限设置方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106845259A CN106845259A (zh) | 2017-06-13 |
CN106845259B true CN106845259B (zh) | 2019-12-17 |
Family
ID=59137121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710113817.3A Active CN106845259B (zh) | 2017-02-28 | 2017-02-28 | 一种分布式文件读写权限设置方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106845259B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107704596B (zh) * | 2017-10-13 | 2021-06-29 | 郑州云海信息技术有限公司 | 一种读取文件的方法、装置及设备 |
CN108595109B (zh) * | 2017-12-29 | 2021-06-29 | 郑州云海信息技术有限公司 | 一种基于Ceph分布式存储***的多客户端写的方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101567003A (zh) * | 2009-05-27 | 2009-10-28 | 清华大学 | 并行文件***中资源的管理和分配方法 |
CN102014158A (zh) * | 2010-11-29 | 2011-04-13 | 北京兴宇中科科技开发股份有限公司 | 一种云存储服务客户端高效细粒度数据缓存***与方法 |
CN102136003A (zh) * | 2011-03-25 | 2011-07-27 | 上海交通大学 | 大规模分布式存储*** |
CN102541983A (zh) * | 2011-10-25 | 2012-07-04 | 无锡城市云计算中心有限公司 | 一种分布式文件***中多客户端缓存同步的方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2501098A (en) * | 2012-04-12 | 2013-10-16 | Qatar Foundation | Fragmenting back up copy for remote storage |
CN103095687B (zh) * | 2012-12-19 | 2015-08-26 | 华为技术有限公司 | 元数据处理方法及装置 |
CN105095495B (zh) * | 2015-08-21 | 2019-01-25 | 浪潮(北京)电子信息产业有限公司 | 一种分布式文件***缓存管理方法和*** |
CN105959420A (zh) * | 2016-07-15 | 2016-09-21 | 浪潮(北京)电子信息产业有限公司 | 多客户端元数据同步更新方法及*** |
-
2017
- 2017-02-28 CN CN201710113817.3A patent/CN106845259B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101567003A (zh) * | 2009-05-27 | 2009-10-28 | 清华大学 | 并行文件***中资源的管理和分配方法 |
CN102014158A (zh) * | 2010-11-29 | 2011-04-13 | 北京兴宇中科科技开发股份有限公司 | 一种云存储服务客户端高效细粒度数据缓存***与方法 |
CN102136003A (zh) * | 2011-03-25 | 2011-07-27 | 上海交通大学 | 大规模分布式存储*** |
CN102541983A (zh) * | 2011-10-25 | 2012-07-04 | 无锡城市云计算中心有限公司 | 一种分布式文件***中多客户端缓存同步的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106845259A (zh) | 2017-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112018002951B4 (de) | Verwenden eines spurformatcodes in einem cache-steuerblock für eine spur in einem cache, um lese- und schreibanforderungen in bezug auf die spur im cache zu verarbeiten | |
DE102018214013A1 (de) | Automatische kontinuierliche Prüfpunktsetzung | |
US11531482B2 (en) | Data deduplication method and apparatus | |
US8954673B1 (en) | Using a conditional read request and a hash to determine synchronization of data in a cache at a host with data in storage array | |
DE112014005521B4 (de) | Speichermodul und Verfahren zum Verwalten des Abbildens logischer Adressen auf physikalische Adressen | |
WO2016086819A1 (zh) | 将数据写入叠瓦状磁记录smr硬盘的方法及装置 | |
JP2020528624A5 (zh) | ||
US20160170878A1 (en) | Apparatus, system and method for caching compressed data | |
CN104077380B (zh) | 一种重复数据删除方法、装置及*** | |
DE102017104125A1 (de) | Zonen von Übersetzungstabellen von logischen in physische Datenadressen mit parallelisiertem Log-Listenreplay | |
DE102018128601A1 (de) | Hintergrunddatenauffrischung unter Verwendung eines Systemzeitstempels in Speicherungseinrichtungen | |
DE102017124079A1 (de) | Speichervorrichtung zum Verarbeiten von beschädigten Metadaten und Verfahren zum Betreiben derselben | |
US20150212937A1 (en) | Storage translation layer | |
CN106547641B (zh) | 一种基于卷的cdp备份方法 | |
US10884926B2 (en) | Method and system for distributed storage using client-side global persistent cache | |
CN105808163B (zh) | 一种访问叠瓦式磁记录smr硬盘的方法及服务器 | |
US10489289B1 (en) | Physical media aware spacially coupled journaling and trim | |
TW201120904A (en) | Power interrupt management | |
JP2017079053A (ja) | ストレージジャーナリングを改善する方法およびシステム | |
US20170255561A1 (en) | Technologies for increasing associativity of a direct-mapped cache using compression | |
DE102016001066A1 (de) | Zuordnung der logischen Blockadresse für Festplattenlaufwerke | |
CN106845259B (zh) | 一种分布式文件读写权限设置方法 | |
CN106897440A (zh) | 一种分布式文件***文件读写处理方法 | |
US9218294B1 (en) | Multi-level logical block address (LBA) mapping table for solid state | |
JP2017510902A5 (zh) |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20191115 Address after: 215100 No. 1 Guanpu Road, Guoxiang Street, Wuzhong Economic Development Zone, Suzhou City, Jiangsu Province Applicant after: Suzhou Wave Intelligent Technology Co., Ltd. Address before: 450000 Henan province Zheng Dong New District of Zhengzhou City Xinyi Road No. 278 16 floor room 1601 Applicant before: Zhengzhou Yunhai Information Technology Co. Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |