详解:从Greenplum、Hadoop到现在的阿里大数据技术

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 在2016云栖大会·武汉峰会上,阿里云技术专家宋杰分享了他对云计算的三条路径的理解和感悟,并且阐述了云计算对于企业而言到底意味着什么的问题。那么阿里大数据发展之路经历了哪三次技术突围?阿里又是如何通过十余年的技术沉淀最终铸就飞天系统的呢?本文将为你揭晓答案,精彩不容错过。
对于企业来说,但是到底云计算是什么呢?相信很多企业都有这样的困惑,让我们一起回到这个原始的起点探讨究竟什么是云计算?云计算对于企业而言到底意味什么?

云计算的三条发展路径及三种落地形态

当回到最初的起点再审视云计算的发展路径,可以发现,经过十余年的发展演进,云计算有三条发展路径,并且最终沉淀下来了三种落地形态。


第一条路:源自于谷歌对大规模数据的处理,谷歌为全球的互联网用户提供同一个服务——搜索,它需要将全世界所有的网站的数据都爬回去,然后做排序和索引,之后再为用户提供搜索服务。可以看到这样的工作需要对海量数据进行处理,谷歌需要把上百万台的服务器整合起来去做排序,索引和查询。


第二条路:淘宝则发展出来云计算的另一条路径,这条路与谷歌的相比有类似之处,同样需要把很多数据整合起来做一件事情。在我看来,淘宝所做的事情比谷歌更伟大一点,因为淘宝做的事情是交易。承载6亿用户在线访问和下单支付,这件事情比简单提供一个不能保证这次查询和下次查询结果的差异的查询要更加困难,也更加伟大。因为这是有极其严格的业务要求的,虽然在规模上而言淘宝可能用不了像谷歌那样多达百万台的机器,但是这也是一个聚沙成塔的过程,把众多的廉价的服务器整合起来去做一件事情,这就是云计算的第二条路径。

第三条路:这条路径的发展是源于在过去的十几年间企业内部在硬件方面进行的大量的投资造成的大量赋闲服务器资源。对于企业内部的使场景而言,往往仅有几千或者几万个用户,即便是大型的国有企业拥有有上百万用户,也就仅此而已。和动辄上千万,上亿的互联网用户相比,企业投入大量的IT资源特别是硬件资源的情况下,服务的客户数过少,显然造成服务器资源的赋闲。面对由此造成的资源利用率低的情况,带来的挑战就是如何更多更好地去利用这些赋闲资源。虚拟化技术,最早是IBM在小型机上或者大型机上就实现了,通过虚拟化或者分区技术,可以来解决资源利用率低的问题,虚拟化的技术后来被VMWare发扬光大,在X86的平台上进行了广泛传播应用,第三条路径其实是就是虚拟化的过程。

云计算经过发展最终沉淀下来的这些技术,对于企业,甚至对于任何一个开展的业务而言,都必不可少的。既需要有效利用资源,将规模从小变大;也需要面向客户和业务做在线并且有业务质量保证的交易,同时也需要对数据进行大规模处理,进而产生对数据的洞察来支持业务的智能化。

真正能做到这样的集大成者,实际上是我们现在看到的互联网架构的云提供商,比如AWS和阿里云。而另外一些模式产生出来的云计算提供商,因为它们没有这些强大的业务需求推动而产生的技术沉淀,所以很难把这个能力集合在一起。比如面向企业的商用软件VMWare,虽然其能够提供虚拟化,但是对于运行在其上的分布式应用,以及对大数据的处理就显得比较薄弱。而开源世界则通过软件方式的交互,看起来能够拥有这样的能力,比如通过Hadoop可以做大数据,通过OpenStack可以做虚拟化,但是我们可以看到这两者是实际上存在天然的割裂,无论是在硬件的共享还是在管理层面的融合,以及在业务层面的互相支撑都存在鸿沟。

再回过头来看,企业在上云的过程中会遇到一些挑战,企业需要面对非常复杂的云计算路径。面对这么多的云计算形态,企业在上云时会遇到困惑:到底该怎么考虑自己的云计算?

中国企业上云的三大问题

阿里在和很多企业沟通并且帮助他们进行云计算转型的过程中,认识到了企业上云面临的最大的三个问题:

第一,陷入虚拟化的误区
:将虚拟化等同于云计算,沿着虚拟化的这条路走到黑。

