曹玮祺:AWS在移动互联网、大数据等方面的技术及经验

12月12日,全球首个探讨产业互联网的大型会议,2014 CVW﹒产业互联网大会在北京亦庄召开,并通过纽约时代广场大屏幕同步呈现。大会由亚信集团、云基地和亦庄经济技术开发区联合举办,汇聚超过5000名关注互联网和传统产业发展的全球IT和传统行业领袖和精英,探讨“互联网进入传统行业”、“传统行业互联网化”的演进以及产业互联网的技术模式和业务创新。

在下午的云平台@互联网论坛上,亚马逊AWS中国解决方案高级经理曹玮祺带来《基于AWS的移动互联SaaS服务云》的主题演讲,分享亚马逊的技术以及AWS在移动互联网以及大数据等等这些方面所提供的服务和支持。

以下是他的演讲全文:

曹玮祺:非常感谢在座的各位今天下午刚刚吃完饭,还有点嗜睡到我们的云平台专场,来为我们喝彩。我今天就AWS的经验尽量的给大家更多的分享和启发。

大家今天上午都参加了主会场全球副总裁中国区的执行总裁荣永康做的AWS在中国发展现状的分享,今天下午我将聚焦技术和大家分享AWS在移动互联网以及大数据等等这些方面所提供的服务和支持。

首先先做一个自我介绍,我是AWS中国解决方案架构师团队的负责人,我的团队主要是致力于给大家做相关的咨询和解决方案架构,帮助大家能够向云平台更加顺利的转型。

AWS是全球云计算的领跑者,为什么是领跑者?因为我们一直没有停止创新的步伐。AWS在8年多的商业运营之中,已经积累了丰富的经验,也是陪伴我们所有的客户一起成长,也是帮助我们的客户解决所有的问题。所以在8年多商业的运营之中,我们已经有40多种云服务,1096种功能特性,有40251个实例镜像。实例镜像就是大家在建私有云的时候,直接用实例镜像创建虚机。AWS在我们的软件市场里有1900多种第三方产品,这也是AWS这个平台本身的价值。也就是说,AWS平台不是AWS服务本身,更多的是我们的合作伙伴以及我们的客户,我们的客户也把他在AWS上面的项目方案开源出来,供更多的客户使用。

目前AWS有13000多个合作伙伴,1900多种第三方产品是在应用市场里,大家可以像APPStore一样大家可以直接去下载使用。AWS每天增加的计算能力足以可以支撑一个70亿美金的公司,这个数字是怎么出来的?AWS2004年的时候曾经是一家年收入70亿美金的电商,当时我们的IT支撑能力,大家可以想象是非常巨大的,因为一家70亿美金年收入的电商,现在我们每一天所增加的容量就是当时的容量。

这个地方是Gartner一个魔力象限,今年5月份他出的魔力象限,是这么指示的,他说如果其他主要4家云服务提供商计算容量的总和乘以5倍,AWS比它还要多。这说明AWS的规模是一个海量的计算平台。AWS是一种快速迭代的服务创新模式,这种快速迭代给我们的客户、给我们的合作伙伴带来了非常多的创新的可能。仅仅在今年一年我们已经发布了442项新的功能,也就是说我们几乎每一天都会至少有一项新功能发布。在每一项新功能和新特性发布之后就可以直接使用。

举一个例子,客户曾经向我提出一个问题,说你们能不能将数据文件直接导入到数据仓库里,当时我非常诚恳的告诉他们对不起,我们的数据仓库目前不支持这个功能。周末发生了什么事情?我们全球的邮件告诉我们说我们已经增加了一个新的功能,数据仓库可以增加文件的直接导入。到了星期一我跟客户沟通,问他周末休息的好吗?如果休息的好我告诉你一个好消息,现在你可以把数据直接导入到数据仓库里。这就让我们的客户可以不断的创新,所有的功能过不了几天AWS就能为他提供了。

到今年年底会有超过500项的创新。

AWS有遍布全球的基础设施网络,中国北京区域有一些在预览阶段,大家可以受邀去使用,除此以外我们全球还有10个区域,亚太的东京,新加坡、悉尼。欧洲有两个区域,一个是爱尔兰,还有一个是德国的法兰克福。北美有四个区域,美国西海岸有一个政府区域,是专门为美国联邦政府设的一个区域,这个区域是完全隔离的,和其他区域是分隔的。除此之外,在美国西海岸有加利福尼亚,东海岸有一个我们最早的区域,有九个区域是全部连载一起,每个区域有一个或多个可用区,一个可用区是一个到六个数据中心,每个数据中心至少有5万到8万台的服务器,多的像美国东部的区域有5个可用区。全球有52个边缘站点,在中国的台北和香港各有两个边缘站点。这样一个全球的网络是为我们将来整个数据全球的部署打下了基础。

