当前位置:首页 > 股票资讯 - 正文

从《再发明》看AWS对开源和社区的新贡献 国信证券开户

贡献,社区,AWS时间:2021-03-26 10:38:16浏览:205
后台-插件-广告管理-内容页头部广告位(手机)

原标题:AWS对开源和社区的新贡献

张文的建议:“在刚刚结束的2020年,我很幸运地参加了AWS社区活动。在这次活动中,我第一次听到宇博分享“云计算、开源、社区”,给我带来了很多思考和启发。活动结束后,我邀请玉波写一篇关于张文的文章,与社区开发者分享一些与AWS和开源相关的内容。尽管工作很忙,玉波还是写了以下张文,这让开发人员对AWS的参与有了一个了解。也欢迎社区开发者参与AWS和Sisi的社区活动,共同交流分享云计算和开源技术。”

——段错,CEO莱文。

照片拍摄于2020年上海AWS社区日

作者:王予波

关于作者:王予波是AWS资深开发者传道者,负责在开发者中宣讲和推广AWS技术和产品。此前,他担任AWS高级产品经理多年,负责AWS计算、数据和人工智能相关产品和解决方案的业务开发。在加入AWS之前,曾在多家跨国公司担任产品、技术和管理职位,在IT行业有近15年的经验和实践;他在计算机视觉、模式识别和机器学习领域也有多年的科研经验。

从《再发明》看AWS对开源和社区的新贡献

自2006年提供第一个云服务以来,AWS一直是开源社区的重要参与者

而它的贡献涵盖了代码、操作、基础等诸多方面。除了2500多个GitHub库,我们还参与了数千个第三方开源项目,培养了数十万个开源社区。

图1: AWS对开源的贡献逐年增加

作为云计算制造商,AWS在开源领域采取了更加平衡和务实的方法,吸引了许多员工、客户和合作伙伴参与开源项目并为其做出贡献。我们在开源领域的驱动力来自最终用户,专注于为开发者提供更好的工具。我们在发布基于开源项目的云服务时,会做出长期支持客户的承诺,为开源项目提供错误修复、安全性、可扩展性、性能和功能增强,并采取“上游优先”的策略,这让我们在Linux、Xen、Kubernetes、Redis、Rust、Redis、GraphQL、ROS等社区中赢得了领先地位。同时我们也代表客户进行创新,也推出了很多开源项目,比如Apache MXNet、buckle、Bottlerocket、PartiQL、Amazon Corretto、Open Distro for ElasticSearch、AWS Distro for Open遥测等。,这使得开发人员更容易从专有技术转移到开源技术并做出贡献。此外,我们还积极参与由客户发起的开源项目,如网飞的Spinnaker。我们还继续与一些领先的开源独立软件供应商合作,包括MongoDB、Databricks和Redis实验室,帮助他们构建和优化云服务。

图AWS参与的一些开源项目

图3:由AWS发起的一些开源项目

在刚刚结束的AWS re:Invent 2020中,很多新发布的版本中都有一系列关于开源和社区的新贡献。这里重点介绍DevOps、数据与分析、机器学习、边缘计算,这些是开发者比较关注的。

首先,我们来看看DevOps。

谈到DevOps,我们首先会想到容器和Kubernetes,它们已经成为DevOps工具的下一代基础设施。亚马逊弹性Kubernetes服务(EKS)为很多开发者提供了安全、稳定、可靠的托管Kubernetes云服务,但是很多开发者因为各种原因只能在本地运营Kubernetes。为了帮助这些开发人员避免管理库本内特基础设施的繁重工作,我们发布了亚马逊EKS发行版作为开源。这是亚马逊EKS使用的库本内特分布,它可以帮助您在任何地方手动运行库本内特集群,包括亚马逊EC2、其他云和本地硬件。EKS发行版包括上游开源库本内特组件和第三方工具,包括创建集群所需的配置数据库、网络和存储组件。有kuberetes控制平面组件(kube-controller-manager、etcd和CoreDNS)和kuberetes工作节点组件(kubelet、CNI插件、CSI Sidecar映像、Metrics Server和AWS-IAM-authenticator)。

与此同时,我们还提供了全新的亚马逊EKS随处部署选项。亚马逊EKS Anywhere基于亚马逊EKS发行版创建集群,允许您在本地轻松创建和操作Kubernetes集群,包括在您自己的虚拟机和裸机服务器上。EKS Anywhere提供了可安装的软件包,可以在本地创建和操作Kubernetes集群,并提供了支持集群生命周期的自动化工具。

