随着大数据系统建设的深入,企业的数据基础设施面临两个问题:
一个是成本问题,随着累积的数据量的增大,大数据业务量的增多,数据存储和处理的成本越来越高,企业数据基础设施的投资越来越大,这部分投资挤占了企业大数据业务创新的空间。
另一个是效率问题,大数据处理组件多,不同组件使用不同的数据处理格式,比如大家熟悉的数据湖、数据仓库使用的就是不同的格式,多样化的数据格式导致数据存储变得复杂,系统中应对不同的场景,往往同样的数据需要存储多份,不同组件之间还需要大量的数据拷贝和格式转换,消耗大量的资源。
那么,为什么存算分离架构会受到越来越多企业IT部门的青睐呢?
这里不得不说一下Hadoop架构,2004-2006年间,Google陆续发表了Google File System、MapReduce和BigTable三篇革命性技术的文章,奠定了分布式系统理论基础。随后以这三项技术为核心的开源框架如雨后春笋般涌现出来,Apache基金会开发的分布式系统基础架构Hadoop便是其中之一。由于Hadoop能够在开发者不了解分布式底层细节的情况下,利用集群的计算和存储能力,对大量数据进行可靠、高效、可伸缩的分布式高速运算,成为了大数据分析时代驱动数据价值挖掘和变现炙手可热的技术之一。
而在Hadoop三代版本的演进中证明了存算分离已成为大数据建设的必然趋势。
存算分离1.0:以灵活扩展,优化成本为核心作为大数据平台普遍的技术栈基础,Hadoop 1.0使用通用服务器和普通硬盘搭建了大规模数据存储和计算集群。在设计之初,由于单机吞吐量和集群网络带宽限制,Hadoop集群部署都存储和计算在一起,将计算的代码移动到数据所在的地方,而不是将数据传输到计算节点,这种方式可以产生更少的数据迁移,降低机器间、机柜间的网络带宽消耗,有效解决了分散在各个弱连接的存储节点间的海量数据访问的困难。
经过十几年的发展,随着海量负载和大数据用例的出现,单一Hadoop集群的规模变大,多个Hadoop集群需同时支撑不同的业务。因此在存储和计算耦合架构下,大数据集群将面临两个重要问题:
成本:由于存算一体,计算资源和存储资源是按某一比例强绑定,系统扩容必须按节点数目增加,导致内存或磁盘的浪费。另外由于使用3副本的数据存储模式,在大集群(100+ 节点、PB级别)下将造成高昂的存储成本。
资源利用率低:由于多个Hadoop 集群承接不同的工作负载,随着支撑业务需求的波动,系统负载出现峰谷,然而存算一体的架构导致各集群的资源完全独立隔离不能共享(跨行业的存算一体架构下的Hadoop集群平均资源利用率在25%以下)。
考虑到上述问题,不少企业开始思考这种一体化架构以及数据本地化的必要性。2012年前后,Facebook、AWS等厂商基于GFS论文中的EC算法,提出了存储和计算分离的架构原型。
2014年,EMC Isilon使用One File System (OneFS)作为底层文件系统提供EC能力,并局部兼容HDFS以RPC协议来连接Hadoop计算集群,从而为Hadoop集群实现了存算分离的能力。随后VMWare推出虚拟化Hadoop计算节点支持,连同Isilon OneFS分布式存储实现了商业可用的存算分离Hadoop平台,给产品带来了非常大的灵活性,存储和计算可以按需创建和自动弹性伸缩,无须准确估算未来的业务规模,降低了系统部署和扩展成本,同时将CPU和磁盘充分调度起来,解决了资源利用不均衡的问题,而存算分离也因此逐渐成为Hadoop 2.0 技术演进的趋势。
下一代存算分离:以数据为中心,走向实时分析
Hadoop 2.0 平台的优点在于使用EC替代了3副本减低了存储的成本,并在存算解耦后能独立扩计算集群和存储集群提高资源利用率。但用户依然面对管理多套异构集群,数据跨集群迁移耗用大量计算和带宽资源,和管理HDFS协议和S3协议异构存储的困境。
以政府行业为例,当前政务管理大数据逐渐向城市运行大数据演进,涉及多部门、IoT等数据。上百个水平(城市)+垂直(委办局)应用涌现,办理一项业务经常涉及多种应用,同时在城市运行大数据演进过程中,还会有新应用不断接入进来这些应用的高峰时间段差异很大,每种应用的扩容周期也差异较大,因此需要多种应用间可共享数据,提升数据使用效率;系统灵活扩展,安心运维。
因此随着新兴业务的发展,解决数据存得下的问题已经无法满足企业大数据建设的诉求,下一代大数据存储应该更多以数据为中心,聚焦数据用得好的问题,以数据驱动融合分析、统一存储,进一步驱动数据价值实时变现。
开源社区提出了湖仓融合的新兴数据格式,支持数据湖、数据仓库使用同一种格式,同一份数据支持多种组件访问,减少数据重复存储和搬迁,缩短了数据加工链路、减少中间过程的同时,大大提高了数据分析的效率。
华为海量存储在商用的存算分离1.0方案满足降成本的客户需求后,当前率先在存储上支持湖仓融合的新兴数据格式,在下一代存算分离架构下,基于一份数据支持接数据湖、数据仓库同时访问。提供以业务为中心的高弹性大数据计算,以数据为中心的高性能海量存储,用户无感知的原生HDFS和S3兼容能力,进一步向湖仓一体、一湖多云、实时分析演进。
随着5G和IoT到来,数据激增,同时大数据业务重要性不断提高,逐步转变为生产核心系统,例如金融的大数据清算、经营分析,运营商的行程码、详单查询和应急救灾业务等,大数据系统已经成为对企业生产运营有重大影响的关键一环,而且数据价值密度不断提升,海量大数据存储既要求低成本,又要求高可靠高性能,还要拥有容灾备份、多租户隔离防扰临、大数据复杂生态对接、计算热插拔、跨域协同分析、安全性等能力,因此随着企业级大数据建设的深入,基于存算分离架构,计算承接丰富的应用接入需求,存储提供成熟稳定的底座支撑业务发展和生态对接是一道必经之路。
原文标题 : 大数据不得不说的事儿(一):存算分离凭什么能一统天下