第二,缺乏数据中心全局方案:在小规模的应用场景下,进行简单的虚拟化还是可行的,但是当云变成了企业的公共资产,变成一个平台的时候,就需要从大规模的角度甚至从数据中心整体的角度考虑,不光要考虑硬件的安装部署,还要考虑后续的维护和统筹部署,安全问题以及业务快速响应问题。由于缺乏全局方案,所以数据中心变得非常棘手。

第三,难以全面拥抱公共云:由于中国的很多政策,以及很多企业的传统习惯,还有很多投资方面的资产会限制企业一步到位地去拥抱公共云,很多时候企业希望在自己内部有一朵云,帮助企业既能够享受互联网技术带来的业务升华,同时又能避免一些政策的影响以及数据安全的限制。这些问题是真实存在的,比如说虚拟化这件事情,未来的业务场景会是互联网化甚至移动互联网化的,我们不得不把自己开放出来,去迎接更多用户的访问。只有与更多客户发生直接的关联,才能够产生对客户的洞察,这时大规模的访问以及大规模在线交易将成为必然。另一方面制造业设备,运输业的交通设备和其他电子设备等都在升级改造成为智能设备,这些设备之所以智能的前提条件就是它能够将数据送回来,让我们加以利用,这就构成了另外一个维度的大规模,这就是互联网的连接的大规模和物联网信息处理的调度大规模。

对于第三件事情,还有重要的一点是:当客户的行为数据和产品产生的数据都回到我们手中的时候,应该如何去使用这些数据?我们需要使用它们产生智能来指导业务,比如淘宝体系内,对于6亿用户,100亿商品,依靠传统方式手工去推荐基本上是一个不可能的事情,只能依靠人工智能对数据的挖掘,靠商业的智能在100亿商品和6亿客户中做推荐。双十一900多亿的营收,有300多亿的超总营收三分之一是来源于智能推荐,这也导致一个3万人的企业产生了3万亿的这样庞大的经济规模。



企业上云的最大障碍

未来企业做大规模云计算的时候,会遇到一个很大的障碍就来源于数据中心。在传统企业中构建数据中心往往采取使用复杂的硬件做集成的方式。这些异构的硬件产品在小规模的单系统情况下,耗费一些时间去集成运维,系统所提供的可靠性保证还算是可以的。但是如果将全公司成百上千个业务都运行在同一个系统上面的时候,靠简单硬件的高可用已经不足以承载,因为在5000台机器的规模下,每天都有超过10台硬盘的损坏,以这样维修的概率,如果不以软件的方式和智能化的方式加以解决,完全靠硬件的集成方式,是无以为继的。

更可怕的是对于这样一个复杂的集成工程,从采购到建设,将会经历一个漫长的的周期。这样做云计算反而制约应用的发展,因为过去一个系统采购一套设备,还是等得起的事情,但是当几千个应用都需要等待这个云平台的建设来开通的时候就是个等不起的事情了。

安全同样也是,政策法规、信息安全的一些隐患、现有系统的投资等等问题,都导致企业不可能一步就走到公共云上去。在这样的情况下,企业要解决这些困惑,要上云该怎么办呢?

阿里巴巴作为一个企业,我们也亲身经历过这样的过程,而也把这个过程获得的收获总结成公共云,并且服务了众多的小微企业。现在我们也尝试用混合云的方式服务大型企业。阿里云是怎样发挥自己的特长去帮助企业的呢?阿里云能帮助企业解决刚才提到的一个比较严重的上云障碍。可以用数字来证明我们真正做到了,双十一是对我们业务的强大的挑战,但对于技术而言,双十一也是孵化新技术良好的土壤。通过3亿用户同时在线,每秒产生14万笔订单,进行8万多笔支付交易的强事务处理的场景,以及每天要消化掉200PB的数据,产生对于客户的洞察,进而使智能化营销和智能化推荐形成闭环。

我们孵化出来了以淘宝体系为核心的分布式架构,也孵化出来了类似于谷歌那样的大数据处理的平台。这些都是从经历十多年的艰苦卓绝的斗争中积累下来的。

淘宝超大规模在线交易业务催生强大的分布式应用架构

