杨博
作者杨博课题专家组·2016-11-16 11:48
IT顾问·某科技公司

存储未来发展趋势

字数 4155阅读 4926评论 1赞 0

存储整体发展趋势

第一:分级存储

众所周知,我们正身处一个数据急速膨胀的时代,数据量达到PB级别的现象已屡见不鲜。那么在PB环境下,大家更关心的,是数据的存储成本问题。如何解决存储成本问题?办法有两个,一个是分级存储,另外一个是采用erasurecode来实现。

什么是分级存储?在一个存储环境中,第一层用flash闪存,第二层用SAS,底层用SATA,这其实就是一种分级存储。又例如,在开源方面,facebook推出一款开源软件flashcache,它是把一个高速的块设备和一个低速的块设备相结合成一个设备来使用,这也是在做分级存储。总体而言,分级存储包括了物理存储和网络存储两个部分;举个例子:一个厂商承诺能够提供1PB的存储容量,它是怎么做的?首先,它只提供100T的物理存储,然后通过一个账号连接到后面的网络存储,两者相加实现1PB的存储容量,这就是在做分级存储。

分级存储能够将那些需要经常访问、使用的热点数据存放在高性能、低延时的存储设备上,确保这些数据的高效利用;同时将那些不经常访问、使用的数据存放在性能相对普通、延时相对较高的存储环境里。最终能够帮助我们合理投资,创建高效的存储系统,高效,就意味着存储成本的显著降低和优化。

说到分级存储,在此还想和大家分享一下有关闪存的心得体会。在之前的几十年里,磁盘占据着存储市场的主导地位。近年来兴起的闪存技术正在快速代替磁盘存储而成为业界主流。闪存降低了整个存储行业的准入门槛,原因在于,相比磁盘的真空构造,闪存设备的“闪存芯片”外加一个“控制器”的构造更加简单,实现起来也更加容易。闪存成为主流,占据主导地位,是未来的发展趋势。

还有一个趋势,就是应用多元化。现在出现了像云计算、虚拟化、大数据等等一系列的应用。而这些应用的产生,让原本目标明确的厂商变得迷茫,变得不知该如何开展下一步的业务。由于存储设备的研发需要很长的时间周期,包括一线厂商在内的许多企业都非常担心自己正在研发的产品是否符合市场的需求,是否出现产品研发出来后已经过时的严重后果。这一多元化应用趋势所带来的迷茫现象正充斥着整个业界。

上面讲到降低存储成本有两个方法,另外一个就是erasure code。erasure code就是一种编码的方式。我们知道谷歌在2006年推出GFSpaper之后,三个副本便奠定了整个存储界的基础,三个副本成为标准化配置。打个比方,如果1PB的数据,那三个副本就是3PB,这存储如此巨量的成本会非常高。而借助erasure code技术,能够帮助我们仅用1.2或者1.4的实际容量即可存储3PB的数据,所以说erasure code是现在海量数据体系下的一个非常有效的降低存储成本的手段。

第二:分级存储节点智能化

整个存储架构的设计,简单点儿说就是查阅,先查一下数据在哪儿,然后再去访问该数据。分布式存储设计或者海量存储都是这种方式。查表的方式其实就是一种中心化的方式。为什么要做中心化、集中化?很关键的一点在于,集中化的管理非常简单。比如Facebook的图片存储系统haystack,就是中心化方式的一种具体体现;另外,苹果经常使用的HBase也是如此,它的Hmaster也是一种中心化,它的rowkey其实都是源数据管理。

但现在的趋势是去中心化,去中心化的一个主要途径就是将计算朝存储转移。大家所熟知的ceph,OpenStack的后端存储,它的创新理念就是“不用查表,算算就好”。展开来讲,就是说它没有中心节点,没有刚才我们说到的源数据管理,没有索引信息。它的数据分布在其后成千上万的、有计算功能的存储节点上。每个存储节点都会非常智能地判断并协助数据存取操作。正是基于存储节点具备了计算功能这一特性,才有了它“不用查表、算算就好”的独特理念。

用户对存储系统的需求无外乎以下4种:一是低成本;二是高性能、高容量;三是有弹性、可扩展;四是易于管理。现在来看,其中的一些需求正在发生变化。比如易管理,现在正转变升级为智能化管理。因为易管理还是停留在需要人管理的层面,但智能化管理则上升为根本无需人工干预的理想状态。成千上万台设备全部在自我管理下有序运行,这种智能化管理的场景让人拥有无限遐想。智能化智能化已经成为存储领域不可逆转的发展趋势,刚才所讲到的ceph就具备了非常强大的自我、智能化管理特性。

整体来看,智能化的大潮正在席卷各行各业。现在的无人驾驶正是智能化在汽车行业的成果体现。在我看来,智能化之所以能够出现,其中很重要的一个原因在于人们希望达到一种一站式管理的极简境界。比如,存储无外乎对象存储、文件存储和块存储3种类型,越来越多的应用正在朝着全面支持这3种存储的方向大步迈进。正是由于实现了全面支持,才使得管理变得更加简单。这也是我会在后面讲到的第5个话题,软件定义存储。也就是说,正是因为支持了更多功能,存储会根据不同数据的特点,进行自我性能优化。这些正是数据存储节点智能化的几个方向。

举例来说,我们现在经常使用的社交应用,微博。它其实就是让存储变得更加智能,在存储节点实现计算功能,体现存储节点智能化的典型案例。

第三:大数据时代下计算向存储转移

大数据时代,计算正在朝着存储转移。为什么这么说?因为这种转移将为数据中心的各个方面都带来不菲价值。

