CN110109778A - 一种大量小数据文件备份方法及恢复方法 - Google Patents

一种大量小数据文件备份方法及恢复方法 Download PDF

Info

Publication number
CN110109778A
CN110109778A CN201910588646.9A CN201910588646A CN110109778A CN 110109778 A CN110109778 A CN 110109778A CN 201910588646 A CN201910588646 A CN 201910588646A CN 110109778 A CN110109778 A CN 110109778A
Authority
CN
China
Prior art keywords
backup
large amount
client
file
data
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
Application number
CN201910588646.9A
Other languages
English (en)
Other versions
CN110109778B (zh
Inventor
张骏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Yunxinda Technology Co Ltd
Original Assignee
Nanjing Yunxinda Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Yunxinda Technology Co Ltd filed Critical Nanjing Yunxinda Technology Co Ltd
Priority to CN201910588646.9A priority Critical patent/CN110109778B/zh
Publication of CN110109778A publication Critical patent/CN110109778A/zh
Application granted granted Critical
Publication of CN110109778B publication Critical patent/CN110109778B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/128Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • G06F16/134Distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明属于计算机技术领域,提供了一种提高大量小数据文件备份效率的方法,其中主要利用块设备的快照原理和linux中多进程并行的优势结合了共享内存的技术实现了大量小数据文件的快速备份。本发明还提供了一种基于这种大量小数据文件备份的方法备份的数据文件恢复的方法。本发明不压缩源数据、保留了源数据完整的文件格式和属性的前提下,大大提升备份的速度,对比相同前提下的其它备份软件提升备份速度1/4左右,对比压缩数据的备份软件,恢复时的效率提升极大,本发明提供的方法备份文件后的恢复时间几乎为0。

Description

一种大量小数据文件备份方法及恢复方法
技术领域
本发明属于计算机技术领域,特别涉及一种大量小数据文件备份方法及恢复方法。
背景技术
对于磁盘文件系统,无论读写都存在元数据操作。以EXTx文件系统写数据为例,向磁盘写入数据进行大量的元数据操作,包括更新inode目录、目录、inode和数据块位图等。定义有效数据读写率Pd=所需数据/实际磁盘读写数据,其中实际磁盘读写数据为磁盘元数据与所需数据之和。当操作连续大数据文件时,对元数据的操作开销可被庞大的数据操作开销分摊,但小数据文件的有效读写率小于大数据文件的,当小数据文件数量急剧增加时,对大量元数据的操作会严重影响系统的性能。
从上面对磁盘介质的分析可以看出,磁盘最适合顺序的大数据文件I/O读写模式,但非常不适合随机的小数据文件I/O读写模式,这是磁盘文件系统在海量小数据文件应用下性能表现不佳的根本原因,其中小数据文件指大小在10M以下的文件。前面已经提到,磁盘文件系统的设计大多都侧重于大数据文件,包括元数据管理、数据布局和I/O访问流程,另外VFS系统调用机制也非常不利于LOSF(LOSF是一个列出当前系统打开文件的工具),这些软件层面的机制和实现加剧了LOSF的性能问题。
大多数文件备分软件为了减少备份时间选择对源数据进行压缩传输,但针对小数据文件而言,这种方式并不能有效的提高备份速度,同时在恢复时需要解压源数据,造成恢复时间过长,不能及时的恢复用户生产环境。
发明内容
发明目的:本发明针对现有技术存在的问题,提供一种能够有效提高大量小数据文件备份效率的大量小数据文件备份方法。
技术方案:为实现上述目的,本发明提供了一种大量小数据文件备份方法,包括以下步骤:
步骤a1:存储端通过远程存储共享协议的方式共享逻辑卷到客户端;
步骤a2:客户端将接收到的逻辑卷格式化成与源数据相同的文件系统并挂载;
步骤a3:客户端程序通过stat检索源数据目录的索引节点,直接读取索引节点信息,生成需要传输的文件元数据,并将生成的元数据同步到逻辑卷上,同时生成对应文件及目录并保留文件和目录的所有属性;
步骤a4:客户端中的应用程序分为server进程和client进程,server进程对源数据文件进行平均分配,分割成指定数量的源数据子文件,调用之前指定数量的进程分别对对应的源数据子文件进行并行数据传输给clinet进程,在各个线程的传输过程中采用共享内存实现数据传输,使用linux下mmap函数将备份磁盘上的对应文件空间映射给client进程;这样能够减少数据在内核空间和用户空间之间的拷贝时间。
步骤a5:数据备份完成后,客户端卸载逻辑卷,存储端收回逻辑卷后对该逻辑卷进行快照,本次备份结束。
进一步,所述步骤a1中采用的远程存储共享协议为iscsi(Internet SmallComputer System Interface,Internet小型计算机系统接口)或FC(光纤总线协议,下文简称FC)或IB(InfiniBand,下文简称IB)。
其中,所述步骤a4中的指定数量是用户指定数量,或根据系统内存使用情况计算的默认值。
进一步,所述存储端为逻辑卷管理的存储设备。
本发明还提供了一种基于上述大量小数据文件备份方法备份的大量小数据文件的恢复方法,包括以下步骤:
步骤b1:存储端检索指定恢复的时间点对应的快照,根据快照创建克隆卷;
步骤b2:存储端通过远程存储共享协议将克隆卷映射给客户端;
步骤b3:客户端直接挂载克隆卷为本地文件系统。
工作原理:本发明利用块设备的快照原理和linux中多进程并行的优势结合了共享内存的技术实现了大量小数据文件的快速备份。本发明在检索源数据目录时直接读取ionde信息大大加快了检索速度,同时备份程序分为server(服务器程序)和client(客户机程序)两个部分,server部分负责元数据的传输,client部分负责元数据的接收并且在逻辑卷上新建对应的文件目录结构,两边同步进行大大提升了效率。在元数据传输结束后,开始真正的文件数据备份过程,利用linux进程开销小的特性,启用多进程同步读数据,并且将逻辑卷上的相应文件映射到内存中,利用共享内存的特性实现只对源文件进行一次读写操作即把数据写入到逻辑卷上,如此既保留了源数据的文件格式和属性,又大大提升备份的效率。
有益效果:与现有技术相比,本发明不压缩源数据、保留了源数据完整的文件格式和属性的前提下,大大提升备份的速度,对比相同前提下的其它备份软件提升备份速度1/4左右,对比压缩数据的备份软件,恢复时的效率提升极大,本发明提供的方法备份文件后的恢复时间几乎为0。
附图说明
图1为本发明提供的大量小数据文件备份流程图;
图2为本发明提供的大量小数据文件恢复流程图。
具体实施方式
下面结合附图对本发明做更进一步的解释。
本实施例提供的实验硬件构架为:存储端:x86架构,os:centos7.4,硬盘:10T。客户端:x86架构,os:rhel72。
如图1所示,从客户端备份一个100G/150万个小文件的目录到存储端,具体包括以下步骤:
步骤a1:存储设备通过网络协议iscsi的方式共享逻辑卷到客户端;
步骤a2:客户端将接收到的逻辑卷格式化成与源数据相同的文件系统并挂载;
步骤a3:客户端程序通过stat检索源数据目录的索引节点(下文简称inode),直接读取inode信息,生成需要传输的文件元数据,并将生成的元数据同步到逻辑卷上,同时生成对应文件及目录并保留文件和目录的所有属性;这样避免通过VFS层检索元数据,有效减少系统调用的次数;
步骤a4:客户端中的应用程序分为server进程和client进程,server进程对源数据文件进行平均分配,分割成100份,调用100个进程分别对对应的源数据子文件进行并行数据传输给clinet进程,为减少数据传输时间,在各个线程的传输过程中采用共享内存实现数据传输,使用linux下mmap函数将备份磁盘上的对应文件空间映射给client进程,从而减少数据在内核空间和用户空间之间的拷贝,实现即使不压缩数据也能大大提高传输效率的目的;
步骤a5:数据备份完成后,客户端卸载逻辑卷,存储端收回逻辑卷后对该逻辑卷进行快照,本次备份结束。
采用本实施例提供的方法对小数据文件进行备份耗时210分钟。同样的硬件条件,采用传统备份方式(千兆网)耗时480分钟,传统压缩备份方式耗时240分钟。
采用上述提高大量小数据文件备份效率的方法的进行备份的大量小数据文件的恢复方法,包括以下步骤:
步骤b1:存储端检索指定恢复的时间点对应的快照,根据快照创建克隆卷;
步骤b2:存储端通过远程存储共享协议将克隆卷映射给客户端
步骤b3:客户端直接挂载克隆卷为本地文件系统。由于在备份时并未压缩数据同时保留了源数据的文件格式和属性,所以实现零时间恢复,用户可以直接访问,大大提高了恢复效率,保证了用户的生产延续性。
采用传统方法进行备份的恢复时间虽然也很短,但是备份的时间长,传统压缩备份方式耗时虽然只要240分钟,但是恢复时间也要200分钟。本发明提供的方法的恢复时间几乎为0。
本实施例不经过linux的VFS层检索文件目录、多进程利用共享内存技术备份数据结合块设备共享及快照特性,进而规划出完整的备份恢复方案。其中,存储节点共享逻辑卷、对逻辑卷进行快照管理和本备份软件的结合体系以及相应的备份恢复方案。
本发明大大提升备份的速度,对比相同前提下的其它备份软件提升备份速度1/4左右,对比压缩数据的备份软件,恢复时的效率提升极大,其恢复时间几乎为0。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (5)

1.一种大量小数据文件备份方法,其特征在于:包括以下步骤:
步骤a1:存储端通过远程存储共享协议的方式共享逻辑卷到客户端;
步骤a2:客户端将接收到的逻辑卷格式化成与源数据相同的文件系统并挂载;
步骤a3:客户端程序通过stat检索源数据目录的索引节点,直接读取索引节点信息,生成需要传输的文件元数据,并将生成的元数据同步到逻辑卷上,同时生成对应文件及目录并保留文件和目录的所有属性;
步骤a4:客户端中的应用程序分为server进程和client进程,server进程对源数据文件进行平均分配,分割成指定数量的源数据子文件,调用之前指定数量的进程分别对对应的源数据子文件进行并行数据传输给clinet进程,在各个线程的传输过程中采用共享内存实现数据传输,使用linux下mmap函数将备份磁盘上的对应文件空间映射给client进程;
步骤a5:数据备份完成后,客户端卸载逻辑卷,存储端收回逻辑卷后对该逻辑卷进行快照,本次备份结束。
2.根据权利要求1所述的大量小数据文件备份方法,其特征在于:所述步骤a1中采用的远程存储共享协议为iscsi或FC、或IB。
3.根据权利要求1所述的大量小数据文件备份方法,其特征在于:所述步骤a4中的指定数量是用户指定数量,或根据系统内存使用情况计算的默认值。
4.根据权利要求1所述的大量小数据文件备份方法,其特征在于:所述存储端为逻辑卷管理的存储设备。
5.一种基于权利要求1所述的大量小数据文件备份方法备份的大量小数据文件的恢复方法,其特征在于:包括以下步骤:
步骤b1:存储端检索指定恢复的时间点对应的快照,根据快照创建克隆卷;
步骤b2:存储端通过远程存储共享协议将克隆卷映射给客户端;
步骤b3:客户端直接挂载克隆卷为本地文件系统。
CN201910588646.9A 2019-07-02 2019-07-02 一种大量小数据文件备份方法及恢复方法 Active CN110109778B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910588646.9A CN110109778B (zh) 2019-07-02 2019-07-02 一种大量小数据文件备份方法及恢复方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910588646.9A CN110109778B (zh) 2019-07-02 2019-07-02 一种大量小数据文件备份方法及恢复方法

Publications (2)

Publication Number Publication Date
CN110109778A true CN110109778A (zh) 2019-08-09
CN110109778B CN110109778B (zh) 2022-01-07

Family

ID=67495908

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910588646.9A Active CN110109778B (zh) 2019-07-02 2019-07-02 一种大量小数据文件备份方法及恢复方法

Country Status (1)

Country Link
CN (1) CN110109778B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111338853A (zh) * 2020-03-16 2020-06-26 南京云信达科技有限公司 一种基于Linux的数据实时存储系统及方法
CN111651303A (zh) * 2020-07-07 2020-09-11 南京云信达科技有限公司 一种分布式架构的数据库在线备份和恢复方法技术领域
CN112148229A (zh) * 2020-10-12 2020-12-29 北京计算机技术及应用研究所 一种飞腾服务器平台下的加速非易失性内存读写效率的方法
CN112988474A (zh) * 2021-05-12 2021-06-18 南京云信达科技有限公司 一种海量小文件备份热数据的方法、系统、设备及介质
CN113467996A (zh) * 2021-07-08 2021-10-01 咪咕音乐有限公司 数据库备份方法、装置、计算机设备及存储介质
CN114328030A (zh) * 2022-03-03 2022-04-12 成都云祺科技有限公司 一种文件数据备份方法、系统及存储介质
CN114422509A (zh) * 2022-04-01 2022-04-29 天津联想协同科技有限公司 文件自动备份方法、装置、网盘及存储介质
CN114840599A (zh) * 2022-07-05 2022-08-02 杭州广立微电子股份有限公司 半导体源数据解析方法、etl系统、计算机设备和产品
CN114968957A (zh) * 2022-04-19 2022-08-30 高途教育科技集团有限公司 一种文件共享方法、装置、存储介质、电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101650680A (zh) * 2009-07-27 2010-02-17 浪潮电子信息产业股份有限公司 一种基于连续快照的持续数据保护的方法
CN103870600A (zh) * 2014-04-02 2014-06-18 中国银行股份有限公司 一种基于Oracle数据库的数据表备份方法及装置
CN104035837A (zh) * 2013-10-29 2014-09-10 浪潮电子信息产业股份有限公司 一种在线备份同/异构UNIX/Linux主机的方法
CN104166600A (zh) * 2014-08-01 2014-11-26 腾讯科技(深圳)有限公司 数据备份与恢复方法及装置
US10102078B1 (en) * 2015-09-30 2018-10-16 EMC IP Holding Company LLC Minimizing a footprint of incremental backups

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101650680A (zh) * 2009-07-27 2010-02-17 浪潮电子信息产业股份有限公司 一种基于连续快照的持续数据保护的方法
CN104035837A (zh) * 2013-10-29 2014-09-10 浪潮电子信息产业股份有限公司 一种在线备份同/异构UNIX/Linux主机的方法
CN103870600A (zh) * 2014-04-02 2014-06-18 中国银行股份有限公司 一种基于Oracle数据库的数据表备份方法及装置
CN104166600A (zh) * 2014-08-01 2014-11-26 腾讯科技(深圳)有限公司 数据备份与恢复方法及装置
US10102078B1 (en) * 2015-09-30 2018-10-16 EMC IP Holding Company LLC Minimizing a footprint of incremental backups

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111338853B (zh) * 2020-03-16 2023-06-16 南京云信达科技有限公司 一种基于Linux的数据实时存储系统及方法
CN111338853A (zh) * 2020-03-16 2020-06-26 南京云信达科技有限公司 一种基于Linux的数据实时存储系统及方法
CN111651303A (zh) * 2020-07-07 2020-09-11 南京云信达科技有限公司 一种分布式架构的数据库在线备份和恢复方法技术领域
CN112148229A (zh) * 2020-10-12 2020-12-29 北京计算机技术及应用研究所 一种飞腾服务器平台下的加速非易失性内存读写效率的方法
CN112148229B (zh) * 2020-10-12 2024-01-30 北京计算机技术及应用研究所 一种飞腾服务器平台下的加速非易失性内存读写效率的方法
CN112988474A (zh) * 2021-05-12 2021-06-18 南京云信达科技有限公司 一种海量小文件备份热数据的方法、系统、设备及介质
CN112988474B (zh) * 2021-05-12 2021-11-26 南京云信达科技有限公司 一种海量小文件备份热数据的方法、系统、设备及介质
CN113467996A (zh) * 2021-07-08 2021-10-01 咪咕音乐有限公司 数据库备份方法、装置、计算机设备及存储介质
CN113467996B (zh) * 2021-07-08 2024-04-19 咪咕音乐有限公司 数据库备份方法、装置、计算机设备及存储介质
CN114328030A (zh) * 2022-03-03 2022-04-12 成都云祺科技有限公司 一种文件数据备份方法、系统及存储介质
CN114328030B (zh) * 2022-03-03 2022-05-20 成都云祺科技有限公司 一种文件数据备份方法、系统及存储介质
CN114422509A (zh) * 2022-04-01 2022-04-29 天津联想协同科技有限公司 文件自动备份方法、装置、网盘及存储介质
CN114968957A (zh) * 2022-04-19 2022-08-30 高途教育科技集团有限公司 一种文件共享方法、装置、存储介质、电子设备
CN114840599B (zh) * 2022-07-05 2022-11-01 杭州广立微电子股份有限公司 半导体源数据解析方法、etl系统、计算机设备和产品
CN114840599A (zh) * 2022-07-05 2022-08-02 杭州广立微电子股份有限公司 半导体源数据解析方法、etl系统、计算机设备和产品

Also Published As

Publication number Publication date
CN110109778B (zh) 2022-01-07

Similar Documents

Publication Publication Date Title
CN110109778A (zh) 一种大量小数据文件备份方法及恢复方法
CN100547555C (zh) 一种基于指纹的数据备份系统
US9483511B2 (en) Stubbing systems and methods in a data replication environment
AU2009324800B2 (en) Method and system for managing replicated database data
US8352422B2 (en) Data restore systems and methods in a replication environment
US8285957B1 (en) System and method for preprocessing a data set to improve deduplication
JP4813924B2 (ja) データベース管理システム、ストレージ装置、ディザスタリカバリシステム及びデータベースのバックアップ方法
CN102955720B (zh) 一种提高ext文件系统稳定性的方法
US20160048427A1 (en) Virtual subdirectory management
US20110246429A1 (en) Stub file prioritization in a data replication system
KR101922044B1 (ko) 데이터베이스 이중화 무중단 정합성 복구 기법
CN106502823A (zh) 数据云备份方法和系统
CN102014152A (zh) 一种远程复制系统及其方法
CN102402471A (zh) 基于存储阵列快照功能的数据实时备份方法及系统
CN101453489A (zh) 一种网络附加存储装置及其数据备份和数据恢复方法
CN110795416B (zh) 一种文件复制方法、装置、设备及可读存储介质
CN112380067A (zh) 一种Hadoop环境下基于元数据的大数据备份系统及方法
CN107135097A (zh) 基于簿记建档的容灾系统及容灾方法
CN103384266A (zh) 一种基于文件级实时同步的Parastor200管理节点高可用方法
CN114089923A (zh) 一种双活存储系统及其数据处理方法
US8195612B1 (en) Method and apparatus for providing a catalog to optimize stream-based data restoration
CN105138417B (zh) 一种基于zfs send的异步复制方法
CN106445729A (zh) 一种基于备份虚拟化的方法
CN110109780A (zh) 一种用于nas服务的文件级数据备份和恢复方法
CN106484566B (zh) 基于ndmp协议的nas数据备份和文件细粒度浏览恢复方法

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
GR01 Patent grant
GR01 Patent grant