2003年开始的时候,淘宝只是一个非常简单的网站,一个现在大家都可以做的LAMP架构的网站。但是到现在已经经历了5个阶段,通过不断解耦,通过分布式架构的1.0,2.0,3.0这样的逐步演进,我们已经能够做到把交易,消息以及数据库都完全做成分布式的。也就说在数据层面,应用层面,进入方面和查询方向,全都以分布式的结构来搭建系统,使得整个系统不存在性能以及扩展的瓶颈。


让每个企业都可以打造淘宝般强大的交易应用

我们的架构总结下来是这样的,全分布式的体系,访问层,应用层和数据层都是分布式的,这使得核心系统也是分布式的。为应对大规模的挑战,我们在前端通过CDN把内容缓存在离客户最近的地方来提高客户体验。在2015年的时候,我们将这个架构变为产品,让任何一个企业,哪怕是小微企业也可以构建像淘宝一样强大在线交易系统,帮助这些企业在做“互联网+”转型以及业务转型的时候获得最大的技术基础。



阿里大数据发展之路的三次突围

能够把云计算的三个方向整合到一起的另外一个方向就是大数据的处理。阿里云的大数据处理也是经过了从2009年到2013年这五年的孵化,在2009年的时候,我们还是亚洲最大的Oracle集群,但是还是已经无法承载飞速发展的业务。

于是我们选择了3条分支路径去探索后面的路,第一条路径是用商业的Greenplum来替代分析型数据运算;第二条路是因为担心Greenplum不靠谱,我们也使用Hadoop做类似的事情。第三件事情,就是启动了飞天操作系统的研发,目标是打造一个属于自己的大数据平台。中间的历程非常坎坷,到2010年的时候,Greenplum这条路因为规模和可用性的问题以及计算准确性问题被放弃,2013年的时候,Hadoop平台也因为数据中心规模扩展不上去和安全管理以及权限管理和资源管理等一系列问题,最后不得不放弃这套体系。


飞天涅槃

最终我们使用自主研发的飞天操作系统将五千台机器整合到一个大平台,用飞天操作系统能够分布式的部署到异地的多个机房的能力实现了大数据计算和存储能力。飞天操作系统帮我们真正实现了梦想:把三个云计算方向整合起来,提供通用的计算能力,提供一种足够便宜足够强大的计算能力。


通过使用安装了Linux系统的五千台相同的计算机,通过飞天的分布式文件系统,整合成为一个分布式系统,开通了三类服务。

第一类服务:弹性计算,就是应对虚拟化的服务,但是它不只虚拟化,弹性计算可以做计算虚拟化,存储虚拟化,可以提供更加强大的计算环境;
第二类服务:提供淘宝这样强大的分布式应用中间件来帮助企业打造分布式应用;
第三类服务:大数据处理和数据智能的这些业务,这些业务都是依赖于我们的大数据处理能力进行的。

强大的数据处理能力进一步推动了智能业务的高速发展

通过飞天系统成功地将三种云计算以及云计算路线整合到一个平台当中,有了这个平台的支持,才使得整个企业的智能化得到了长足的发展。在智能化发展过程中,我们基于这些计算能力,逐渐地垒高了技术和模型的储备以及对数据应用的储备,一层一层地从分析工具到应用引擎再到解决方案,支撑了阿里巴巴整个智能化的人力资源,智能化的安全管理,智能的物流客服以及智能化推荐,这些也支持阿里巴巴整个集团业务不断前进和发展。


恶劣的互联网安全环境下十年攻防铸就了强大的云安全

在这个的过程中,阿里巴巴作为一个互联网公司,在快速发展业务的同时也在遭受世界上最多的互联网攻击。真正的统计数据是,我们每天会防御2亿次暴力破解,2000万次Web入侵,超过1000次DDOS拒攻击,在这样恶劣的环境下,我们用10年的时间产生出一整套安全体系和服务产品。这个产品从感知态势就可以知道,哪些坏人,哪些恶意的行为在哪里发生,以及他们用了什么样的服务器,谁是主控,对我们在进行什么样的探索行为,背后的人是谁,他的身份证号码是多少,这些东西,我们都通过感知的基础之上进行捕获。基于感知的基础就可以做到知己知彼,才可以百战百胜,战胜敌人的同时对自己进行保护。我们的产品服务有网络层面的保护,也有服务器主机层面的保护,更多的会上升到业务层面的保护以及对于数据的防护。


举个态势感知的一个例子,双十一当天,有很多机构和竞争对手在对我们发起攻击。这些攻击行为来自世界各地,来自机器和人。通过对其进行追溯,我们构建出了一套以大数据为核心的安全体系,围绕着网络,应用数据,形成了各个维度的全链路的闭环式的联动安全体系。


这套安全体系,不仅在保护着我们自己,同时也在保护阿里云上100多万的企业用户,帮助他们修复每天6000多次的高危风险,阻碍1000多次DDOS攻击,拦截2000万次的Web渗入和2亿次主机暴力破解,为阿里云百万客户保驾护航。

大规模数据中心运营沉淀的整体数据中心方案

对于从用户提供的服务中沉淀下来的能力,用一句话总结就是:软件定义数据中心。在如此大规模的情景下,我们没有办法靠传统方式去堆叠硬件,去做集成和做分段维护,我们必须要有新的方式:基于最简单最普通最标准化的硬件构建底层,然后用飞天操作系统将几千台机器整合成一台机器,在其上为大家提供软件定义存储的服务。客户需要对象存储,阿里云就提供对象存储,无论如何一定会解决客户的存储问题。


软件定义网络的服务,需要安全网络VPC,需要负载均衡和高速通道,阿里云都可以帮用户提供,不需要客户去独自支撑这样的服务,也不需要客户再去手工操作。之后再将安全包括刚才提到强大的云盾,安骑士态势感知作为一个防护体部署在数据中心之上。

有了这样的软件定义存储,网络和安全之后才算是提供了真正的弹性计算。



有了阿里云自主研发的这些技术优势,才能够支撑我们在全球快速地部署云计算业务,并且快速稳定地运营云计算业务。因为这些特点,阿里在公共云上有了很大的突破,海量用户和应用都承载在我们云服务的资产之上,使用了弹性计算,中间件,大数据的存储计算,智能化的应用开发的能力以及安全和监控云服务。

“专有云 + 公共云”为企事业单位提供上云最佳路径

考虑到国内的一些实际情况,一些企事业单位上云遇到了很多痛苦和困难,我们就把软件定义数据中心,大数据计算的能力和分布式应用的能力作为一个“三位一体”的解决方案,通过专有云的形式,部署到企事业单位的体系内,帮助企业单位去享受互联网技术带来的赋能。同时也解决企业不能使用公有云的困惑,进一步我们发现企业还是需要“互联网+”的,这时候我们就以混合云的方式解决问题。企业内部在成员企业和总部内部署自己专有云,作为自己集中化演进的过程,通过阿里公共云的VPC资源与专有云进行打通,为企业提供快速解除“互联网+”的通道,这样的方式称为混合云。



混合云有很多实际的落地实现,举个例子:中国石化在自己机房内建设了一个私有云,同时在阿里云公共区域也申请了几百台虚拟资源,弹性计算资源和分布式架构资源,它的公共云承载了面向客户的电商业务以及对外其他业务,在专有云上承载了智能物流,智能炼厂,智能油田,大数据安全以及企业内部安全的一些应用。



这一套体系中,应对未来物联网飞速也有一个专门的参考架构:实时的数据上报,将数据快速的沉淀到阿里云的离线计算平台当中,总结出预测性的模型,在实时的流量计算服务单元里面加载,进而帮助我们进行实时的智能判断,然后同时通过数据存储单元和数据转换单元实现智能化和图形化的应用。

这里的一个应用例子:威派格智慧供水业务,它实现了TB级的设备时序数据在日常监控,历史情况回溯,和时指标统计,我们的架构应用于在这个企业所管理水房,泵房以及设备的故障规则预警与智能故障预测等多个应用场景。

阿里人工智能的未来




基于整个大数据平台之上,未来的发展方向是人工智能。智能上一些新的技术往往从娱乐方面开始的,阿里云也在娱乐端做了一些人工智能的尝试,阿里云小Ai在歌王挑战中准确预测到了前三名选手的顺位,帮助我们证明了在阿里星球强大的数据支撑下,用500万首歌曲训练后得到的强大预测能力。只有强大的计算能力支持才能开展人工智能这个防线的探索,而这只是开始,阿里云未来将会针对各行各业开展人工智能的应用。


