CN112069146A - 提高基于zfs文件系统异步远程复制的方法及系统 - Google Patents
提高基于zfs文件系统异步远程复制的方法及系统 Download PDFInfo
- Publication number
- CN112069146A CN112069146A CN202010934884.3A CN202010934884A CN112069146A CN 112069146 A CN112069146 A CN 112069146A CN 202010934884 A CN202010934884 A CN 202010934884A CN 112069146 A CN112069146 A CN 112069146A
- Authority
- CN
- China
- Prior art keywords
- zfs
- asynchronous remote
- socket connection
- file
- node
- 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
- 238000000034 method Methods 0.000 title claims abstract description 19
- 230000005540 biological transmission Effects 0.000 claims abstract description 15
- 238000012544 monitoring process Methods 0.000 claims abstract description 10
- 230000000977 initiatory effect Effects 0.000 claims abstract description 8
- 230000010076 replication Effects 0.000 claims abstract description 7
- 238000004891 communication Methods 0.000 claims description 4
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
Images
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/18—File system types
- G06F16/182—Distributed file systems
- G06F16/184—Distributed file systems implemented as replicated file system
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)
Abstract
本发明提供了一种提高基于ZFS文件系统异步远程复制的方法及系统。该方法包括:传输节点发起向接收节点的socket连接,并在发起socket连接之后输出文件句柄;接收节点进行socket连接监听,并在监听到socket连接后输出文件句柄;传输节点和接收节点根据各自持有的文件句柄,执行通过socket连接的异步远程复制。本发明提供的提高基于ZFS文件系统异步远程复制的方法及系统减少了数据拷贝次数,特别是去除了内核空间与用户空间之间的拷贝,提高了跨节点远程复制性能。
Description
技术领域
本发明涉及数据存储技术领域,特别是涉及一种提高基于ZFS文件系统异步远程复制的方法及系统。
背景技术
存储系统是指计算机中由存放程序和数据的各种存储设备、控制部件及管理信息调度的设备(硬件)和算法(软件)所组成的系统。其中存储文件系统在整个存储系统里面至关重要。相对于传统的EXT、XFS、JFS、ReiserFS或NTFS等文件系统,ZFS文件系统作为一种革新性的新文件系统,可从根本上改变文件系统的管理方式,并具有目前面市的其他任何文件系统所没有的功能和优点。ZFS开源、强健可靠、可伸缩、易于管理,更重要是其突出了对数据完整性的保护。因此当下更多存储公司的文件系统都是基于ZFS文件系统的二次开发。
但是现有社区提供的基于ZFS文件系统的异步远程复制功能性能无法满足企业要求,特别是基于全国产平台下的性能更低。因此修改其IO流程、优化传输性能迫在眉睫。
如图1所示,原方案采用发送快照的方式来实现此功能,即在本地创建快照,内核将快照文件系统读出到缓存,再写入到用户空间的标准输出,之后通过linux的管道(pipeline)将用户空间的数据传给ssh,远端节点通过sshd接收数据和命令将数据从用户空间读取到内核空间,再写入到文件系统。整个流程涉及到内核空间到用户空间、用户空间到内核空间的两次跨空间拷贝。
发明内容
本发明要解决的技术问题是提供一种提高基于ZFS文件系统异步远程复制的方法及系统,减少了数据拷贝次数,特别是去除了内核空间与用户空间之间的拷贝,提高了跨节点远程复制性能。
为解决上述技术问题,本发明提供了一种提高基于ZFS文件系统异步远程复制的方法,所述方法包括:传输节点发起向接收节点的socket连接,并在发起socket连接之后输出文件句柄;接收节点进行socket连接监听,并在监听到socket连接后输出文件句柄;传输节点和接收节点根据各自持有的文件句柄,执行通过socket连接的异步远程复制。
在一些实施方式中,异步远程复制为基于句柄的ZFS内核通讯。
在一些实施方式中,异步远程复制不使用标准输入,也不使用标准输出。
在一些实施方式中,传输节点内部配备zfs_send模块,接收节点内部配备zfs_recv模块。
在一些实施方式中,在传输节点内部,由zfs_send模块执行socket连接发起、文件句柄输出及异步远程复制的操作。
在一些实施方式中,在接收节点内部,由zfs_recv模块执行socket连接监听、文件句柄输出及异步远程复制的操作。
在一些实施方式中,由传输节点和接收节点输出的文件句柄均为基于socket连接的文件句柄。
此外,本发明还提供了一种提高基于ZFS文件系统异步远程复制的系统,所述系统包括:传输节点,用于发起向接收节点的socket连接,并在发起socket连接之后输出文件句柄,以及根据其持有的文件句柄,执行通过socket连接的异步远程复制;接收节点,用于进行socket连接监听,并在监听到socket连接后输出文件句柄,以及根据其持有的文件句柄,执行通过socket连接的异步远程复制。
采用这样的设计后,本发明至少具有以下优点:
提高了跨节点远程复制性能,性能接近本节点内部远程复制;节省多次拷贝对内存及CPU的占用。
附图说明
上述仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,以下结合附图与具体实施方式对本发明作进一步的详细说明。
图1是现有技术提供的ZFS文件系统上异步远程复制的流程图;
图2是本发明实施例提供的提高基于ZFS文件系统异步远程复制的方法的流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
如图2所示,具体实现方案如下:
添加zfs send和zfs recv新的选项,使用socket替换原ssh功能,将send和recv向用户空间的输入输出替换为使用socket句柄的内核通信。
1)ZFS文件系统修改
在zfs send模块实现socket client用于发起连接,并输出文件句柄替换原STDOUT。
在zfs recv模块实现socket server用于监听连接,并输出文件句柄替换原STDIN。
2)远程复制逻辑修改
在目标节点开启接收进程,并打开socket监听。
在发送端开启发送进程,并建立socket连接。
由于直接利用socket句柄执行内核通信,取消了在用户层上的多次拷贝操作,尤其是取消了内核层与用户层之间的拷贝操作,大大提升了不同节点之间远程复制的性能。
另外,由于取消了多次的拷贝操作,节省了异步远程复制操作对于内存和处理器的资源占用。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,本领域技术人员利用上述揭示的技术内容做出些许简单修改、等同变化或修饰,均落在本发明的保护范围内。
Claims (8)
1.一种提高基于ZFS文件系统异步远程复制的方法,其特征在于,包括:
传输节点发起向接收节点的socket连接,并在发起socket连接之后输出文件句柄;
接收节点进行socket连接监听,并在监听到socket连接后输出文件句柄;
传输节点和接收节点根据各自持有的文件句柄,执行通过socket连接的异步远程复制。
2.根据权利要求1所述的提高基于ZFS文件系统异步远程复制的方法,其特征在于,异步远程复制为基于句柄的ZFS内核通讯。
3.根据权利要求1所述的提高基于ZFS文件系统异步远程复制的方法,其特征在于,异步远程复制不使用标准输入,也不使用标准输出。
4.根据权利要求1所述的提高基于ZFS文件系统异步远程复制的方法,其特征在于,传输节点内部配备zfs_send模块,接收节点内部配备zfs_recv模块。
5.根据权利要求4所述的提高基于ZFS文件系统异步远程复制的方法,其特征在于,在传输节点内部,由zfs_send模块执行socket连接发起、文件句柄输出及异步远程复制的操作。
6.根据权利要求4所述的提高基于ZFS文件系统异步远程复制的方法,其特征在于,在接收节点内部,由zfs_recv模块执行socket连接监听、文件句柄输出及异步远程复制的操作。
7.根据权利要求1所述的提高基于ZFS文件系统异步远程复制的方法,其特征在于,由传输节点和接收节点输出的文件句柄均为基于socket连接的文件句柄。
8.一种提高基于ZFS文件系统异步远程复制的系统,其特征在于,包括:
传输节点,用于发起向接收节点的socket连接,并在发起socket连接之后输出文件句柄,以及根据其持有的文件句柄,执行通过socket连接的异步远程复制;
接收节点,用于进行socket连接监听,并在监听到socket连接后输出文件句柄,以及根据其持有的文件句柄,执行通过socket连接的异步远程复制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010934884.3A CN112069146A (zh) | 2020-09-08 | 2020-09-08 | 提高基于zfs文件系统异步远程复制的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010934884.3A CN112069146A (zh) | 2020-09-08 | 2020-09-08 | 提高基于zfs文件系统异步远程复制的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112069146A true CN112069146A (zh) | 2020-12-11 |
Family
ID=73664323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010934884.3A Pending CN112069146A (zh) | 2020-09-08 | 2020-09-08 | 提高基于zfs文件系统异步远程复制的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112069146A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101982955A (zh) * | 2010-11-19 | 2011-03-02 | 深圳华大基因科技有限公司 | 高性能文件传输系统及方法 |
CN102033766A (zh) * | 2010-12-01 | 2011-04-27 | 北京同有飞骥科技股份有限公司 | 一种存储操作系统的升级方法 |
US20120143832A1 (en) * | 2010-12-01 | 2012-06-07 | International Business Machines Corporation | Dynamic rewrite of files within deduplication system |
CN102916953A (zh) * | 2012-10-12 | 2013-02-06 | 青岛海信传媒网络技术有限公司 | 基于tcp连接实现并发服务的方法及装置 |
CN106331051A (zh) * | 2015-07-07 | 2017-01-11 | 北京神州泰岳软件股份有限公司 | 文件传输方法和系统以及接收文件装置、发送文件装置 |
CN111552668A (zh) * | 2020-07-09 | 2020-08-18 | 南京云信达科技有限公司 | 一种基于zfs文件系统的高性能跨域复制方法 |
-
2020
- 2020-09-08 CN CN202010934884.3A patent/CN112069146A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101982955A (zh) * | 2010-11-19 | 2011-03-02 | 深圳华大基因科技有限公司 | 高性能文件传输系统及方法 |
CN102033766A (zh) * | 2010-12-01 | 2011-04-27 | 北京同有飞骥科技股份有限公司 | 一种存储操作系统的升级方法 |
US20120143832A1 (en) * | 2010-12-01 | 2012-06-07 | International Business Machines Corporation | Dynamic rewrite of files within deduplication system |
CN102916953A (zh) * | 2012-10-12 | 2013-02-06 | 青岛海信传媒网络技术有限公司 | 基于tcp连接实现并发服务的方法及装置 |
CN106331051A (zh) * | 2015-07-07 | 2017-01-11 | 北京神州泰岳软件股份有限公司 | 文件传输方法和系统以及接收文件装置、发送文件装置 |
CN111552668A (zh) * | 2020-07-09 | 2020-08-18 | 南京云信达科技有限公司 | 一种基于zfs文件系统的高性能跨域复制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106170777B (zh) | 降低基于块的存储的数据卷耐久性状态的方法 | |
US9417811B2 (en) | Efficient inline data de-duplication on a storage system | |
US9398053B2 (en) | Efficient data transmission between computing devices | |
WO2021051563A1 (zh) | 目标数据归档方法、装置、电子设备及计算机非易失性可读存储介质 | |
US20180101558A1 (en) | Log-shipping data replication with early log record fetching | |
US8812683B2 (en) | Service scripting framework | |
CN105302676A (zh) | 一种分布式文件系统的主备机制数据传输方法及装置 | |
US10795777B1 (en) | Continuous verified backups | |
US20080294748A1 (en) | Proxy between network file system version three and network file system version four protocol | |
US11494437B1 (en) | System and method for performing object-modifying commands in an unstructured storage service | |
US20220006867A1 (en) | Transport channel via web socket for odata | |
WO2012079967A2 (en) | Replicating data | |
CN112068973A (zh) | 策略模式的异步信息处理方法、装置、服务器和存储介质 | |
JP5479710B2 (ja) | データを処理するためのプロセッサ‐サーバ・ハイブリッド・システムおよび方法 | |
CN104580428A (zh) | 一种数据路由方法、数据管理装置和分布式存储系统 | |
CN114489622A (zh) | 静态资源管理方法、Node.js应用、电子设备和存储介质 | |
CN103595761A (zh) | 基于分布式文件系统的数据处理方法和服务器 | |
US10402373B1 (en) | Filesystem redirection | |
CN111596864A (zh) | 一种数据延时删除的方法、装置、服务器及存储介质 | |
CN112069146A (zh) | 提高基于zfs文件系统异步远程复制的方法及系统 | |
KR101694301B1 (ko) | 스토리지 시스템의 파일 처리 방법 및 그 방법에 따른 데이터 서버 | |
JP2012164166A (ja) | 情報処理システム | |
CN113760862A (zh) | 一种增量数据断点续传方法、装置、设备及存储介质 | |
US10320890B1 (en) | Generating client applications from service model descriptions | |
US7743385B2 (en) | System and method for simplification of data structure in wireless communications |
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 |