这张图是AWS的服务一览图,从下面的区域,普通区和52个边缘站点之上有计算、存储、数据库,有网络,还有大数据分析、移动应用,应用服务、管理和控制,有桌面级服务,还有PaaS平台服务。AWS是一个生态系统,在里面大家可以找到所有的IT需要的全站的服务,除此以外还可以在我们的客户和合作伙伴那里找到相关的解决方案。

AWS整个的成本模型是通过持续降价和优化成本来为客户提供服务的,我们不断的降价,我们的用户就会用的更多,用的更好,这样我们就需要更大规模更多的计算,更多的容量来支持我们的客户。随着我们的规模效益出来之后,不断的创新优化成本,让我们的成本降低,成本降低之后再进一步的回馈给我们的客户。2006年AWS成立以来,已经降价了47次。

AWS快速扩张的生态系统才是AWS真正的价值所在,不管是合作伙伴,还是政府公共事业部以及非营利机构、教育机构方面的客户,还有应用市场方面都有非常全面丰富的合作伙伴和应用产品。这些都可以给我们的客户带来非常多的价值,在座的将来也可以把你们自己的产品直接发布在我们的应用市场,供你的客户直接下载来使用。

前面是一个AWS的概述,除了AWS遍布全球的基础架构和服务以外,AWS有五个特点。第一,开放。我们支持所有主流的语言,现在主要使用的是JAVA、iOS、安卓、PHP等等。初次以外,AWS是真正支持开放架构和开放标准的平台,所有的开源操作系统以及商用的操作系统,像Windows各种版本,各种各样的语言库都在AWS上做了认证,也是有非常多的客户在使用企业级的应用。

大家在使用云平台的时候,或者在使用公有云的时候,最大的一个担心是这个平台是不是安全可靠。除了非常丰富的功能,非常完善的基础架构以及非常丰富的运营的经验,最重要的就是安全。AWS是拥有最多安全标准认证的一个云平台。除了合规、认证以外,AWS也提供了非常多的安全机制,为我们的用户,为我们的平台使用者提供非常灵活的,从各个层次非常容易去使用的安全措施,包括客户自己的加密机制,或者我们为客户在服务器端直接加密的机制,还有客户密钥的管理,密钥的生成,包括硬件、软件加密,AWS全部都有这样的服务

包括日志的追踪,AWS可以把所有在AWS平台上访问的蛛丝马迹全部记录下来,帮助我们去做云平台上开发应用的审计和跟踪。

AWS机器人可以帮助你分析你在AWS上的应用,提供出你在AWS架构上哪些地方做的还不够安全,哪些地方做的还不够省钱,哪些地方的性能还不够好,哪些地方容错性不够好。在这四个方面帮助你提供很多的建议。去年一年,我们的AWS机器人为客户提供的省钱建议共节省了3亿5000万美金的成本。

AWS云端高可用系统,在AWS上存100万个文件,最多只有1个文件失效。AWS所有服务的设计是为失效而设计的,我们所有的服务在推出之前都是假定所有的一切都是不可靠的,比如说机器,比如说人。什么东西都会有不可靠,AWS就认为所有的东西都是不可靠的,我们要为不可靠设计,最终你就会零失效。

我们的整个设计不同的AZ为你实现高可用,比如数据库你直接可以在界面里面选择多AZ,实现数据同步复制,一旦主节点宕掉会直接切到负节点,同时还可以做读复制,一个节点可以有五个读复制,最多可以达到30个。在各个层面我们都可以实现高的服务性,自动扩展组会永远保证组里面的服务器是高可用的,而且随着负载的变化会弹性的伸缩。像小米的闪购,一天的抢购人数达到3000万,比如小米电视、小米手机,在AWS上做闪购的时候,QPS可以达到每秒钟100万。在这么大并发量的访问下面,利用AWS云平台自动让它伸缩,等到抢购的高峰过去了,自然把这个机器关掉,帮他省钱。

除此之外,云端最重要的是备份和恢复。云端的备份、恢复和灾备是和物理的灾备有非常大的性价比,我们平时在各个行业建立数据中心的时候一般都考虑同城建立一个灾备中心,在异地再建立一个异地的灾备中心,两地三中心一般都是非常有钱的企业这么来做。他为了建一个数据中心得花三笔钱保障业务,平时只有真正的数据中心在运营,另外两个中心完全是属于等待状态,如果不等的话心里不踏实,就觉得这个钱白花了。海啸的几率有多高,当然中国还有地震,但我们一般建数据中心的时候都会避免建在地震带上。所以为了完成一项业务我们要花三份的钱,有两个是浪费的,但是在云端我们可以完全把这两份钱省下来,真正出现业务灾难的时候就会帮你解决这些问题。

