快照是什么,快照如何储存?
title:快照是什么,快照如何储存?
本文内容
- 快照是什么?为什么使用快照?有什么优点和缺点?
- 快照存储技术。
问题来源
在学习版本控制工具git时,GitBook中提到了“直接记录快照,而非差异比较”。对「快照」概念不了解。
1 快照概念#
In computer systems, a snapshot is the state of a system at a particular point in time.
在计算机系统中,快照是系统在特定时间点的状态。--Snapshot-维基百科
简单理解快照:
- 执行快照时,所有的数据状态被锁定,不可修改,也不可删除。【重要】
- 执行快照时,会记录此时所有数据索引位置,该文件索引位置被称为
快照
,也就是维基百科中定义的「特定时间点的状态」。 - 当第一次执行快照时,会生成所有数据的索引。
- 当没有数据修改时,执行快照操作,生成的磁盘数据索引和之前的相同。
- 当有数据修改时,执行快照操作,磁盘中旧数据本身不会被删除,但是生成的索引会指向修改后的新数据。即此次
快照
不包含指向旧数据的索引,但旧数据本身仍然存在。 - 之后进行版本回滚时,可以执行旧数据对应的快照,根据旧数据的索引回溯旧数据本身。
2 为什么使用快照(优劣)?#
从上述快照执行的过程可以看出来,快照储存的数据不是数据本身,而是指向磁盘数据的索引。
快照的优势:
- 占用空间较小:索引的大小相比于数据本身要小得多,因此同一份数据,快照比备份占用空间小得多,而备份需要两倍的储存空间。
- 快照执行时间更快:因为储存的快照本身较小,因此每次执行快照的时间较短。备份的时间优势可以解决I/O占用、数据一致性等问题。
快照的不足:
- 根据快照的生成方式可以知道,快照只是磁盘数据的索引,当磁盘原始数据损坏后,快照无法进行原始数据恢复,但备份没有这方面的问题。不过,不少备份软件为了回避因备份时间的问题,通常先生成快照,然后再通过快照数据进行备份操作。
3 快照储存技术#
未完待续...
参考#
可通过个人域名 bitleef.com或者www.bitleef.com访问该博客。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!