仍以微博为例,你会发现,当计算朝着存储转移,或者说存储设备具备了自我计算能力时,会让你的服务器计算减轻很大负担。另外,我们把计算系统分类,大致可以分为计算、网络、存储3个部分。这3部分现有的运行机制是:先通过网络从存储设备上取到数据,然后再通过网络将数据传输至服务器进行计算。可以想象,当数据量快速膨胀急剧增长时,你的服务器、存储都要随之扩张,从几万台扩张到十几万台;你的网络带宽必须随之扩容,一些大型企业的带宽已经从10G升级为40G。最终你会发现,数据中心的成本、能源、人力消耗会越来越多越来越不堪重负。

大家都听过PCI-E这样的设备,一些flash设备。它们在做的,其实就是把计算正朝着存储转移。再比如近两年新兴的Hadoop、Spark,它们也是在做同样的事情。

在计算转移方面,大数据环境下的计算转移,表现为刚才所说的计算朝着存储转移,而针对个人,计算的转移表现为正在朝着桌面转移。比如,我们现在用到的手机,其实就相当于一台电脑。而在此之前,无论是我们知道的BS架构还是CS架构,其服务器端我们都统称为胖服务器端,客户端称之为瘦客户端。计算朝着桌面转移,会大大减轻服务器端的负载,与此同时,客户端计算能力正在增强。

推动计算朝着存储转移的一个重要动力、原因,还在于大数据时代,数据、特别是非结构化数据的增长速度越来越快,也就是说,大数据的一个重要内涵时数据增长速度快,即快数据。也正是如此,使得越来越多的用户对原本只做离线的Hadoop、Spark的需求越来越高,希望它们能够做到在线、实时呈现数据。这也有力加快了计算朝着存储转移的速度。

第四个:云计算、云存储

说到云存储,先总结一下用户需求。最重要的需求,我们可以直白描述为:傻快存储。傻,即傻瓜式使用,用户无需关心如何使用,只要能够拿来即用就好。快即响应快,指能够快速响应业务需求。除此之外,可能还包括了稳定性需求、高性价比需求、海量数据存储的超大容量需求。

其实云存储核心所做的,就是将应用软件与存储设备相结合,将存储设备向存储服务转化。在软硬件结合方面,我们所熟知的苹果,就是很好的范例。除以上需求之外,还有一个就是如何合理存储数据的需求。比如将OLTP关键交易数据存放在性能高、低延时的存储设备,而将访问量不是很高的数据放在云存储上。大家现在看到的副媒体类型的数据,比如说图片、视频,这些副媒体文件的数据,大都存放在所谓的云存储上。纵观整个行业,亚马逊的EBS其实就是在把存储逐步云化,提供一个统一的存储。

还有一个就像我们刚才提到那个openStack的后端存储ceph,其实也在做这样的事情。就是把你所有的存储都放在一个云上面,包括比较难解决的数据库问题都在做这样的问题。像云盘等各种网盘其实就是云存储的一种实现方式。回到核心点,云存储的本质就是软硬件的结合。对于用户来说,通过云存储能够拥有适合自身业务的应用组合。这其实是云存储整体的一个未来发展方向。

第五:软件定义存储

诸如软件定义网络、软件定义存储等等一系列以“软件定义”冠名主导的概念,在时下非常火热。那么,为什么会出现“软件定义存储”?

众所周知,软件行业的应用呈现出多元化的特点,比如虚拟化,云计算,各种存储应用,包括数据库、文件存储等等。这一多元现象会导致一个问题,即管理难度大、管理要求高。有没有一种方式能够做到统一管理?这是普遍关注的问题。

所谓的软件定义存储,就是在整个物理层中抽象出一层软件层,通过这一软件层做很多很多的事情。从现在最热的docker身上我们能够了解到,它其实就是把整个虚拟化方面或者说管理方面的粒度变得越来越小。简单来说,粒度粗的话管理较简单但不够灵活,粒度细的话,就像积木一样,可以任意组合出我想要的东西。这也就解释了为什么会出现“软件定义”这一概念 。

软件定义存储的背后,是云计算、虚拟化、大数据在强力推动。它们3者的共性表现在多元化的运用方面。通过软件定义存储,我们可以做到既支持SQL,也可以支持NoSQL,还可以支持大数据,这就是一个多元化的需求,就是软件定义存储之所以能够出现最重要的原因。说到底,软件定义存储是基于管理方面的考虑才出现的,就是如何能够让管理越来越自由的一个方式。

总结

一共5各方面的主题分享,一是讲到分级存储是降低存储成本非常重要的一个手段。还有一个手段就是erasure code。第二个是存储节点的智能化,就是承担更多的计算,从而降低整个性能方面的开销,然后包括去中心化趋势。第三个就是计算朝着存储转移,如何能够让膨胀的数据中心降下去。第四个是云存储,刚才也讲到现在很多的图片、视频,这种副媒体数据都会是CD加一个云存储,这是现在业界内的一个标准架构。第五个方面就是软件定义存储,就是随着这种虚拟化各种云计算的发展,人们对于这个运用的多元化需求,导致软件定义存储这方面的需求越来越多。以上5部分是我眼中的未来存储的发展方向。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论1 条评论

bin__binbin__bin系统工程师gzgas
2021-07-22 17:33
所谓的云存储只是对用户而言,实际上仍然是集中存储而已,偷换概念. 中间商建集中存储,出租给企业,鼓吹企业数据中心去存储化, 使用云存储,租用空间而已.因为中间商要赚钱. 倒是那个erasure code 是个新技术,能用1.4P左右空间存储3P左右的数据, 这技术不得了.
Ctrl+Enter 发表

本文隶属于专栏

最佳实践
不同的领域,都有先行者,实践者,用他们的最佳实践来加速更多企业的建设项目落地。

作者其他文章

相关文章

相关问题

相关资料

X社区推广