作者 | 任传英
11 月 30 日,2021 亚马逊云科技 re:Invent 全球大会正式开启,作为全球云计算产业的盛会,re:Invent 每年坚持发布创新技术和服务、并邀请全球不同行业、规模的客户以及亚马逊云科技合作伙伴分享最新的商业创新实践。今年是 re:Invent 的第 10 年,新产品和新服务依然是讨论的焦点。
新技术之外,亚马逊云科技在人才培养和开发效率提升方面作出的努力也值得探讨。亚马逊正在塑造以人为本的未来科技:打造能为开发者所用的技术,用技术赋能开发;降低技术使用门槛,普惠更多的开发者,让更多的人享受到云计算带来的极致开发体验和效率提升。瞩目的创新技术背后,低调的“全球游戏”在同步进行,而这也恰好呼应了 re:Invent 2021 的大会主题——“引领风向,重塑未来”。
更高、更快的技术创新亮点
提到 re:Invent,大家想到的标签可能是:云计算领域的创新技术。除却本身的光环,纵观历届 re:Invent 大会,这些新技术无一不在解决企业内外部开发者开发过程中遇到的问题:用新的产品降低开发者进入人工智能领域的门槛、用新的服务让开发人员提升数据分析的效率……re:Invent 大会发布的产品与服务始终关注开发者的真实感受,帮助更多人从云计算技术中受益、获得更好的开发体验;同时,也给云计算未来的发展指出方向。
今年的大会依旧带来了涵盖计算、物联网、5G、无服务器数据分析、机器学习、数据库服务等方向重磅的创新技术,值得关注的有:
基于新一代自研芯片 Amazon Graviton3 的计算实例 降低机器学习门槛的 SageMaker Canvas 帮助大型机客户向云迁移的 Amazon Mainframe Modernization 帮助企业构建移动专网的 Amazon Private 5G 构建数字孪生的服务 Amazon IoT TwinMaker 简化聊天机器人设计的 Lex Automated Chatbot Builder 4 个亚马逊云科技分析服务套件的无服务器和按需选项
更高性价比的 Amazon Graviton3
目前,全球头部的云服务器厂商都在布局自研服务器芯片,降低云服务成本吸引更多客户。作为最早基于 ARM 架构自研服务器芯片的厂商之一,亚马逊云科技的自研芯片之路可以追溯到 2014 年,此后,在 2018 年和 2019 年接连推出自研 Graviton、Graviton2 处理器。
Amazon Graviton2 是亚马逊云科技基于 ARM 指令集开发的高水平处理器,今年大会上处理器进一步迭代升级,重磅推出了 Amazon Graviton3,为企业提供了更高的性价比:为实际工作负载提供最佳性能和最低成本。
与 Amazon Graviton2 相比,Amazon Graviton3 可以给科学计算、机器学习和媒体编码工作负载提供高达 2 倍的浮点运算性能,提升加密工作负载速度高达 2 倍,为机器学习工作负载提供高达 3 倍的性能;其处理器的能效也更高,在相同性能下,与同类型 Amazon EC2 实例对比,可节省高达 60% 的能源消耗。
会上也推出了 3 款由自研芯片支持的新 Amazon EC2 实例,分别是 Amazon EC2 C7g 实例、Amazon EC2 Trn1 实例以及 Amazon EC2 Im4gn/Is4gen/I4i 实例,帮助客户显著提升在 Amazon EC2 上运行的工作负载的性能、成本和能源效率。
其他值得关注的工具 & 服务
降低机器学习门槛——SageMaker Canvas
机器学习是亚马逊云科技长期关注的技术方向之一。截至目前,数以万计的客户使用 Amazon SageMaker 开发聊天机器人、视觉图像处理工具、自然语言处理等人工智能服务。这次大会上,亚马逊云科技面向企业内部的所有工程师和外部业务用户推出了 Amazon SageMaker Canvas,方便更多没有经验的用户不需要编辑代码,只用鼠标点击拖拽,就可以完成机器学习模型的创建。
加快上云——Mainframe Modernization
云时代下,上云已成为行业共识。为了保证企业快速上云,云迁移技术成为业内关注的重要技术方向之一。这次大会上,亚马逊云科技推出 Amazon Mainframe Modernization,帮助亚马逊云科技客户以更低的成本,更快的速度在亚马逊云上迁移、实现现代化和运行大型机工作负载,将主机迁移时间减少 2/3。同时,Amazon Mainframe Modernization 可以帮助客户评估分析主机应用程序情况,选择合适的路径并制定计划。
构建专用移动网络新方法——Private 5G
Amazon Outposts 是亚马逊云科技在两年前推出的、帮助公司在数据中心运行应用程序的工具,提供和亚马逊云科技相同的 API、硬件及工具,由亚马逊云科技管理和支持。5G 时代,亚马逊云科技已经在使用具有低延迟、高带宽优点的 5G 网络连接客户保持在线的所有设备。
为了降低客户在享用 5G 服务便利性的同时,降低部署专用移动网络需要投入大量的时间和成本,这次大会上,亚马逊云科技新推出 Amazon Private 5G 服务,可以在几天内建立和扩展专用移动网络,用户只需要说明想在哪里构建网络并指定容量,亚马逊云科技就会提供必要的软硬件及 SIM 卡,自动配置使客户按需连接任意数量的设备。
数字孪生解决方案——IoT TwinMaker
针对物联网、智能制造领域常用的较为繁琐的建模方式,亚马逊云科技推出了 Amazon IoT TwinMaker 数字孪生解决方案。Amazon IoT TwinMaker 是亚马逊云科技在数字孪生概念下的首款产品。
使用 Amazon IoT TwinMaker 的企业 可以轻松汇集来自多个来源(如设备传感器、摄像机和业务应用程序)的数据,并将这些数据结合起来创建一个知识图谱,对现实世界环境进行建模,从而省去大量的开发工作,也可以通过数字孪生来构建反映现实世界的应用程序,提高运营效率并减少停机时间。
同时,Amazon IoT TwinMaker 还可以适用于 Amazon IoT SiteWise、Amazon Kinesis Video Streams 和 Amazon S3 的内置连接器,进行数据收集。企业也可以导入现有的 3D 模型,创建数字孪生。值得注意的是,数字孪生也是元宇宙的主要观点之一。
简化聊天机器人设计——Lex Automated Chatbot Builder
如今,聊天机器人在商业、教育等领域的应用越来越多,它不仅简化了人与服务之间的交互,增强了客户体验,还能通过降低客户服务成本,帮助公司改善服务流程和运营效率。
在这项重要的功能背后是非常复杂的组织结构,开发人员可能需要花费几百小时搜索所有记录,查找用户查询和解决该问题的信息。而亚马逊云科技新发布的 Amazon Lex Automated Chatbot Builder 通过增加一定程度的自动化,简化了聊天机器人的培训和设计过程,将聊天机器人的设计周期从几周缩短至几小时。
4 项基于云的数据分析服务
企业数据分析和技术的需求也正在不断上升,本次大会,亚马逊云科技推出了帮助客户挖掘数据的服务:Amazon Redshift、Amazon EMR、Amazon MSK 和 Amazon Kinesis,这四项分析服务均基于云,并作为无服务器可以按需提供服务。
由于不同的分析服务需要不同的数据库作支撑,客户需要考虑运行这些服务的基础设施以及管理集群,而通过亚马逊云科技的数据分析服务,客户只需要为使用的资源付费,不需要考虑其他事情。
DevOps 团队构建应用的最佳实践
以人为本的未来科技,离不开现有的技术和开发人才,而其中的“未来”则需要团队、乃至行业共同打造。从短期看,技术与人才结合自然而然能带来开发和部署效率的提升、软件开发流程优化、团队协作效率提升、实现更佳的 DevOps 实践,从而打造“未来科技”。此次 re:Invent 大会上,亚马逊云科技分享了从开发到运维的全流程 DevOps 实践,给高效协作 DevOps 提供新的可能。
利用 Amazon CDK 高效部署
最近几年,很多团队都在采用基础设施即代码 (IaC)。IaC 模型是在 DevOps 中实现最佳实践的关键属性,它可以在每次应用时都生成相同的环境,使基础设施的预置变得更加轻松。
IaC 带来便利的同时,也带来了新的技术门槛:开发者需要熟悉模板的各个功能模块和编写语言。而亚马逊云科技 CDK 恰好既能兼顾 IaC 带来的便利,也能降低模板的编写难度,亚马逊云科技云计算开发工具(CDK)是一个开源的框架,供开发者使用熟悉的程序语言,来创建和配置云计算资源,现在支持 C#、TypeScript、Java、Python 和 Go 等多种程序语言。
作为一个重要组件,亚马逊云科技 CDK 实现和封装了基础架构模式,开发者可以在整个组织中共享信息,并能创建、共享可重复使用的资产,这是云计算开发中重要的改变。本次大会,亚马逊云科技宣布正式推出 CDK 第二个版本,改进了第一版 CDK 在依赖性管理上的麻烦,而新发布的 Construct Hub 则可以促进云计算开发社区、云计算服务供应商使用和共享所有 CDK 构建,对于开源具有重要的意义。
软件开发生命周期观测的最佳实践
DevOps 越来越受到企业的推崇,俨然成为企业数字化转型的“必修课”。在全球企业的 DevOps 实践中,我们可以看到它确实提高了团队的组织能力,能以更快的速度交付应用程序和服务。在 DevOps 实践中,软件开发观测是重要的环节,无论是开发者还是运营人员,都需要了解应用程序和资源的运行情况,方便在进行或者更改代码部署时看到变化。
软件开发生命周期观测,能够帮助开发者有效地了解情况,对任何持续出现或者潜在的问题及时补救。我们所讨论的观测和普通监控最大的区别是,监控只反应系统是否正常地运行,而观测在监控的基础上,会同时反馈系统无法正常运转的原因。
本次大会对四个可以帮助实现观测的工具进行了介绍,分别是 Amazon CloudWatch、Amazon CloudTrail、Amazon X-Ray 和 Amazon DevOps Guru。以前不久刚刚推出的适用于 RDS 的 DevOps Guru 为例,它能帮助开发人员使用 Amazon Aurora 数据库快速、大规模地检测、诊断和解决数据库性能问题。
DevOps Guru for RDS 是利用 ML 来自动识别和分析各种与性能相关的数据库问题,例如主机资源的过度利用、数据库瓶颈或 SQL 查询的不当行为。开发人员可以获取足够的信息来确定数据库性能问题的确切原因,为开发人员和工程师减少了大量发现和修复与性能相关的数据库问题的工作,同时为团队节省了时间。
让开发流程获得恢复能力
“从开发流程获得恢复能力”也是本次大会中一个值得关注的话题,它能最大程度避免系统崩溃带来的成本消耗,这其中的最佳实践是:持续构建弹性应用程序,其中包含 Responding(回应)、Monitoring(监控)、Learning(学习)以及 Anticipate(预期)。
Responding:在实际发生故障时修复问题
Monitoring:监控运行情况,当发生故障时发出警报
Learning:当没有按预期发展时,理解为什么会发生这样的情况,以及如何恢复
Anticipate:基于以上的情况,了解会发生什么,并预测潜在问题,提前阻止这些情况发生
在上述过程中,Amazon DevOps Guru 服务可以使开发流程获得恢复能力。Amazon DevOps Guru 服务被启用后,就会开始摄取操作数据、使用 ML 探测器监测异常情况。所以在异常情况出现时,它会查看 Cloud 跟踪日志,向操作员发出问题警报,其中包含问题的详细信息,比如涉及哪些资源、问题出现的时间以及其他可能相关的事件,这样的“洞察力”能帮助团队快速定位、解决问题,最终有助于缩短整个过程持续的时间。
此外,Amazon DevOps Guru 也可以在组中进行关联,将相关应用程序转换为基础架构,帮助识别类似 Web 应用程序延迟峰值、磁盘空间不足、错误的代码部署等问题,减少虚假和冗余的警报。在其帮助下,开发者及团队可以专注于其他需要专注及更重要的事情。
走近开发者的社区活动
没有人会用的技术是没有价值的。在技术快速发展的同时,如何让其普惠更多的开发者,让他们获得技术带来的巨大能量,这是一个值得深思的问题。能为开发部署赋能的技术很多,而技术的壁垒、使用的场景限制都是横亘在开发人员和新技术之间的鸿沟。
亚马逊云科技关注到了云计算领域开发者的需求,打造了可以满足开发者学习、交流需求的活动和课程,让云计算创新技术覆盖更多人。本次大会,承载了众多活动和社区建设内容的“社区专题”也在七个专题视频之中——亚马逊正在发起“全球游戏”,做云计算领域的技术人才培养。
消灭 100 万个 Bug
“对开发者来说,游戏开始了;对 Bug 来说,‘游戏结束’了”这是本次大会对 Amazon BugBust 挑战赛的精彩总结。
近几年,基于云开发、构建和部署新功能的进程正在变得越来越快,然而开发过程中的代码错误却无法避免,随着比以往多千百万行的代码输出,要审查的代码也越来越多,代码审查的数量和复杂度也在增加。
为了确保代码的正确性和编码的最佳实践,代码审查的必要性不言而喻。更有趣、更有效地审查代码的方法在哪?
一些公司、团队会举办 Bug bash(Bug 大扫除),以团队协作的形式查找修复 Bug,一般需要花大量的时间手动检查大型代码库,效率较低,而且可能有 Bug 成为漏网之“鱼”通过检查。
今年 6 月,亚马逊云科技提供了一个清除 Bug 的解决方案——Amazon BugBust 挑战赛,这是世界上首个面向 Java 和 Python 开发人员共同修复 100 万个 Bug 的全球竞赛。开发者可以在亚马逊云科技控制台中快速轻松地设置自己的 Amazon BugBust 项目,其中可以设置挑战、奖励和排行榜,世界各地的开发者都可以加入到该活动中,修复 Bug 获得比分,成绩会同步到 Amazon BugBust 挑战赛中,还可以在排名上升时获得徽章和奖励。
在 Amazon BugBust 挑战赛背后,有一个帮助开发者查找和消除错误的重要工具——Amazon CodeGuru Reviewer 和 Amazon CodeGuru Profiler,这两个工具通过利用机器学习和自动推理来查找代码中的错误,替代了开发人员手动检查的繁重工作,为“消灭 Bugs”提供了简单、高效、有趣的方案。
通过 DeepRacer 掌握机器学习
2018 年发布的世界经济论坛报告称,到 2022 年人工智能将新增 5800 万个新岗位;2018 年腾讯研究所公布的数据显示,世界各地的 AI 工程师仅有 30 万。亚马逊云科技看到了世界人工智能领域学习的需求,在同年首次发布了 Amazon DeepRacer,降低人工智能的核心——机器学习(ML)的门槛。
Reinforcement Learning(强化学习)是一种高级的 ML 技术,也是 ML 的一个重要分支,它采用了一种与众不同的方法来训练模型。它的超强功能在于,Reinforcement Learning 模型在学习非常复杂的行为时不需要任何标记的训练数据,并且可以在以长期优化为目标的同时做出短期决策。DeepRacer 内置了强化学习(Reinforcement Learning)框架,使开发人员可以在线上模拟器中训练、评估和调整 Reinforcement Learning 模型,然后将自己的模型部署到 Amazon DeepRacer 上,从而获得堪比现实世界的自动驾驶经验,让中学生也能体验机器学习。
为了让世界各地的开发者和机器学习爱好者可以更深入地交流机器学习的经验,体验自动驾驶的乐趣,亚马逊云科技还在 2018 年的 re:Invent 全球大会上首次推出 Amazon DeepRacer 联赛(包括线上模拟赛和线下实体赛)。本次大会中 Amazon DeepRacer 专题提到,Amazon DeepRacer 现可借助虚拟 3D 赛车模拟器、广播工具和 1/18 比例自动驾驶竞速赛车,让开发者在娱乐中掌握 ML 的基本原理。最新数据显示,自联赛推出以来全球已有超过 10 万名开发者通过参赛体验到机器学习的乐趣,同时也帮助团队构建包容的 ML 公司文化,促进团队的合作和良性竞争。
在 BuildOn 中掌握流畅开发
除了 Amazon BugBust 和 Amazon DeepRacer 这两个充满竞技色彩的专题外,BuildOn 也在社区专题中亮相了,这是面向开发者围绕代码的实际应用开设的课程,其目的是鼓励开发者动手实操,帮助他们学习云计算技术应用,实现更快更好的创新。
本次 re:Invent 大会中,BuildOn 共有 5 节不同主题的分享,涵盖容器、实时分析数据等领域,每个分享中都有两位主题专家分享代码,指导解决开发者们实际遇到的各种问题,也带领开发者了解多个亚马逊云科技服务连接在一起的解决方案,帮助开发者开启云上构建。
为了推动开发者动手实践,平时,亚马逊云科技也会组织技术布道师,为世界各地的开发者分享如何完成云上构建,带领开发者动手实操,在云上构建移动应用、无服务应用程序等,这些课程在官网的开发人员中心(Developer Center)里都可以找到。在大会的 Keynote 演讲中,亚马逊云科技新任首席执行官 Adam Selipsky 承诺,在 2025 年前,要培训 2900 万人掌握云技术,为此,亚马逊云科技提供了在线数字化体验,免费提供 500 多个课程,这些课程还支持多达 16 种语言。
写在最后
除了上文的内容,本届 re:Invent 还发布了其他的创新产品和服务,现可通过亚马逊云科技官网观看全部回放。纵观整场大会,“以人为本”的隐藏主线贯穿始终。在技术、人才、团队三者连接后,很可能出现一个云计算技术发展的闭环:新技术与人才打造更高效的 DevOps 团队,而团队与人才利用新技术,探索更前沿的技术。这可能是亚马逊云科技新任首席执行官 Adam Selipsky 在演讲中提到的两个核心的概念“首先是变革,云和亚马逊云科技提供的是变革的能力;其次是重塑,云是一个重塑一切的机会,因为云提供了一条通往真正转型的道路。”的另一层含义了。