我们有多种方案,一种是备份与恢复。一旦数据中心被打掉了切到云端,切换的时间非常快,根本不同的指标我们来设定灾备的方案。平时只需要做一些虚机的镜像,数据的快照,一旦发生灾难以后,从虚机镜像到云端,帮助你把业务备份恢复起来。

第二种情况是信号灯架构。当你的数据中心只能承载100万,突然来了300万,剩余的200万承担不了,100万的时候信号灯就亮了,信号灯是一件好事情,是我们希望看到的。信号灯亮了以后有200万用户访问就会卸载到云端,由云端帮你承担起来。这种架构我们叫做信号灯架构,云端的实力和物理的实力是一一对应的,但是AWS云端有一个特点,只有这边开机上线了才会有费用。当你把东西建好,没有开机,这些费用是没有的,除非有一些存储空间的费用。大家可以想象它的成本比我们物理的灾备要低很多。

第三种情况是相互配分,同时互为配分,互为切换,同时承担业务。

最后一种情况是多活架构。

运维管理是我们非常重要的云平台的指标,也就是说是当虚拟机开始泛滥的时候大家最头疼的时候。这些服务当你用的越多的时候,你会发现IP地址都很难管理,包括不同的租户不同的应用。这些相关的运维,一些计费,相关的技术,AWS提供了多种一键部署和运维自动化的手段。

第一非常值得推荐的AWS的服务是CloudFormation,整个过程也就几分钟的时间,部署跟一台虚机启动的时间一样。部署好之后所有的配置都配好,所有的应用也都帮你安装好。所以非常适合是环境到演练环境到生产环境。

第二种是你把你的应用,直接把源程序开发好之后,不同版本直接丢到容器里面,剩余的弹性扩展,前端的负载均衡,后端的数据库,所有的跨AZ的部署都不用担心,随着你的用户量增加,都会帮你弹性伸张,用户量下降的时候帮助你弹性收缩。而且不同的版本之间还可以随时进行切换,所以它支持各种语言,所有的主流的语言都可以把应用放进去,剩下的就不用你来管了。

第三种是DevOps,是运维自动化的一个非常先进的工具。菜谱里面有各种各样烹调的说明,怎么样把你的服务器配好,怎么样安装补丁,怎么样安装相关的应用,怎么样把所有的东西都装好了,你可以在物理的环境下运行。现在直接拿过来,在AWS云端,比如要给1000台机器打补丁,原来写好的脚本直接拿过来就可以用。DevAps是非常好的运维自动化的工具。今天早上在北京技术峰会的现场,我们全球的CTO他做的一些新服务的发布,做云端代码开发版本控制、配置管理以及全生命周期管理自动化的工具,这些也都在AWS管理平台里可以使用。

第四,对于容易管理这一点,我们的客户真的是受益良多。像趣加,趣加是一家在Facebook上排名第6的游戏开发商,每天的活跃用户数能达到850万。

第五,可扩展。在座的真正开始使用公有云的时候,最关心的是我现有的私有云中心能不能和公有云混合起来,你可以把虚拟机直接通过我们的虚机导入导出,导到云端还可以导回来。你可以在数据中心装一个网关,把存储中心无限的扩展到云端,把备份存储到云端。网络的混合,AWS有一个虚拟私有云,在云端再去开辟一片你的私有云天地,和你的数据中心VPN隧道打通来传输你的加密信息。

我们怎么将单实例、单租户的服务怎么变成一个SaaS,SaaS最重要的几个特点,一是多租户,二是通过配置可以实现定制化,从界面到数据模型到工作流的定制。三是可以实现商业模式,可以对真正的软件进行计费。计费之后我们可以实现各种各样的计费模型。在AWS云平台上要去真正实现SaaS化有三种方式,第一种方式是非常简单的资源隔离。所有的成本中心都是以单虚机、单数据库、单存储为单元,这种单元是非常容易计费的,从开通服务到计量到分析到出帐单,作为的都是以单个实例为单元去计费。这种模式有点像头等舱VIP客户,他需要隔离。

第二种方式叫集装化。容器你可以理解成虚机里面的虚机,在虚机里面再虚出很多的容器出来,这些容器可以组成应用的堆栈,这一套容器是针对一个客户使用的。我们以容器为单位来计费,针对不同的租户比如说他们共用一个容器站,但是他又用不同的容器来部署自己的业务,也就是数据库。

第三种方式纯的SaaS。把我们的应用系统做改造,所有的应用从展现层到应用逻辑层到数据库层,数据库里面你也要做很多的东西,比如同数据空间的共享,运维你要做定制,你要实现差异化的数据模型等等一系列的手段,你要实现真正的定制化。这种的改造非常大,但是计费非常的细,租户也会非常多。我们变成一个SaaS模式之后,要对手机端、对平板端,对于各种各样的设备端提供支持,AWS提供的全套的应用服务。从身份认证识别、授权访问,我们叫联邦的身份认证识别。除此之外,你怎么去做访问授权管理,数据的同步、用户行为分析,包括用户的跟踪、媒体共享推送,你怎么样给你的用户在手机上推送一些消息,包括苹果手机,包括安卓手机,还有实时的数据分析。这些都是移动应用所需要的,所以我们的移动应用服务就帮助大家提供一个后端服务,所有的后端帮助你提供ATI,你的前端应用可以直接使用这些移动服务,就可以实现功能非常强大的移动的应用端。

为什么这个主题叫移动物联,而不是移动互联,因为移动互联更多的还是通过电脑、通过PC端大家连在一起,或者通过手机端,物联到了有一天我们的设备都连在一起的时候,是人联、物联的时代。比如海尔的产品卖到全球,他的冰箱、彩电一定是全球联网的。同时你还要做实时的交互,AWS刚刚在拉斯维加斯11月12号发布了一个服务,我们都在用Excel表格的时候,当你写一个函数,所有跟这个字段有关的函数都会自动的更新,所有的图表也会自动的根据你的数据的变化而变化,它就是一个典型的事件驱动引擎。一旦你的设备接入到这个引擎里,你需要用几行简单的API,就可以和云端你的设备端将来的客户端进行实时的交互。这会为我们将来的物联网提供非常多的创新服务出来。

除此之外看一看大数据。大数据在AWS云平台上支持非常的完善,大数据一般数据量非常大,各种各样海量级的存储空间。你可以非常容易的建一个数据仓库,可以跨洲际,以关系数据为主要部分。

大数据包括不同的非结构化、半结构化以及无结构化的数据需要各种各样的以文档的方式来存储,AWS也有这样的数据库。

现在大数据领域非常或的Hadoop,实际上是一个非常难用的东西,因为它所有的东西都是开源的,只有专业的IT人士才能搞定。AWS可以做全托管的Hadoop,各种各样格式的数据,你要做数据的清洗、格式转换,处理完之后把关系数据库进行交换,通过AWS进行数据工作流的自动化,帮你自动的做数据加载。除此之外,你可以使用开源领域所有的Hadoop的东西来做数据分析。你可以通过Cloudera  IMPALA做大数据的分析。这些在EMR建立的时候都可以通过勾选帮你建立好,如果觉得500个不够还可以变成1000个节点集群。当你的集群伸缩的时候也自然帮你去做资源管理和资源调度。

现在比Hadoop还要热的Spark,Spark有替代Hadoop的趋势。Spark研发的时候就在AWS云端部署的80多台虚机在上面做研发,所以Spark所有应用出来的时候都会有一个脚本。他们用了我们在美国的北弗吉尼亚区域的AWS。

来看一笔账,在AWS做大数据分析和传统的大数据分析是不一样的,我们真正最后的数据分析就是几十个钟头或几百个小时是不得了的,但是我们要花半年或一年的时间去招投标,购买大数据一体机,BI软件,所有的投资都投入之后才开始真正的去做我们的数据分析、数据收集、数据处理。把我们真正的业务倒置,这些成本投入之后没有办法收回。我们对每一天5亿个推文分析,每个推文2KB就是12MB/秒,48美金这个事情就做完了。

下一个案例叫做Razorfish,是AWS平台上非常成功的数字营销全球的带头公司,他是做大数据分析,然后做网络推送。所有他的业务都是围绕网络推送来做的。可以看到他每一条要处理35亿条的点击记录,记录所有网站视频用户浏览和观看时候的踪迹,记录下来他们点击的整个流程,做一些后端的分析,最后得出这些用户的兴趣模型,把他真正感兴趣的东西推送给他。他每一天都要对13TM的访问日志量做处理,利用AWS  EMR的集群做大数据分析,分析的结果可以看到他每一天要做170万个精准的广告投放。当我们看电视的时候,他会分析你拿摇控器切换频道以及点播视频时候的习惯,比如你喜欢看棒球的比赛,他会插播棒球比赛或棒球设备。500%的广告花费回报。

AWS云平台上大数据的客户各行各业非常多,像大家非常熟悉的纳斯达克、三星。

最后举一个infor的例子,现在他们提供在线的SaaS服务,选择AWS作为他们的战略合作伙伴,最终他把整个的ERP系统全部都迁移到AWS平台上,以SaaS服务的方式提供给他的企业级客户。

我的报告就到这里,谢谢大家!