CN105245624A - 一种云存储文件系统 - Google Patents
一种云存储文件系统 Download PDFInfo
- Publication number
- CN105245624A CN105245624A CN201510789401.4A CN201510789401A CN105245624A CN 105245624 A CN105245624 A CN 105245624A CN 201510789401 A CN201510789401 A CN 201510789401A CN 105245624 A CN105245624 A CN 105245624A
- Authority
- CN
- China
- Prior art keywords
- file
- block
- module
- destination
- capacity
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- 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/13—File access structures, e.g. distributed indices
-
- 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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种云存储文件系统,该系统包括:文件管理机和N个块服务器;其中,文件管理机包括:文件块创建模块,用于当客户端需要将目标文件写入目标块服务器时,在目标块服务器上为目标文件创建一个块容量大小可变的目标文件块;块容量调整模块,用于获取目标文件的文件大小,并根据目标文件的文件大小,对目标文件块的块容量大小进行调整,以使目标文件块的块容量大小与目标文件的文件大小相一致;文件存储模块,用于当块容量控制模块对目标文件块的块容量大小进行调整后,将目标文件存储至目标文件块。本申请避免了目标文件的文件大小可能超过目标文件块的块容量大小的情况,也即避免了发生块溢出的情况,确保了文件能够得到完整保存。
Description
技术领域
本发明涉及云存储技术领域,特别涉及一种云存储文件系统。
背景技术
随着互联网的发展,人们需要对越来越多的网络数据进行存储和处理,为了适应这种需求,人们提出了基于云计算的云存储文件系统。现有的云存储文件系统通常是采用GFS文件系统(GFS,即GoogleFileSystem,谷歌文件系统)的形式对数据进行存储。然而,GFS文件系统是利用块容量大小固定的文件块对目标文件进行存储的,当目标文件的文件大小超过文件块的块容量大小时,便会导致块溢出的问题,从而使得文件保存不完整。
综上所述可以看出,如何避免发生块溢出的情况,以确保文件能够得到完整保存是目前亟待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种云存储文件系统,避免了发生块溢出的情况,从而确保了文件能够得到完整保存。其具体方案如下:
一种云存储文件系统,包括文件管理机和N个块服务器,N为正整数;其中,所述文件管理机包括:
文件块创建模块,用于当客户端需要将目标文件写入目标块服务器时,在所述目标块服务器上为所述目标文件创建一个块容量大小可变的目标文件块;其中,所述目标块服务器为所述N个块服务器中与所述目标文件对应的块服务器;
块容量调整模块,用于获取所述目标文件的文件大小,并根据所述目标文件的文件大小,对所述目标文件块的块容量大小进行调整,以使所述目标文件块的块容量大小与所述目标文件的文件大小相一致;
文件存储模块,用于当所述块容量调整模块对所述目标文件块的块容量大小进行调整后,将所述目标文件存储至所述目标文件块。
优选的,所述目标文件块为具有唯一全局标识的文件块。
优选的,所述文件管理机还包括:
元数据存储模块,用于对所述云存储文件系统的元数据进行存储;
元数据管理模块,用于对所述元数据存储模块中存储的元数据进行维护管理。
优选的,所述云存储文件系统的元数据包括命名空间、文件访问控制信息、文件ID与文件块之间的映射关系和文件块的位置信息。
优选的,所述文件管理机还包括:
读取指令接收模块,用于接收客户端发送的用于读取目标文件集的文件读取指令;所述目标文件集包括M个文件,M为正整数;所述文件读取指令携带有所述M个文件中每个文件的文件ID;
位置查找模块,用于利用所述文件读取指令中携带的文件ID,从所述元数据存储模块存储的元数据中查找出所述M个文件所对应的文件块的位置信息;
文件读取模块,用于根据所述位置查找模块查找到的位置信息,从相应的文件块中一次性地读取出相应的文件,并将读取到的文件返回至客户端。
优选的,所述云存储文件系统,还包括:
文件级别设定模块,用于对需要写入块服务器的文件的文件级别进行设定。
优选的,所述文件级别包括低级、中级和高级。
优选的,所述云存储文件系统,还包括:
第一备份器,用于对第一类型文件和第二类型文件进行备份,所述第一类型文件为需要写入块服务器的文件级别为中级的文件,所述第二类型文件为需要写入块服务器的文件级别为高级的文件。
优选的,所述云存储文件系统,还包括:
第二备份器,用于在所述第一备份器对所述第二类型文件进行备份的基础上,对所述第二类型文件进行再次备份。
优选的,所述云存储文件系统,还包括:
第一故障提示模块,用于当所述N个块服务器中的任一块服务器出现故障后,生成相应的故障提示信息。
本发明中,云存储文件系统包括文件管理机和N个块服务器;其中,文件管理机包括:文件块创建模块用于当客户端需要将目标文件写入目标块服务器时,在目标块服务器上为目标文件创建一个块容量大小可变的目标文件块;块容量调整模块用于获取目标文件的文件大小,并根据目标文件的文件大小,对目标文件块的块容量大小进行调整,以使目标文件块的块容量大小与目标文件的文件大小相一致;文件存储模块用于当块容量调整模块对目标文件块的块容量大小进行调整后,将目标文件存储至目标文件块。可见,本发明中,文件块创建模块在目标块服务器中创建的目标文件块是一个块容量大小可变的文件块,并且块容量调整模块可以根据目标文件的文件大小对目标文件块的块容量大小进行相应的调整,以使得目标文件块的块容量大小与目标文件的文件大小相一致,从而避免了目标文件的文件大小可能超过目标文件块的块容量大小的情况,也即避免了发生块溢出的情况,确保了文件能够得到完整保存。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例公开的一种云存储文件系统结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种云存储文件系统,参见图1所示,该云存储文件系统包括文件管理机10和N个块服务器,N为正整数;其中,文件管理机10包括:
文件块创建模块101,用于当客户端需要将目标文件写入目标块服务器时,在目标块服务器上为上述目标文件创建一个块容量大小可变的目标文件块;其中,目标块服务器为上述N个块服务器中与目标文件对应的块服务器;
块容量调整模块102,用于获取上述目标文件的文件大小,并根据上述目标文件的文件大小,对上述目标文件块的块容量大小进行调整,以使上述目标文件块的块容量大小与上述目标文件的文件大小相一致;
文件存储模块103,用于当块容量调整模块102对上述目标文件块的块容量大小进行调整后,将上述目标文件存储至上述目标文件块。
可以理解的是,本实施例中公开的云存储文件系统在同一时刻下可以被多台客户端进行并行访问。另外,为了方便后续的文件访问,上述目标文件块为具有唯一全局标识的文件块。
本发明实施例中,云存储文件系统包括文件管理机和N个块服务器;其中,文件管理机包括:文件块创建模块用于当客户端需要将目标文件写入目标块服务器时,在目标块服务器上为目标文件创建一个块容量大小可变的目标文件块;块容量调整模块用于获取目标文件的文件大小,并根据目标文件的文件大小,对目标文件块的块容量大小进行调整,以使目标文件块的块容量大小与目标文件的文件大小相一致;文件存储模块用于当块容量调整模块对目标文件块的块容量大小进行调整后,将目标文件存储至目标文件块。
可见,本发明实施例中,文件块创建模块在目标块服务器中创建的目标文件块是一个块容量大小可变的文件块,并且块容量调整模块可以根据目标文件的文件大小对目标文件块的块容量大小进行相应的调整,以使得目标文件块的块容量大小与目标文件的文件大小相一致,从而避免了目标文件的文件大小可能超过目标文件块的块容量大小的情况,也即避免了发生块溢出的情况,确保了文件能够得到完整保存。
本发明实施例公开了一种具体的云存储文件系统,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:
为了实现对元数据的存储和维护,本实施例中的文件管理机还可以包括元数据存储模块和元数据管理模块;其中,
元数据存储模块,用于对云存储文件系统的元数据进行存储;
元数据管理模块,用于对元数据存储模块中存储的元数据进行维护管理。
其中,云存储文件系统的元数据具体包括命名空间、文件访问控制信息、文件ID与文件块之间的映射关系和文件块的位置信息。
为了实现对文件的读取,本实施例中,文件管理机还可以进一步包括读取指令接收模块、位置查找模块和文件读取模块;其中,
读取指令接收模块,用于接收客户端发送的用于读取目标文件集的文件读取指令;目标文件集包括M个文件,M为正整数;文件读取指令携带有M个文件中每个文件的文件ID;
位置查找模块,用于利用文件读取指令中携带的文件ID,从元数据存储模块存储的元数据中查找出上述M个文件所对应的文件块的位置信息;
文件读取模块,用于根据上述位置查找模块查找到的位置信息,从相应的文件块中一次性地读取出相应的文件,并将读取到的文件返回至相应的客户端。
本实施例中,云存储文件系统还可以包括文件级别设定模块,用于对需要写入块服务器的文件的文件级别进行设定。其中,文件级别包括低级、中级和高级。例如,可以根据文件的私密程度,将数据分为高中低三个级别。
为了增强数据的可靠性,本实施例中,云存储文件系统还可以包括第一备份器和第二备份器;其中,
第一备份器,用于对第一类型文件和第二类型文件进行备份,第一类型文件为需要写入块服务器的文件级别为中级的文件,第二类型文件为需要写入块服务器的文件级别为高级的文件。
第二备份器,用于在第一备份器对第二类型文件进行备份的基础上,对第二类型文件进行再次备份。
为了实现对块服务器的实时监控,本实施例中的云存储文件系统还可以包括:第一故障提示模块,用于当上述N个块服务器中的任一块服务器出现故障后,生成相应的故障提示信息。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种云存储文件系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种云存储文件系统,其特征在于,包括文件管理机和N个块服务器,N为正整数;其中,所述文件管理机包括:
文件块创建模块,用于当客户端需要将目标文件写入目标块服务器时,在所述目标块服务器上为所述目标文件创建一个块容量大小可变的目标文件块;其中,所述目标块服务器为所述N个块服务器中与所述目标文件对应的块服务器;
块容量调整模块,用于获取所述目标文件的文件大小,并根据所述目标文件的文件大小,对所述目标文件块的块容量大小进行调整,以使所述目标文件块的块容量大小与所述目标文件的文件大小相一致;
文件存储模块,用于当所述块容量调整模块对所述目标文件块的块容量大小进行调整后,将所述目标文件存储至所述目标文件块。
2.根据权利要求1所述的云存储文件系统,其特征在于,所述目标文件块为具有唯一全局标识的文件块。
3.根据权利要求2所述的云存储文件系统,其特征在于,所述文件管理机还包括:
元数据存储模块,用于对所述云存储文件系统的元数据进行存储;
元数据管理模块,用于对所述元数据存储模块中存储的元数据进行维护管理。
4.根据权利要求3所述的云存储文件系统,其特征在于,所述云存储文件系统的元数据包括命名空间、文件访问控制信息、文件ID与文件块之间的映射关系和文件块的位置信息。
5.根据权利要求4所述的云存储文件系统,其特征在于,所述文件管理机还包括:
读取指令接收模块,用于接收客户端发送的用于读取目标文件集的文件读取指令;所述目标文件集包括M个文件,M为正整数;所述文件读取指令携带有所述M个文件中每个文件的文件ID;
位置查找模块,用于利用所述文件读取指令中携带的文件ID,从所述元数据存储模块存储的元数据中查找出所述M个文件所对应的文件块的位置信息;
文件读取模块,用于根据所述位置查找模块查找到的位置信息,从相应的文件块中一次性地读取出相应的文件,并将读取到的文件返回至客户端。
6.根据权利要求1至5任一项所述的云存储文件系统,其特征在于,还包括:
文件级别设定模块,用于对需要写入块服务器的文件的文件级别进行设定。
7.根据权利要求6所述的云存储文件系统,其特征在于,所述文件级别包括低级、中级和高级。
8.根据权利要求7所述的云存储文件系统,其特征在于,还包括:
第一备份器,用于对第一类型文件和第二类型文件进行备份,所述第一类型文件为需要写入块服务器的文件级别为中级的文件,所述第二类型文件为需要写入块服务器的文件级别为高级的文件。
9.根据权利要求8所述的云存储文件系统,其特征在于,还包括:
第二备份器,用于在所述第一备份器对所述第二类型文件进行备份的基础上,对所述第二类型文件进行再次备份。
10.根据权利要求9所述的云存储文件系统,其特征在于,还包括:
第一故障提示模块,用于当所述N个块服务器中的任一块服务器出现故障后,生成相应的故障提示信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510789401.4A CN105245624B (zh) | 2015-11-17 | 2015-11-17 | 一种云存储文件系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510789401.4A CN105245624B (zh) | 2015-11-17 | 2015-11-17 | 一种云存储文件系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105245624A true CN105245624A (zh) | 2016-01-13 |
CN105245624B CN105245624B (zh) | 2018-09-18 |
Family
ID=55043121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510789401.4A Active CN105245624B (zh) | 2015-11-17 | 2015-11-17 | 一种云存储文件系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105245624B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106372140A (zh) * | 2016-08-29 | 2017-02-01 | 浪潮软件集团有限公司 | 一种可变块大小的兼容文件系统 |
CN109254857A (zh) * | 2018-08-30 | 2019-01-22 | 百度在线网络技术(北京)有限公司 | 一种共享内存的调整方法、装置、设备和介质 |
CN109727106A (zh) * | 2018-09-13 | 2019-05-07 | 网联清算有限公司 | 对账文件的重组方法、装置及电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102508902A (zh) * | 2011-11-08 | 2012-06-20 | 西安电子科技大学 | 云存储系统中可变分块大小的块数据分块方法 |
CN103037004A (zh) * | 2012-12-21 | 2013-04-10 | 曙光信息产业(北京)有限公司 | 云存储系统操作的实现方法和装置 |
CN103078906A (zh) * | 2012-12-26 | 2013-05-01 | 爱迪科特(北京)科技有限公司 | 文件透明迁移方法 |
CN103442090A (zh) * | 2013-09-16 | 2013-12-11 | 苏州市职业大学 | 一种数据分散存储的云计算系统 |
CN103763383A (zh) * | 2014-01-27 | 2014-04-30 | 西安雷迪维护系统设备有限公司 | 一体化云存储系统及其存储方法 |
US20150271151A1 (en) * | 2013-01-09 | 2015-09-24 | International Business Machines Corporation | Transparent Encryption/Decryption Gateway for Cloud Storage Services |
WO2015153723A1 (en) * | 2014-04-01 | 2015-10-08 | Invoke Ltd. | A method and system for real-time cloud storage of video content |
-
2015
- 2015-11-17 CN CN201510789401.4A patent/CN105245624B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102508902A (zh) * | 2011-11-08 | 2012-06-20 | 西安电子科技大学 | 云存储系统中可变分块大小的块数据分块方法 |
CN103037004A (zh) * | 2012-12-21 | 2013-04-10 | 曙光信息产业(北京)有限公司 | 云存储系统操作的实现方法和装置 |
CN103078906A (zh) * | 2012-12-26 | 2013-05-01 | 爱迪科特(北京)科技有限公司 | 文件透明迁移方法 |
US20150271151A1 (en) * | 2013-01-09 | 2015-09-24 | International Business Machines Corporation | Transparent Encryption/Decryption Gateway for Cloud Storage Services |
CN103442090A (zh) * | 2013-09-16 | 2013-12-11 | 苏州市职业大学 | 一种数据分散存储的云计算系统 |
CN103763383A (zh) * | 2014-01-27 | 2014-04-30 | 西安雷迪维护系统设备有限公司 | 一体化云存储系统及其存储方法 |
WO2015153723A1 (en) * | 2014-04-01 | 2015-10-08 | Invoke Ltd. | A method and system for real-time cloud storage of video content |
Non-Patent Citations (1)
Title |
---|
赵黎斌: ""面向云存储的分布式文件系统关键技术研究"", 《西安电子科技大学硕士毕业论文》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106372140A (zh) * | 2016-08-29 | 2017-02-01 | 浪潮软件集团有限公司 | 一种可变块大小的兼容文件系统 |
CN109254857A (zh) * | 2018-08-30 | 2019-01-22 | 百度在线网络技术(北京)有限公司 | 一种共享内存的调整方法、装置、设备和介质 |
CN109254857B (zh) * | 2018-08-30 | 2021-03-19 | 百度在线网络技术(北京)有限公司 | 一种共享内存的调整方法、装置、设备和介质 |
CN109727106A (zh) * | 2018-09-13 | 2019-05-07 | 网联清算有限公司 | 对账文件的重组方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN105245624B (zh) | 2018-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101791594B1 (ko) | 저장 네트워크 내의 저장 관리 | |
DE112019005770T5 (de) | Speicherverwaltung für ein cloudbasiertes Speichersystem | |
CN103744906A (zh) | 一种数据同步系统、方法及装置 | |
US9372765B2 (en) | System and method for recovering system status consistently to designed recovering time point in distributed database | |
CN104111804A (zh) | 一种分布式文件系统 | |
CN107885804A (zh) | 数据库同步方法、应用服务器及计算机可读存储介质 | |
CN102857578B (zh) | 一种网络硬盘的文件上传方法、系统及网盘客户端 | |
CN103049355B (zh) | 一种数据库系统恢复方法及设备 | |
CN109543455A (zh) | 一种区块链的数据归档方法及装置 | |
CN104765749A (zh) | 一种数据存储方法及装置 | |
CN103905540A (zh) | 基于两级哈希的对象存储数据分布机制 | |
CN103995879A (zh) | 基于olap系统的数据查询方法、装置及系统 | |
CN103067525A (zh) | 一种基于特征码的云存储数据备份方法 | |
CN105868421A (zh) | 一种数据管理方法及装置 | |
US11210183B2 (en) | Memory health tracking for differentiated data recovery configurations | |
CN112346647B (zh) | 数据存储方法、装置、设备和介质 | |
CN104182487A (zh) | 一种支持多种存储方式的统一存储方法 | |
CN110427364A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN103617260A (zh) | 重复数据删除的索引生成方法及装置 | |
CN103716384A (zh) | 跨数据中心实现云存储数据同步的方法和装置 | |
CN106126731A (zh) | 一种获取Elasticsearch分页数据的方法及装置 | |
CN105245624A (zh) | 一种云存储文件系统 | |
CN109284066A (zh) | 一种数据处理方法、装置、设备及系统 | |
CN105224418A (zh) | 一种数据备份方法和装置 | |
CN104778252A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |