一种基于快照的版本管理方法技术

技术编号:19009181 阅读:22 留言:0更新日期:2018-09-22 09:03
本发明专利技术公开了一种基于快照的版本管理方法,包括以下步骤:1)创建btrfs文件系统,用于存储数据文件;2)采用版本管理服务,对文件系统子卷和快照操作技术进行封装;3)配置版本管理服务,实现对子卷和快照调用命令的快速调用;4)采用配置后的版本管理服务进行版本创建、版本切换和版本删除操作。本发明专利技术基于btrfs文件系统的快照管理技术,通过将文件系统子卷和快照操作技术进行封装之后再行调用,能够无时间延迟的进行版本切换以及快速访问,适用于数据存储,文件管理等,具有冗余小、适应性强、性能高效及使用方便的特点。

A version management method based on snapshot

The invention discloses a version management method based on snapshot, which comprises the following steps: 1) creating a Btrfs file system for storing data files; 2) encapsulating the file system sub-volume and snapshot operation technology by using a version management service; 3) configuring a version management service to realize the quick adjustment of the sub-volume and snapshot invocation commands 4) Version creation, version switching and version deletion are performed by using the configured version management service. The invention is based on the snapshot management technology of the Btrfs file system. By encapsulating the sub-volume and snapshot operation technology of the file system and invoking them after encapsulation, it can switch versions without time delay and access quickly. It is suitable for data storage, file management, etc. It has the advantages of small redundancy, strong adaptability, high performance and high usage. The characteristics of convenience.

【技术实现步骤摘要】
一种基于快照的版本管理方法
本专利技术涉及快照版本管理领域,具体涉及一种基于快照的版本管理方法。
技术介绍
BTRFS(通常念成ButterFS),是由Oracle于2007年宣布并进行中的COW(copy-on-write式)文件系统。目标是取代Linux目前的ext3文件系统,改善ext3的限制,特别是单一文件大小的限制,总文件系统大小限制以及加入文件校验和特性。加入目前ext3/4未支持的一些功能,例如可写的磁盘快照(snapshots),以及支持递归的快照(snapshotsofsnapshots),内建磁盘阵列(RAID)支持,支持子卷(Subvolumes)的概念,允许在线调整文件系统大小。把文件系统的一部分配置为一个完整的子文件系统,称之为subvolume。采用subvolume,一个大的文件系统可以被划分为多个子文件系统,这些子文件系统共享底层的设备空间,在需要磁盘空间时便从底层设备中分配,类似应用程序调用malloc()分配内存一样。可以称之为存储池。这种模型有很多优点,比如可以充分利用disk的带宽,可以简化磁盘空间的管理等。所谓充分利用disk的带宽,指文件系统可以并行读写底层的多个disk,这是因为每个文件系统都可以访问所有的disk。传统的文件系统不能共享底层的disk设备,无论是物理的还是逻辑的,因此无法做到并行读写。所谓简化管理,是相对于LVM等卷管理软件而言。采用存储池模型,每个文件系统的大小都可以自动调节。而使用LVM,如果一个文件系统的空间不够了,该文件系统并不能自动使用其他磁盘设备上的空闲空间,而必须使用LVM的管理命令手动调节。快照是对文件系统某一时刻的完全备份。建立快照之后,对文件系统的修改不会影响快照中的内容。这是非常有用的一种技术。比如数据库备份。假如在时间点T1,管理员决定对数据库进行备份,那么他必须先停止数据库。备份文件是非常耗时的操作,假如在备份过程中某个应用程序修改了数据库的内容,那么将无法得到一个一致性的备份。因此在备份过程中数据库服务必须停止,对于某些关键应用这是不能允许的。利用快照,管理员可以在时间点T1将数据库停止,对系统建立一个快照。这个过程一般只需要几秒钟,然后就可以立即重新恢复数据库服务。此后在任何时候,管理员都可以对快照的内容进行备份操作,而此时用户对数据库的修改不会影响快照中的内容。当备份完成,管理员便可以删除快照,释放磁盘空间。现有版本管理系统多是基于应用层面实现,版本的创建多是采用数据备份的方式实现,创建过程时间较长且存在大量的数据冗余,版本之间切换也存在时间延迟的情况。而对于采用BTRFS快照进行的版本管理,目前需要用户自行输入代码才能调用相应文件进行操作,使用十分不便。目前,还没有基于BTRFS快照技术实现的版本管理系统,用户想要使用BTRFS快照技术实现版本管理,只能自行输入BTRFS快照技术相关命令来进行操作,使用十分不便。
技术实现思路
为了解决现有技术的不足,本专利技术提供了一种基于快照的版本管理方法,该方法基于btrfs文件系统的快照管理技术,通过将文件系统子卷和快照操作技术进行封装之后再行调用,能够无时间延迟的进行版本切换以及快速访问,适用于数据存储,文件管理等,具有冗余小、适应性强、性能高效及使用方便的特点。为了实现上述目的,本专利技术的技术方案如下:一种基于快照的版本管理方法,包括以下步骤:1)创建btrfs文件系统,用于存储数据文件;2)采用版本管理服务,对文件系统子卷和快照操作技术进行封装;3)配置版本管理服务,实现对子卷和快照调用命令的快速调用;4)采用配置后的版本管理服务进行版本创建、版本切换、版本对比和版本删除操作。进一步的,所述步骤1)中,通过在操作系统中选择BTRFS文件系统或下载BTRFS安装包进行BTRFS文件系统安装。进一步的,所述步骤1)包括基于BTRFS文件系统,使用mkfs.btrfs命令建立一个btrfs格式的文件系统。进一步的,所述步骤2)中,版本管理服务中,将对文件系统子卷和快照操作的命令采用程序代码进行封装,形成代码调用模块。进一步的,所述步骤3)中,通过配置子卷和快照存放位置实现配置版本管理服务。进一步的,所述步骤3)中,所述子卷和快照调用命令包括创建子卷命令、创建快照命令、查看快照和子卷命令、快照挂载命令及删除快照命令。进一步的,所述步骤4)中,版本创建,通过调用版本创建程序模块,执行调用快照创建命令,进行版本创建。进一步的,所述步骤4)中,版本切换,通过调用版本访问程序模块,版本访问程序模块提供查看所有快照的接口,每个快照都挂载在不同的目录下,可以随时访问不同的快照,选择想要查看的版本,访问相应目录,完成版本切换。进一步的,所述步骤4)中,版本对比,通过调用版本访问及版本对比程序模块,同时访问两个版本所对应的快照,并将两个快照中的数据进行比较。进一步的,所述步骤4)中,版本删除,通过调用版本删除程序模块,执行命令删除快照和子卷。与现有技术相比,本专利技术的有益效果是:(1)冗余小该方法基于btrfs文件系统的快照管理技术实现,快照不等于完全复制,文件系统大小不会成倍增加,相对于数据备份的方式,减小了数据冗余;(2)适应性强该方法可以很好的实现对数据库和文件的版本管理,可以在不关闭服务的情况下,完成对数据库和文件的快照创建;(3)性能高效该方法基于btrfs文件系统的快照管理技术实现,一个新版本创建就是创建一个新的快照,这个过程一般只需要几秒钟,基本不影响数据库或者文件服务的使用;(4)使用方便该方法将btrfs文件系统的快照调用命令封装到程序代码当中,通过调用相关程序接口,就能采用快照方式对文件版本进行管理。附图说明构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。图1为本专利技术版本管理方法应用于数据库版本管理的流程图。具体实施方式下面结合附图与具体实施例对本专利技术做进一步的说明。应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属
的普通技术人员通常理解的相同含义。需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。在本专利技术中,术语如“上”、“下”、“左”、“右”、“前”、“后”、“竖直”、“水平”、“侧”、“底”等指示的方位或位置关系为基于附图所示的方位或位置关系,只是为了便于叙述本专利技术各部件或元件结构关系而确定的关系词,并非特指本专利技术中任一部件或元件,不能理解为对本专利技术的限制。本专利技术中,术语如“固接”、“相连”、“连接”等应做广义理解,表示可以是固定连接,也可以是一体地连接或可拆卸连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的相关科研或技术人员,可以根据具体情况确定上述术语在本专利技术中的具体含义,不能理解为对本专利技术的限制。正如
技术介绍
所介绍的,现有技术中存在现本文档来自技高网
...
一种基于快照的版本管理方法

