CN102567444B - 一种分布式文件系统数据访问优化的方法 - Google Patents
一种分布式文件系统数据访问优化的方法 Download PDFInfo
- Publication number
- CN102567444B CN102567444B CN 201110326482 CN201110326482A CN102567444B CN 102567444 B CN102567444 B CN 102567444B CN 201110326482 CN201110326482 CN 201110326482 CN 201110326482 A CN201110326482 A CN 201110326482A CN 102567444 B CN102567444 B CN 102567444B
- Authority
- CN
- China
- Prior art keywords
- data
- file
- server
- metadata
- search operation
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种分布式文件系统数据访问优化的方法,在元数据查找操作中添加意图标记,所述意图标记用于标记该查找操作是否创建文件,如果所述查找操作有创建文件意图,则在查找操作中添加意图标记;服务器端收到查找请求后,首先做元数据查找操作,如果已存在,则返回已存在,如果不存在,则执行意图标记的创建文件请求,在元数据服务器创建文件;通过接口函数使数据不经用户态缓冲区而直接复制或者使数据只在服务器间复制,不通过客户端中转。本发明将相关元数据操作进行合并,同时,在数据复制时不经过客户端,使得元数据和数据的读写和复制操作效率大大提高,提升了服务器对于元数据和数据的操作速度和效率。
Description
技术领域
本发明涉及分布式文件系统客户端元数据访问操作流程的优化,具体来说涉及一种在分布式文件系统中高效的访问文件的数据和元数据的流程的方法。
背景技术
VFS(Virtual File System)称“虚拟文件系统”,是LINUX文件系统的一个重要的组成部分,实际上它是一种机制,定义了一种标准的访问元数据和数据的方法。在linux系统中要实现应用程序透明的访问文件系统,就需要实现这个统一的接口。
VFS层定义了文件的操作接口,主要通过file_operation操作接口和inode_operation操作接口来实现。file_operation中主要定义了数据访问的操作接口,如read和write操作。在inode_operation中定义了元数据访问的操作接口,如lookup,mkdir,create,unlink,rmdir等操作。
在分布式文件系统中,实现Linux系统POSIX接口的客户端的访问数据和元数据的操作流程都是基于VFS层的定义的操作流程。这个接口主要是针对于本地文件系统而设计的,在分布式文件系统中,由于网络的访问产生的延迟,减少客户端和元数据服务器的或者数据服务器交互次数,可以显著提高文件系统的性能。
发明内容
本发明基于VFS层目前已经实现的流程,并不修改VFS层的接口,在其允许的范围内,通过有效的操作合并,实现元数据和数据访问流程的优化。
一种分布式文件系统数据访问优化的方法,在元数据查找操作中添加意图标记,所述意图标记用于标记该查找操作是否创建文件,如果所述查找操作有创建文件意图,则在查找操作中添加意图标记;
服务器端收到查找请求后,首先做元数据查找操作,如果已存在,则返回已存在,如果不存在,则执行意图标记的创建文件请求,在元数据服务器创建文件;
通过接口函数使数据不经用户态缓冲区而直接复制或者使数据只在服务器间复制,不通过客户端中转。
优选的,所述接口函数为VFS层提供的send_file接口,包括五个参数:out_fd、in_fd、count、pos和max。
优选的,所述数据在服务器间复制时客户端把复制数据的命令发送给源数据服务器,由源数据服务器发送写请求给目标数据服务器。
优选的,所述数据在服务器间复制时客户端把拷贝数据命令发送给目标数据服务器,由目标数据服务器向源数据服务器发送读命令。
本发明将相关元数据操作进行合并,同时,在数据复制时不经过客户端,使得元数据和数据的读写和复制操作效率大大提高,提升了服务器对于元数据和数据的操作速度和效率。
具体实施方式
对于元数据操作,可以把lookup和create操作合并:
在lookup查找时,都会有lookup操作的一个意图标记,标记该lookup的查找的意图是否创建文件,如果是有创建意图的lookup操作,可以在lookup操作里带创建的意图。
在服务端收到该请求后,首先做服务端的查找操作,如果已经存在该文件,就返回已经存在,就不用执行后续的创建意图的请求。
如果服务端的查找操作发现该文件并不存在,则执行后续和lookup合并一起发过来的create请求。
在数据服务方面,主要是数据的读写流程,目前主要是针对数据拷贝来简化。在目前的模式中,如果要把文件A拷贝的文件B中,其数据拷贝的路径为:数据从磁盘到客户端的A的page cache中,到用户态缓存区,到文件B内核态page cache中,然后到文件B磁盘空间中。在分布式文件系统中,由数据服务器代替磁盘,其流程基本不变。本发明主要在于简化其数据流程。其主要由两个优化的方案:1)数据从文件A的page cache中直接拷贝到文件B的pagecache中,不经过用户态缓冲区。方案2)数据可以只在服务器之间拷贝来实现,并不通过客户端来中转。
对于方案1),这可以通过目前提供的send_file接口来实现。其接口提供了5个参数:分别为out_fd,in_fd,count,pos,max等值。提供了从一个文件拷贝文件到另一个文件的相关的参数。在ofs_sendfile方法里,可以实现仅在page_cache中的内存拷贝。
对于方案2),目前VFS层并没有支持这样的功能,可以通过ioct1接口来实现这个功能。这个功能实现数据服务器之间的数据拷贝。这里有两种方式,一种是推的方式,一种是拉的方式。在第一种推的方式中,客户端把拷贝数据的命令发送给源数据服务器,由源数据服务器发送写请求给目标数据服务器,第二种方式为拉的方式,客户端把拷贝数据的命令发送给目标数据服务器,由目标数据服务器向源数据服务器发送读命令。无论是推方式,还是拉方式,都需要数据服务器的支持。数据服务器的基本功能就是读写,这可以增加数据服务器的命令来实现。
Claims (4)
1.一种分布式文件系统数据访问优化的方法,其特征在于:
在元数据查找操作中添加意图标记,所述意图标记用于标记该查找操作是否创建文件,如果所述查找操作有创建文件意图,则在查找操作中添加意图标记;
服务器端收到查找请求后,首先做元数据查找操作,如果已存在,则返回已存在,如果不存在,则执行意图标记的创建文件请求,在元数据服务器创建文件;
通过send_file传输文件接口函数使数据不经用户态缓冲区而直接复制或者使数据只在服务器间复制,不通过客户端中转。
2.如权利要求1所述的方法,其特征在于:所述接口函数为VFS层提供的send_file接口,包括五个参数:out_fd、in_fd、count、pos和max。
3.如权利要求1所述的方法,其特征在于:所述数据在服务器间复制时客户端把复制数据的命令发送给源数据服务器,由源数据服务器发送写请求给目标数据服务器。
4.如权利要求1所述的方法,其特征在于:所述数据在服务器间复制时客户端把拷贝数据命令发送给目标数据服务器,由目标数据服务器向源数据服务器发送读命令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110326482 CN102567444B (zh) | 2011-10-25 | 2011-10-25 | 一种分布式文件系统数据访问优化的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110326482 CN102567444B (zh) | 2011-10-25 | 2011-10-25 | 一种分布式文件系统数据访问优化的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102567444A CN102567444A (zh) | 2012-07-11 |
CN102567444B true CN102567444B (zh) | 2013-11-06 |
Family
ID=46412868
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110326482 Active CN102567444B (zh) | 2011-10-25 | 2011-10-25 | 一种分布式文件系统数据访问优化的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102567444B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103501339B (zh) * | 2013-09-30 | 2017-06-20 | 华为技术有限公司 | 元数据处理方法及元数据服务器 |
CN103793475B (zh) * | 2014-01-06 | 2017-06-06 | 无锡城市云计算中心有限公司 | 一种分布式文件系统数据迁移的方法 |
CN108121514B (zh) * | 2017-12-29 | 2021-05-25 | 北京奇虎科技有限公司 | 元信息更新方法、装置、计算设备及计算机存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1750001A (zh) * | 2004-09-17 | 2006-03-22 | Adobe系统股份有限公司 | 向库存内容项添加元数据 |
CN101771671A (zh) * | 2008-12-26 | 2010-07-07 | 华为技术有限公司 | 一种内容标识管理服务器间的交互处理方法及装置 |
CN102024022A (zh) * | 2010-11-04 | 2011-04-20 | 曙光信息产业(北京)有限公司 | 一种分布式文件系统复制元数据的方法 |
-
2011
- 2011-10-25 CN CN 201110326482 patent/CN102567444B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1750001A (zh) * | 2004-09-17 | 2006-03-22 | Adobe系统股份有限公司 | 向库存内容项添加元数据 |
CN101771671A (zh) * | 2008-12-26 | 2010-07-07 | 华为技术有限公司 | 一种内容标识管理服务器间的交互处理方法及装置 |
CN102024022A (zh) * | 2010-11-04 | 2011-04-20 | 曙光信息产业(北京)有限公司 | 一种分布式文件系统复制元数据的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102567444A (zh) | 2012-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11388251B2 (en) | Providing access to managed content | |
US9710535B2 (en) | Object storage system with local transaction logs, a distributed namespace, and optimized support for user directories | |
US8868500B2 (en) | Data synchronization | |
EP3120235B1 (en) | Remote replication using mediums | |
CA2758518C (en) | Asynchronous distributed object uploading for replicated content addressable storage clusters | |
JP6129416B2 (ja) | ファイル・システムの仮想化のための方法および装置、ファイル・システムの仮想化のためのデータ・ストレージ・システム、ならびにデータ・ストレージ・システム内で使用するためのファイル・サーバ | |
US8694469B2 (en) | Cloud synthetic backups | |
JP2014510314A (ja) | ファイル共有システム及びファイル共有方法 | |
US10565142B2 (en) | System and method for supporting user-level direct memory access input/output in distributed file system environment | |
US8660997B2 (en) | File system object-based deduplication | |
US20130339605A1 (en) | Uniform storage collaboration and access | |
JP2018097450A (ja) | データ処理装置,データ処理プログラムおよびデータ処理方法 | |
CN102567444B (zh) | 一种分布式文件系统数据访问优化的方法 | |
JP2009080674A (ja) | 制御装置、アクセス制御方法、及びストレージノード | |
WO2017023709A1 (en) | Object storage system with local transaction logs, a distributed namespace, and optimized support for user directories | |
CN106528667A (zh) | 读写分离的低功耗海量数据全文检索系统框架 | |
US20210064576A1 (en) | Indexing splitter for any pit replication | |
CN105740166B (zh) | 缓存的读取、读取处理方法及装置 | |
US8943019B1 (en) | Lookup optimization during online file system migration | |
JP5488587B2 (ja) | 情報処理システムと方法 | |
JP2016134133A (ja) | ストレージシステム | |
Wei et al. | Hippo: An enhancement of pipeline-aware in-memory caching for HDFS | |
Choi | SSD as SQLite Engine | |
Shin et al. | Towards weakly consistent local storage systems | |
Cui et al. | The framework of a distributed file system for geospatial data management |
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 |