有了这两个新版本,可以说在Kubernetes领域,AWS为开发者提供了相同的跨本地和云的使用和操作体验。

图4: Kubernetes在本地和云环境中的相同操作体验

连续可观测性是DevOps管道的关键组成部分。可观测性的三大支柱包括跟踪、日志和指标,需要作为一套统一的集成工具来使用,让每一个开发者都可以在一个地方查看到所有的观测数据。在《发明2020》中,AWS引入了三个新的开源解决方案来集成云中更好的可观测性。第一个是开放遥测的AWS发行版,这是一个安全的、生产就绪的、AWS支持的开放遥测项目版本。它可以用于运行在EC2、Lambda和AWS容器服务上的应用程序和本地应用程序,并向多个云本机和开源监控组件发送相关指示和跟踪。其次,亚马逊为普罗米修斯(amp)管理服务。普罗米修斯是一个流行的开源监控和报警解决方案,它是针对容器环境优化的。虽然在AWS上部署一台普罗米修斯服务器很容易,但在多台服务器之间扩展和配置环境以实现高可用性可能需要数周的手动工作。需要更多容量的客户必须部署其他开源项目,如灭霸和Cortex,并投入更多工程工作来优化内存和存储等资源,以控制成本和优化查询重新响应时间。借助AMP托管服务,您可以使用与开源Prometheus相同的数据模型和查询语言来监控容器化工作负载的性能,并在不管理底层基础架构的情况下获得更好的可扩展性、可用性和安全性。然后亚马逊为grafana (AMG)管理服务。AMG基于开源的Grafana项目,是一个完全托管的服务,具有丰富的交互式数据可视化,可以帮助客户分析、监控和警报来自多个数据源的指标、日志和跟踪。您可以创建交互式仪表板,并使用自动扩展、高可用性和企业级安全服务。到目前为止,AWS在其云服务中提供了完整的云本机和开源连续观测解决方案,为开发人员构建DevOps提供了更多选择。

图5:云本地和开源连续观察解决方案

接下来我们来看看数据和分析。

在数据库领域,PostgreSQL一直是开发者的热门选择。许多开发人员喜欢PostgreSQL的一个原因是它完全是社区驱动的。但是迁移到PostgreSQL并不容易,因为数据库迁移的最大障碍是惯性。无论您出于什么原因想要迁移到PostgreSQL,开发人员都希望有一种更简单的方法。有鉴于此,AWS在re:Invent 2020中为PostgreSQL发布了开源的Babelfish。Babelfish是PostgreSQL的一个微软SQL Server兼容端点,让PostgreSQL可以熟练理解SQL Server应用的数据库请求,包括理解T-SQL和TDS通信协议。有了Babelfish,几乎不需要修改代码,也不需要修改数据库驱动,可以帮助更多的开发人员方便地迁移到PostgreSQL。Babelfish将于2021年正式开业。在此之前,你可以在亚马逊极光的预览版中使用Babelfish,看看它是如何工作的。

图6:巴别鱼是如何工作的

AWS胶水弹性视图是AWS胶水的一个新功能,它使您可以轻松地构建实体化视图,从而合并和复制多个数据存储中的数据,而无需编写自定义代码。

Glue Elastic Views使用AWS开源项目PartiQL,在包含结构化、半结构化和嵌套数据的多个数据存储中提供与SQL兼容的统一查询访问。PartiQL将查询的语法和语义与底层数据源和数据格式分开。它允许用户与有或没有规则模式的数据进行交互。此外,在亚马逊DynamoDB的新版本中,我们还提供了使用PartiQL查询、插入、更新和删除表数据的支持。

亚马逊Neptune ML是地图数据库Neptune的新功能,利用图形神经网络(GNNs)进行简单、快速、更准确的预测。与非图解法相比,Neptune ML可以将大多数图解法预测的准确率提高50%以上。亚马逊Neptune ML背后,AWS提供的开源库Deep Graph Library,是AWS上海人工智能研究所牵头的开源项目。

Apache Airflow是一个构建批处理数据工作流的开源项目,用于管理日益复杂的数据管理工具、脚本和分析工具。Amazon Managed Workflow for Apache Airflow(MWAA)是一项受管理的Apache Airflow服务,使您能够在不管理、配置和扩展Airflow环境的情况下协调数据处理工作流,并通过AWS支持的日志记录和监控功能来管理它们的执行。您可以在亚马逊MWAA上运行现有的气流工作流,并使用AWS控制台、应用编程接口和命令行界面以编程方式与其环境交互,同时减少管理基础架构和气流环境的时间。