本文根据阿里云技术专家 宋杰在5月17日举办的2016云栖大会·武汉峰会上演讲整理而成。
相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
1月前
|
存储 机器学习/深度学习 SQL
大数据处理与分析技术
大数据处理与分析技术
123 2
|
1月前
|
存储 分布式计算 NoSQL
【赵渝强老师】大数据技术的理论基础
本文介绍了大数据平台的核心思想,包括Google的三篇重要论文:Google文件系统(GFS)、MapReduce分布式计算模型和BigTable大表。这些论文奠定了大数据生态圈的技术基础,进而发展出了Hadoop、Spark和Flink等生态系统。文章详细解释了GFS的架构、MapReduce的计算过程以及BigTable的思想和HBase的实现。
|
7天前
|
存储 分布式计算 大数据
Flume+Hadoop:打造你的大数据处理流水线
本文介绍了如何使用Apache Flume采集日志数据并上传至Hadoop分布式文件系统(HDFS)。Flume是一个高可用、可靠的分布式系统,适用于大规模日志数据的采集和传输。文章详细描述了Flume的安装、配置及启动过程,并通过具体示例展示了如何将本地日志数据实时传输到HDFS中。同时,还提供了验证步骤,确保数据成功上传。最后,补充说明了使用文件模式作为channel以避免数据丢失的方法。
35 4
|
8天前
|
分布式计算 大数据 数据处理
技术评测:MaxCompute MaxFrame——阿里云自研分布式计算框架的Python编程接口
随着大数据和人工智能技术的发展,数据处理的需求日益增长。阿里云推出的MaxCompute MaxFrame(简称“MaxFrame”)是一个专为Python开发者设计的分布式计算框架,它不仅支持Python编程接口,还能直接利用MaxCompute的云原生大数据计算资源和服务。本文将通过一系列最佳实践测评,探讨MaxFrame在分布式Pandas处理以及大语言模型数据处理场景中的表现,并分析其在实际工作中的应用潜力。
37 2
|
22天前
|
SQL 运维 大数据
轻量级的大数据处理技术
现代大数据应用架构中,数据中心作为核心,连接数据源与应用,承担着数据处理与服务的重要角色。然而,随着数据量的激增,数据中心面临运维复杂、体系封闭及应用间耦合性高等挑战。为缓解这些问题,一种轻量级的解决方案——esProc SPL应运而生。esProc SPL通过集成性、开放性、高性能、数据路由和敏捷性等特性,有效解决了现有架构的不足,实现了灵活高效的数据处理,特别适用于应用端的前置计算,降低了整体成本和复杂度。
|
1月前
|
机器学习/深度学习 存储 大数据
在大数据时代,高维数据处理成为难题,主成分分析(PCA)作为一种有效的数据降维技术,通过线性变换将数据投影到新的坐标系
在大数据时代,高维数据处理成为难题,主成分分析(PCA)作为一种有效的数据降维技术,通过线性变换将数据投影到新的坐标系,保留最大方差信息,实现数据压缩、去噪及可视化。本文详解PCA原理、步骤及其Python实现,探讨其在图像压缩、特征提取等领域的应用,并指出使用时的注意事项,旨在帮助读者掌握这一强大工具。
72 4
|
1月前
|
机器学习/深度学习 存储 大数据
云计算与大数据技术的融合应用
云计算与大数据技术的融合应用
|
1月前
|
SQL 存储 大数据
单机顶集群的大数据技术来了
大数据时代,分布式数仓如MPP成为热门技术,但其高昂的成本让人望而却步。对于多数任务,数据量并未达到PB级,单体数据库即可胜任。然而,由于SQL语法的局限性和计算任务的复杂性,分布式解决方案显得更为必要。esProc SPL作为一种开源轻量级计算引擎,通过高效的算法和存储机制,实现了单机性能超越集群的效果,为低成本、高效能的数据处理提供了新选择。
|
1月前
|
SQL 存储 算法
比 SQL 快出数量级的大数据计算技术
SQL 是大数据计算中最常用的工具,但在实际应用中,SQL 经常跑得很慢,浪费大量硬件资源。例如,某银行的反洗钱计算在 11 节点的 Vertica 集群上跑了 1.5 小时,而用 SPL 重写后,单机只需 26 秒。类似地,电商漏斗运算和时空碰撞任务在使用 SPL 后,性能也大幅提升。这是因为 SQL 无法写出低复杂度的算法,而 SPL 提供了更强大的数据类型和基础运算,能够实现高效计算。
|
1月前
|
存储 大数据 定位技术
大数据 数据索引技术
【10月更文挑战第26天】
60 3