一直以来,存储和备份是两个相近的概念,但是又有很大区别的。如果不是专业的技术专家,是比较难搞清楚这两者之间区别,特别是云的出现,这两个概念往往容易混在一起看。那么备份与存储的区别有哪些呢?
备份是不能独立数据容器存在,永远构建于存储之上(推荐学习:PHP视频教程)
存储是数据保存容器的统称,比如软盘,光盘,磁盘,磁盘阵列,中小规模业务用的NAS,专业的磁带库,专业的光纤存储网络SAN。存储容量从几MB,到上100TB,甚至P级。最近几年出现新的一种方案,云存储,其本身也分为个人用途和企业用途的。个人数据存储用途比如百度网盘, 360网盘,DropBox等,通称保存个人的一些资图片,文档等;企业用途的如AWS的S3, 阿里云的OSS,以及七牛云存储,又拍云,金山云的云存储等,通常用于关键业务系统,比如用户产生的文档,图片,视频等数据存储。云存储有个好处是可以动态扩展存储空间,平台提供商由于采用低成本硬盘等方案,采用分布式技术,把本身廉价的硬盘聚集起来,构建成1个具备较高可靠性的存储方案; 一些大平台,当具备规模效应后,平摊到用户,TCO成本会低不少,这是传统存储方案比较软肋的一个地方。
备份是一种数据保护的机制和方案,其实现必须依赖于具体的存储容器。目前在备份这块的市场有非常多的品牌,如Symantec 的NBU ,CommVault的备份产品,IBM的TSM,EMC的NetWorker,还有专注混合云数据备份保护服务的多备份。备份通常用于保护业务系统产生的核心数据或个人重要的数据。一般的备份系统,通常会与硬件存储设备搭配组合成备份方案。多备份目前是构建在阿里云存储,AWS的S3,七牛,以及金山云,百度云等云存储之上,所有备份的数据会存储在这些大存储平台上。
存储通常解决地理空间的访问问题;而备份解决地理空间上的冗余保存问题
我们工作用的WORD软件,如果没有数据存储介质,编辑产生的文档无法保存,配上IDE或SATA硬盘后,应用软件产生的数据可以很快保存在硬盘上。这是一个简单的硬盘存储支持软件工作的例子。一旦本地硬盘如果坏掉,努力工作一周的成功,可能得重新再来。
通常的重要业务系统架构设计的时候,会充分考虑存储方案的构成,什么样的业务系统,在几个位置,数据如何分布,需要的容量,扩展需求等进行规划设计,重点解决业务系统不断增长的数据存储问题。一般会就近业务应用服务器来部署存储架构。不管是云存储,还是传统的存储架构,都有1个目标,让业务系统,在不同的位置和存储在空间上的访问是稳定连续进行的。
数据在一个地方始终是不可靠,机房断电,线路故障,硬件故障,火灾等,特别对于重要业务系统,如支付系统,一旦业务系统为了保持业务连续访问,考虑到了多个地点的数据镜像,就有一点备份的味道。云存储目前在空间数据冗余保存方面,一般也有做数据垮地区的冗余保存,防止灾难的发生。
备份在此基础上,进一步封装逻辑,对数据在不同的地方,可以订制不同的复制策略。较重要的数据,通常可以在1个地方进行冗余,比如用户产生的日志,图片等可以冗余1份;对于更关键的数据,如用户注册数据,数据存储索引数据,交易数据,金融系统相关数据等,必要时得多地冗余。云存储的出现,使得基于云的备份方案,实现起来更加容易,轻易按需构建不同的地理位置的通道,只要你愿意,数据备份到全球几十个地区的云存储中心都可以。这一切可以用最简单的手动复制方案,也可以用自动管理的方案,比如多备份等。
存储通常解决连续数据读写,保存问题 ;备份解决时间版本冻结和回溯问题
保存1个word文档,上传完一部电影,修改一个帖子,发送1条微信消息,这些要么被顺序写入硬盘,要么被写入专业的数据库或文件系统。这是存储典型的一个应用场景,就是不断响应从业务或软件发送的数据保存需求,文档,电影,帖子最后只会有最新的一个状态,历史的状态一直被最新的状态覆盖。
既然有新增,那就也有删除,也有修改,所以存储并不识别上层软件的意图,可能是正常,也可能是恶意入侵,或误操作,新增和删除同样在底层会进行操作。部分存储设计,带有一定的备份恢复能力,当然要想使用备份恢复能力,可能比部署一套备份方案,来的成本会更大。我们都知道恢复一个硬盘的数据,通常得数上千块,硬盘不值钱,但里面的数据值钱。
解决新增,删除,修改等有意无意的行为对数据存储系统带来的影响,这时候得专业功能-备份上场。备份系统最主要考虑的一个功能就是时间线版本冻结和回溯。每次对存储系统的备份,都会形成1个当前备份时刻的数据镜像版本,恢复的时候就可以直接选择对应的版本恢复,数据就回到从前那一时刻状态。当然不同的产品实现备份方案不一样,对于基于混合云架构的多备份来说,版本理论上可以一直保持下来,想怎么恢复,就怎么恢复。另外,不同的实现,镜像的一致性结果不尽相同。对于一致性要求高的场景,版本可能会冻结写请求,如数据库备份直接加写锁,这时候对业务会有短时间影响;如果你说自己是土豪出得起价,需要对业务系统几乎无干扰,几十上百万无所谓,则可以购买比较牛的连续数据保护方案(CDP),如国外的飞康CDP。
存储通常面向硬件故障为安全设计目标;备份解决软硬件故障在内的多种因素引起的数据安全问题
在我们日常概念中,存储就等于安全,特别是云计算概念出现后,包括周边的一些技术高手也有类似看法,实际上这是一个误区。
从最常用的机械硬盘开始,通常围绕温度,读写寿命,抗冲击力等设计,一些硬盘在读写超过几百TB后,就开始工作不正常,SSD硬盘在环境温度变化,可能也会引起数据有效性变化。随着存储安全技术的加强,出现了冗余整理的技术,把多块硬盘进行聚合,数据写入多块硬盘;提高了单块硬盘的可靠性。进入到NAS,SAN等专用存储解决方案后,通过冗余阵列,通道冗余,快照镜像等技术,进一步提高了存储容量和整个读写环节的可靠性。但这些都是围绕硬件故障或存储区域故障进行设计。云存储,包括对象存储和弹性块存储,核心设计目标依然是数据在硬件或存储节点或区域系统出问题时候,有能力从其它节点恢复。
备份系统一个重要设计思想就是围绕恢复设计。备份把数据从1个节点,一个系统复制到另外一个节点,一个系统,规避了硬件、软件在同一时期发生问题的可能性;备份系统通常会在数据存储这里增加高级别的冗余配置,或冗余复制,或低成本的算术冗余数据分布。备份系统通过时间版本化,空间冗余分布进一步规避了因为各种有意,无意的数据读写动作,包括人为操作,系统故障,软件缺陷,黑客入侵,病毒,自然灾难等,引起的数据丢失,新增,修改等问题。一些设计得比较好的方案,会轻松还原数据。即时在备份系统软件出现问题,也能把数据通过一定的流程还原回去。多备份在业务系统出现问题后,甚至可以在选定数据库表或某1个文件独立恢复;如果数据采用混合云模式,数据再TB级别,也可以在极其短暂的情况下恢复到业务系统中。
存储通常以数据规模变”大”为美,而备份通常以最大程度把数据变“小”为美
这里的变大,是指存储解决的问题是如何存储超大规模的数据。在我们日常话题中,通常沟通交流的是谁家的硬盘支持1TB,2TB,4TB等,业务系统支持多少用户规模,产生了多少TB数据,数据库存储规模如何等, 衡量一个存储系统设计的是否好,就是在大规模数据下,系统反应良好,用户感觉流畅。而支持这一目标,通常会说存储服务器支持的硬盘块数,单块硬盘的容量,当然IO通道能力也是配套指标。
为了支持足够的大,配上专门的存储交换机,快速把大容量存储阵列映射到不同的服务器上;而数据集中存储在SAN网络中,有的高达几百TB甚至PB级别。即使这样,支持压缩的特性也能派上用场,特别巨大的数据量,对存储的数据默认进行压缩或去重,降低数据占用空间。云存储的出现,更是把容量推向了几乎无限;单个云平台或者准确受限于存储机房区域的容量和区域的数量。由于动态扩容特性,当存储网络不够时,在IDC空间足够的情况下,可以不断增加节点完成存储节点的增加。
通常当数据足够大,数据足够久的时候,数据就需要归档备份起来。而备份就是解决如何保持完整的数据同时,能更好的减低存储开销。所以,一般来说,由于备份会采取在原端去重,或存储端全局去重等技术,保持最小的备份空间。同时包括压缩等方案,也会自动在备份流程中引入。在传统的实施方案中,由于要定期作全量,数据会变得很大,所以一般保留3个月,或半年,或按年做次全量等策略 ; 在快照模型下,由于产生的数据规模比较大,通常云主机对云磁盘采取的快照备份一般也保持几个快照。传统备份产品也有全增量策略,只是结合硬件存储方案,使用和管理成本依然还是比较高; 多备份采取的全增量策略,优势主要集中在混合云索引增量模型,数据保持最小增长规模可靠存储的同时,还可以保持更简单的快速恢复体验,大规模数据备份非常省空间。
更多PHP相关技术文章,请访问PHP图文教程栏目进行学习!
Atas ialah kandungan terperinci 备份 存储区别. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!