最后,我们来看看机器学习和边缘计算。

深度学习中的图像分类、自然语言处理等应用场景需要越来越多的计算能力和数据集。例如,2018年发布的BERT使用了3.4亿个参数。现在,更先进的模型如T5、GPT-3、图灵-NLG和威震天创造了新的精度记录,但它们需要数百亿到数千亿个参数。如果您手动实现分布式培训的数据和模型并行策略,可能需要几周的实验,这将降低将新版本迭代部署到生产中的能力。随着re:Invent 2020的发布,AWS在亚马逊SageMaker中提供了一种新的托管分布式训练,为训练大型模型和数据集提供了一种更快、更简单的方法。SageMaker分布式训练使用分区算法,可以在AWS GPU实例之间自动拆分模型和训练数据集,实现数据并行和模型并行两种技术。数据并行的分布式训练应用广泛,其中AllReduce是一个关键操作,有很多开源实现,比如Horovod。在SageMaker分布式训练中,Sagemaker分布式数据并行(SDP)托管实现了优化的AllReduce。同时,充分利用AWS和Amazon EC2实例拓扑的网络基础设施进行优化的节点间通信,大大提高了分布式训练的性能。BERT是通过在p3dn . 24 x大型实例上使用2、4和8节点集群进行分布式训练的,PyTorch-SDP比PyTorch-DDP快41%、52%和13%。根据MaskRCNN的分布式训练,PyTorch-SDP比PyTorch-DDP快4%、19%和15%。具体结果如下表所示,训练代码位于amazon-sagemaker-examples。

图7: Sagemaker数据并行与pytorch DDP

此外,越来越多的应用,如工业自动化和自动驾驶,需要在边缘设备上运行的机器学习模型,以便在有新数据时进行实时预测。新发布的Amazon SageMaker Edge Manager可以帮助开发人员优化、保护、监控和维护部署在边缘设备集群上的机器学习模型。模型部署到边缘设备后,仍然需要管理和监控模型,以确保它们继续以高精度运行。当模型的精度随时间降低时,开发人员可以重新训练模型,不断提高模型的质量。SageMaker Edge Manager使用亚马逊SageMaker Neo针对不同硬件平台进行优化。背后是开源的Apache TVM编译器和开源的Neo-AI运行时,目前支持基于Ambarella、ARM、Intel、NVIDIA、恩智浦、高通、TI、Xilinx等公司生产的芯片的设备。

AWS于2016年推出AWS物联网Greengrass,将AWS物联网扩展到边缘设备。AWS Greengrass有两个主要部分:物联网边缘运行时和云服务。他们合作为物联网设备提供本地计算、消息传递和数据管理功能。您可以使用Greengrass在物联网设备上本地运行Lambda功能。启用ML推理;在设备之间发送消息;部署、运行和管理Docker容器等。关于:发明2020,AWS已经推出了物联网绿草2.0版本,增加了新的开发人员功能,包括改进的命令行界面和IoT绿草2.0版本的边缘运行时开源,用于添加和删除预建组件。

以上是re:Invent 2020中与开源相关的主要版本概述。我们相信开源会给每一个开发者带来好处,我们致力于把开源的价值带给我们的客户,把云的卓越运营带给开源社区。当然,一个健康的社区对于开发者使用开源也是非常重要的。因此,我们不断寻求以各种方式增加对开源社区的支持,并加入了许多开源基金会。作为基础的一部分,我们可以参与开源项目战略方向的设计和讨论,以帮助确保这些项目继续按照客户的期望发展。与此同时,在过去的几年里,我们一直在各种开源会议上发言,分享我们的开源知识和经验。

图AWS加入的一些开源基础

AWS为开发者和社区提供了广阔的舞台。AWS英雄项目建立了一个充满活力的全球AWS专家组,其对知识共享的热情在社区中产生了真正的影响。目前,mainland China有5个AWS英雄。AWS社区建设者为热衷于分享知识和与技术社区互动的AWS爱好者和新兴思想领袖提供技术资源、指导和交流机会。我们也希望更多的开发者加入中国的AWS开发者社区,进行更广泛、更深入的交流。回搜狐多看

负责编辑:


以上就是从《再发明》看AWS对开源和社区的新贡献国信证券开户的全部内容了,喜欢我们网站的可以继续关注健昌股票网其他的资讯!
后台-插件-广告管理-内容页底部广告位(手机)