【技术保护点】
1.一种基于快照的版本管理方法,其特征在于,包括以下步骤:1)创建btrfs文件系统,用于存储数据文件;2)采用版本管理服务,对文件系统子卷和快照操作技术进行封装;3)配置版本管理服务,实现对子卷和快照调用命令的快速调用;4)采用配置后的版本管理服务进行版本创建、版本切换和版本删除操作。

【技术特征摘要】
1.一种基于快照的版本管理方法,其特征在于,包括以下步骤:1)创建btrfs文件系统,用于存储数据文件;2)采用版本管理服务,对文件系统子卷和快照操作技术进行封装;3)配置版本管理服务,实现对子卷和快照调用命令的快速调用;4)采用配置后的版本管理服务进行版本创建、版本切换和版本删除操作。2.如权利要求1所述的一种基于快照的版本管理方法,其特征在于,所述步骤1)中,通过在操作系统中选择BTRFS文件系统或下载BTRFS安装包进行BTRFS文件系统安装。3.如权利要求1所述的一种基于快照的版本管理方法,其特征在于,所述步骤1)包括基于BTRFS文件系统,使用mkfs.btrfs命令建立一个btrfs格式的文件系统。4.如权利要求1所述的一种基于快照的版本管理方法,其特征在于,所述步骤2)中,版本管理服务中,将对文件系统子卷和快照操作的命令采用程序代码进行封装,形成代码调用模块。5.如权利要求1所述的一种基于快照的版本管理方法,其特征在于,所述步骤3)中,通过配置子卷和快照存放位置实现配置版本管理服务。...

【专利技术属性】
技术研发人员:张守鹏李天赠管池程静静
申请(专利权)人:山东昭元信息科技有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1