CN104301442A - 一种基于fuse的访问对象存储集群的客户端的实现方法 - Google Patents
一种基于fuse的访问对象存储集群的客户端的实现方法 Download PDFInfo
- Publication number
- CN104301442A CN104301442A CN201410650458.1A CN201410650458A CN104301442A CN 104301442 A CN104301442 A CN 104301442A CN 201410650458 A CN201410650458 A CN 201410650458A CN 104301442 A CN104301442 A CN 104301442A
- Authority
- CN
- China
- Prior art keywords
- client
- fuse
- object storage
- kernel
- cluster
- 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.)
- Pending
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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/545—Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于fuse的访问对象存储集群的客户端的实现方法,其具体实现过程为:客户端通过linux提供的fuse内核挂载,在客户端挂载的目录下对远端分布式对象存储系统进行访问,上述客户端分为内核模块和用户态守护进程模块两部分,其中内核模块以fuse为基础,处理用户在挂载目录下的操作形成的系统调用;用户态守护进程负责接收内核递交的系统调用请求,同时处理请求,并将请求返回给系统调用。该一种基于fuse的访问对象存储集群的客户端的实现方法与现有技术相比,极大的提高生产效率,提高集群的高可用性,实用性较强,能够节省人力,适用范围广泛,易于推广。
Description
技术领域
本发明涉及计算机存储技术领域,具体地说是一种实用性强、基于fuse的访问对象存储集群的客户端的实现方法。
背景技术
随着互联网时代的到来,全世界各行各业每时每刻都在产生各种数据,为了收集管理这些数据,一些大的互联网企业或者其他产生大量数据的公司都建立了公共的或者私有的数据中心,对象存储以其良好的横向扩展性和存取效率逐渐取代文件系统成为静态海量数据存储的主流。
当前几乎所有的对象存储集群软件厂商都对外提供了访问集群的接口,用户为了更加高效的访问集群不得不去基于这些接口之上进行二次开发去访问集群,这无形之中就提高了应用的门槛。
基于此,现提供一种基于fuse的访问对象存储集群的客户端的实现方法。该方法能够挂载在客户机的文件系统目录下,然后在挂载目录下只存在一级目录,不允许创建对象,该目录实际上是对应到对象存储集群中的数据池,目录下是对象集合,通过该客户端用户可以像访问文件系统一样访问集群中的对象,从而提高生产效率。
发明内容
本发明的技术任务是针对以上不足之处,提供一种实用性强、基于fuse的访问对象存储集群的客户端的实现方法。
一种基于fuse的访问对象存储集群的客户端的实现方法,其具体实现过程为:
所述客户端通过linux 提供的fuse内核挂载,在客户端挂载的目录下对远端分布式对象存储系统进行访问,上述客户端分为内核模块和用户态守护进程模块两部分,其中
内核模块以fuse 为基础,处理用户在挂载目录下的操作形成的系统调用,并且将系统调用以请求的方式放置到自定义的系统缓冲区,将要与用户态交互的数据页准备好映射到用户态地址空间;
用户态守护进程负责接收内核递交的系统调用请求,同时处理请求,并将请求返回给系统调用。
客户端在操作系统的文件树中的任意一个目录上进行挂载,在挂载点下只有一级目录,不能直接创建对象且以文件的形式展现,顶层目录为存储池,数据池下为对象。
客户端的用户态守护进程在处理请求时直接通过对象存储接口和集群进行交互,不在集群上额外存储信息,同时信息在客户端维护缓存信息。
本发明的一种基于fuse的访问对象存储集群的客户端的实现方法,具有以下优点:
该发明的一种基于fuse的访问对象存储集群的客户端的实现方法通过该客户端用户可以像访问文件系统一样访问集群中的对象,在该客户端维护缓存信息,极大的提高生产效率,提高集群的高可用性,实用性较强,能够节省人力,适用范围广泛,易于推广。
附图说明
附图1为本发明的实现示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明。
本发明提供一种基于fuse的访问对象存储集群的客户端的实现方法,如附图1所示,其具体实现过程为:
所述客户端通过linux 提供的fuse内核挂载,在客户端挂载的目录下对远端分布式对象存储系统进行访问,上述客户端分为内核模块和用户态守护进程模块两部分,其中
内核模块以fuse 为基础,主要处理用户在挂载目录下的操作形成的系统调用,并且将系统调用以请求的方式放置到自定义的系统缓冲区,并且将要与用户态交互的数据页准备好映射到用户态地址空间。
用户态守护进程负责接收内核递交的系统调用请求,同时处理请求,并将请求返回给系统调用。
该客户端可以在操作系统的文件树中的任意一个目录上进行挂载过程,在挂载点下只有一级目录,不能直接创建对象(以文件的形式展现),顶层目录是存储池,数据池下是对象。
客户端的用户态守护进程在处理请求时直接通过对象存储接口和集群进行交互,不在集群上额外存储信息,同时信息在客户端维护缓存信息。
上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的一种基于fuse的访问对象存储集群的客户端的实现方法的权利要求书的且任何所述技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
Claims (3)
1.一种基于fuse的访问对象存储集群的客户端的实现方法,其特征在于,其具体实现过程为:
所述客户端通过linux 提供的fuse内核挂载,在客户端挂载的目录下对远端分布式对象存储系统进行访问,上述客户端分为内核模块和用户态守护进程模块两部分,其中
内核模块以fuse 为基础,处理用户在挂载目录下的操作形成的系统调用,并且将系统调用以请求的方式放置到自定义的系统缓冲区,将要与用户态交互的数据页准备好映射到用户态地址空间;
用户态守护进程负责接收内核递交的系统调用请求,同时处理请求,并将请求返回给系统调用。
2.根据权利要求1所述的一种基于fuse的访问对象存储集群的客户端的实现方法,其特征在于,客户端在操作系统的文件树中的任意一个目录上进行挂载,在挂载点下只有一级目录,不能直接创建对象且以文件的形式展现,顶层目录为存储池,数据池下为对象。
3.根据权利要求1所述的一种基于fuse的访问对象存储集群的客户端的实现方法,其特征在于,用户态守护进程在处理请求时直接通过对象存储接口和集群进行交互,不在集群上额外存储信息,同时信息在客户端维护缓存信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410650458.1A CN104301442A (zh) | 2014-11-17 | 2014-11-17 | 一种基于fuse的访问对象存储集群的客户端的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410650458.1A CN104301442A (zh) | 2014-11-17 | 2014-11-17 | 一种基于fuse的访问对象存储集群的客户端的实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104301442A true CN104301442A (zh) | 2015-01-21 |
Family
ID=52321005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410650458.1A Pending CN104301442A (zh) | 2014-11-17 | 2014-11-17 | 一种基于fuse的访问对象存储集群的客户端的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104301442A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104639658A (zh) * | 2015-03-12 | 2015-05-20 | 浪潮集团有限公司 | 一种以文件系统挂载访问对象存储的实现方法 |
CN105740413A (zh) * | 2016-01-29 | 2016-07-06 | 珠海全志科技股份有限公司 | Linux平台上使用FUSE的文件移动方法 |
CN106202220A (zh) * | 2016-06-28 | 2016-12-07 | 北京百迈客云科技有限公司 | 一种读取对象存储系统中数据的方法以及装置 |
CN106302733A (zh) * | 2016-08-16 | 2017-01-04 | 浪潮(北京)电子信息产业有限公司 | 一种分布式集群融合nfs协议的实现方法及装置 |
CN106709056A (zh) * | 2017-01-09 | 2017-05-24 | 郑州云海信息技术有限公司 | 一种nfs挂载目录导出方法及装置 |
CN106844562A (zh) * | 2016-12-30 | 2017-06-13 | 北京航天泰坦科技股份有限公司 | 基于fuse的地理影像透明缓存机制 |
CN107479991A (zh) * | 2017-08-25 | 2017-12-15 | 郑州云海信息技术有限公司 | 基于内核文件系统的对象存储操作方法、装置及系统 |
CN113591139A (zh) * | 2021-10-08 | 2021-11-02 | 北京海誉动想科技股份有限公司 | 文件访问控制方法与装置 |
CN114281636A (zh) * | 2021-11-12 | 2022-04-05 | 苏州浪潮智能科技有限公司 | 一种处理用户空间文件系统故障的方法和装置 |
CN114637703A (zh) * | 2022-03-25 | 2022-06-17 | 北京有竹居网络技术有限公司 | 数据访问装置、方法、可读介质和电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102014133A (zh) * | 2010-11-26 | 2011-04-13 | 清华大学 | 在云存储环境下一种安全存储系统的实现方法 |
CN102571959A (zh) * | 2012-01-11 | 2012-07-11 | 北京奇虎科技有限公司 | 一种数据下载系统及方法 |
CN103838725A (zh) * | 2012-11-20 | 2014-06-04 | 联想(北京)有限公司 | 文件处理方法和文件处理设备 |
CN103944958A (zh) * | 2014-03-14 | 2014-07-23 | 中国科学院计算技术研究所 | 一种广域文件系统及实现方法 |
-
2014
- 2014-11-17 CN CN201410650458.1A patent/CN104301442A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102014133A (zh) * | 2010-11-26 | 2011-04-13 | 清华大学 | 在云存储环境下一种安全存储系统的实现方法 |
CN102571959A (zh) * | 2012-01-11 | 2012-07-11 | 北京奇虎科技有限公司 | 一种数据下载系统及方法 |
CN103838725A (zh) * | 2012-11-20 | 2014-06-04 | 联想(北京)有限公司 | 文件处理方法和文件处理设备 |
CN103944958A (zh) * | 2014-03-14 | 2014-07-23 | 中国科学院计算技术研究所 | 一种广域文件系统及实现方法 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104639658A (zh) * | 2015-03-12 | 2015-05-20 | 浪潮集团有限公司 | 一种以文件系统挂载访问对象存储的实现方法 |
CN105740413A (zh) * | 2016-01-29 | 2016-07-06 | 珠海全志科技股份有限公司 | Linux平台上使用FUSE的文件移动方法 |
CN106202220A (zh) * | 2016-06-28 | 2016-12-07 | 北京百迈客云科技有限公司 | 一种读取对象存储系统中数据的方法以及装置 |
CN106302733A (zh) * | 2016-08-16 | 2017-01-04 | 浪潮(北京)电子信息产业有限公司 | 一种分布式集群融合nfs协议的实现方法及装置 |
CN106844562A (zh) * | 2016-12-30 | 2017-06-13 | 北京航天泰坦科技股份有限公司 | 基于fuse的地理影像透明缓存机制 |
CN106709056B (zh) * | 2017-01-09 | 2020-11-20 | 苏州浪潮智能科技有限公司 | 一种nfs挂载目录导出方法及装置 |
CN106709056A (zh) * | 2017-01-09 | 2017-05-24 | 郑州云海信息技术有限公司 | 一种nfs挂载目录导出方法及装置 |
CN107479991A (zh) * | 2017-08-25 | 2017-12-15 | 郑州云海信息技术有限公司 | 基于内核文件系统的对象存储操作方法、装置及系统 |
CN113591139A (zh) * | 2021-10-08 | 2021-11-02 | 北京海誉动想科技股份有限公司 | 文件访问控制方法与装置 |
CN114281636A (zh) * | 2021-11-12 | 2022-04-05 | 苏州浪潮智能科技有限公司 | 一种处理用户空间文件系统故障的方法和装置 |
CN114281636B (zh) * | 2021-11-12 | 2023-08-25 | 苏州浪潮智能科技有限公司 | 一种处理用户空间文件系统故障的方法和装置 |
CN114637703A (zh) * | 2022-03-25 | 2022-06-17 | 北京有竹居网络技术有限公司 | 数据访问装置、方法、可读介质和电子设备 |
CN114637703B (zh) * | 2022-03-25 | 2023-09-01 | 北京有竹居网络技术有限公司 | 数据访问装置、方法、可读介质和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104301442A (zh) | 一种基于fuse的访问对象存储集群的客户端的实现方法 | |
CN103379159B (zh) | 一种分布式Web站点数据同步的方法 | |
Chiu et al. | Evaluating caching and storage options on the amazon web services cloud | |
JP7047228B2 (ja) | データ照会方法、装置、電子機器、可読記憶媒体、及びコンピュータープログラム | |
CN104331421A (zh) | 一种大数据的高效处理方法及系统 | |
US20140237151A1 (en) | Determining a virtual interrupt source number from a physical interrupt source number | |
CN109242637A (zh) | 一种算力共享智能系统 | |
Zhang et al. | Towards building a multi‐datacenter infrastructure for massive remote sensing image processing | |
CN104731569A (zh) | 一种数据处理方法及相关设备 | |
CN107193494B (zh) | 一种基于ssd和hdd混合存储系统的rdd持久化方法 | |
CN105516284A (zh) | 一种集群数据库分布式存储的方法和装置 | |
CN104410666A (zh) | 云计算下实现异构存储资源管理的方法及系统 | |
CN102609464A (zh) | Mongodb分片联表查询方法及装置 | |
CN112507020A (zh) | 数据同步方法、装置、计算机设备及存储介质 | |
US10062137B2 (en) | Communication between integrated graphics processing units | |
CN102508884A (zh) | 热点事件与实时评论的获取方法及装置 | |
Mohamed et al. | Accelerating data-intensive genome analysis in the cloud | |
US20150268984A1 (en) | Preemptive guest merging for virtualization hypervisors | |
CN107179883B (zh) | 一种基于SSD和HDD的混合存储系统的Spark架构优化方法 | |
CN104571946A (zh) | 一种支持逻辑电路快速查询的存储器装置及其访问方法 | |
CN102096594B (zh) | 使用内存中系统资源的方法及装置 | |
CN103139270A (zh) | 云计算应用系统 | |
CN107273049B (zh) | 一种应用在统一存储管理系统上的卷管理方法 | |
CN102760212B (zh) | 一种基于存储镜像克隆机制虚拟桌面恶意代码检测方法 | |
EP3082050A1 (en) | Mass data fusion storage method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150121 |