用于Serverless 应用程序开发的亚马逊云科技存储

关键字: [Amazon Web Services re:Invent 2023, AmazonS3, Serverless Compute, Serverless Storage, AmazonS3, Amazon Efs, Event Driven Workflows]

本文字数: 1400, 阅读完需: 7 分钟

视频

如视频不能正常播放,请前往bilibili观看本视频。>> 用于Serverless 应用程序开发的亚马逊云科技存储 [重复]_哔哩哔哩_bilibili

导读

Serverless、事件驱动的计算服务可让您以代码形式为几乎任何类型的应用程序或后端服务运行基础架构,而无需调配或管理服务器。在本论坛中,探索亚马逊云科技存储服务(包括 Amazon Amazon EFS 和 AmazonS3)的解决方案,以帮助您深入了解常见工作流,并发现哪种存储最适合您的工作负载。考虑亚马逊云科技存储如何帮助您构建大规模适应的现代应用程序,以更高的敏捷性运行分析工作负载,并降低总拥有成本。

演讲精华

以下是小编为您整理的本次演讲的精华,共1100字,阅读时间大约是6分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。

本次演讲的主题是《亚马逊云科技的无服务器应用开发存储方案》,由三位专家——Brian Lyles、Sebastian Bea 和 Jefferson Frazer 共同分享。Brian Lyles 担任亚马逊简单存储服务(AmazonS3)的高级首席工程师;Sebastian Bea 是亚马逊云科技(亚马逊云科技)的专业解决方案架构经理;而Jefferson Frazer 则担任Shutterstock 的边缘存储 CID DevOps 和数据库高级总监。

Brian 首先阐述了演讲的核心内容,即探讨如何利用亚马逊云科技的存储服务来构建无服务器应用。亚马逊云科技提供两种主要的无服务器存储服务:亚马逊简单存储服务(AmazonS3)和亚马逊弹性文件系统(Amazon Amazon EFS)。

接下来,他对无服务器架构进行了详细的解释。简单来说,无服务器架构允许开发者在无需关心底层基础设施和服务器的情况下构建和运行应用程序。在这种模式下,云服务提供商(例如亚马逊云科技)会自动处理所有基础设施配置、扩展和容量管理。这使得开发者能够实现更快的上市时间、灵活的扩展以及与业务需求相匹配的成本。

亚马逊云科技提供了超过40种管理服务,使得开发者能够轻松地构建无服务器应用程序。这些服务涵盖了各种领域,如计算服务(如亚马逊云科技 Lambda 和 Fargate)、集成服务(如 Amazon EventBridge 和 Step Functions)以及存储服务(如 AmazonS3 和 Amazon Amazon EFS)等。

In terms of storage, Sebastian provided a more detailed explanation. AmazonS3 offers virtually unlimited storage capacity that can automatically scale to handle any amount of data. It provides massive parallel access, enabling thousands of concurrent users to simultaneously accessS3 objects.S3 boasts high throughput capability, providing terabytes of aggregated bandwidth per second. One important feature ofS3 is its ability to trigger event notifications when objects are changed, which then calls other Amazon Lambda functions. This enables the creation of reactive, event-driven workflows.S3 also offers intelligent tiering functionality, which can automatically switch objects between different storage tiers based on access patterns. This optimizes storage costs by transitioning objects from the high-frequency accessedS3 Standard to the low-frequency accessedS3 Standard IA andS3 Glacier for archival use.

Amazon Amazon EFS offers a simple file storage service accessible through the NFS protocol. Amazon EFS scales to provide high performance, even with thousands of concurrent connections. Due to its provision of a POSIX-compliant file system, Amazon EFS can handle use cases requiring traditional file permissions and metadata. When accessing from the same Amazon Web Services region, Amazon EFS offers extremely low file access latency in milliseconds. Amazon EFS replicates data across multiple Availability Zones within the region and has multi-AZ file system recovery targets (minutes). Amazon EFS also has native integration with Amazon Lambda, allowing Lambda functions to directly access Amazon EFS volumes without any special configuration. LikeS3, Amazon EFS offers intelligent tiering between different storage levels and 11:9 data durability.

When deciding between usingS3 or Amazon EFS, some key considerations include:S3 is suitable for applications requiring object storage, large-scale expansion, and parallel processing, as well as those wanting to build event-driven workflows. Amazon EFS is better suited for workloads requiring high IOPS performance, fine-grained file access, and effective updating of large files.

Brian subsequently introduced several sample Amazon Web Services Lambda workflows that utilize these storage services:

  1. Video asset processing - Original video assets can be uploaded to anS3 storage bucket.S3's event notifications can trigger a Lambda function, which uses an Amazon EFS volume to transcode and process the video. The output assets can then be stored in a separateS3 storage bucket for distribution to end users.

  2. 数据丰富化 - 在从S3中访问数据时,可以利用Lambda函数实现数据的动态转换。这使得能够从一个S3中的单一真实来源提供针对不同应用程序的定制数据视图。例如,可以为分析应用程序删除PII数据,并将来自其他源的额外数据合并以丰富营销应用程序的数据。

接下来,Sebastian分享了一些实际案例来展示如何使用亚马逊云科技无服务器存储:

  1. The Brains - 这个AI公司以55种语言制作定制视频化身,并面临难以用固定基础设施管理的巨大需求峰值。通过使用EKS和S3/EFS进行存储,他们可以在满足需求的同时轻松扩大或缩小在亚马逊云科技上的规模,同时只支付使用的存储和计算费用。

  2. Woot - 他们已经将他们的数据仓库迁移到S3和Lambda。他们没有管理ETL作业,而是使用Kinesis Data Firehose将日志数据流入S3。这种无服务器的方法有助于提高开发人员的生产力。

最后,Shutterstock的Jefferson介绍了他们如何利用亚马逊云科技的无服务器功能。Shutterstock管理着超过7.3亿张图像和450万段视频,存储在2500个S3存储桶中,总计80PB。他们将遗留的单体系统分解成使用Step Functions和EventBridge协调的微服务。重度使用S3的功能,如前缀、访问控制和安全性能帮助他们优化性能和成本。通过采用无服务器架构,他们的速度提高了4700%,超过了以前的平台。

Jefferson分享了他们在无服务器旅程中的一些关键经验:

  • 将遗留系统分解成尽可能小的独立功能。
  • 消除通用繁重工作,以便工程师可以专注于核心问题而不是基础设施管理。
  • 无服务器组件,如Lambda和S3,消除了管理服务器和存储的开销。

总之,由亚马逊云科技Lambda、S3和EFS等服务提供的无服务器架构可以提供显著的好处,如缩短上市时间、更容易的扩展性和更低的成本。对于存储,S3和EFS提供了高性能、持久且可扩展的存储选项。使用诸如S3事件和Object Lambda等功能,可以实现松散耦合的反应式工作流程。像Shutterstock这样的公司已经看到了通过在亚马逊云科技上采用无服务器架构而取得的伟大成果。

下面是一些演讲现场的精彩瞬间:

布莱恩·莱尔斯(Brian Lyles)是亚马逊S3的高级首席工程师,塞巴斯蒂安·比安(Sebastian Bea)是亚马逊云科技的专项解决方案架构经理,杰斐逊·弗雷泽(Jefferson Frazer)是Shutterstock的高级总监。

他们共同探讨了无服务器计算和存储解决方案的相关议题。

亚马逊云科技的服务设计充分考虑了良好的架构框架,旨在提供卓越的运营、安全性、可靠性、性能、效率和成本优化。

专家们强调,相较于S3,EFS在处理具有高变更速度的环境中具有明显优势,因为后者允许对现有大型文件进行靶向更新。

此外,专家还指出,在使用EFS而非S3处理大量小型文件访问的工作负载时,EFS具有明显的成本优势。

通过使用CSI驱动程序将存储与EKS本机集成,开发人员能够轻松访问存储,无需深入了解底层存储细节。

演讲者们讨论了如何在亚马逊云科技平台上构建应用程序,通过将过程分解成事件,插入用于测试的接口,实现优雅地处理故障以及优化成本的同时保持灵活性。

总结

本次演讲主要探讨了如何运用亚马逊云计算服务(Amazon Web Services)的无服务器存储方案,如S3(简单存储服务)和EFS(弹性文件系统),结合Lambda(无服务器函数)和Fargate(无服务器计算容器)来实现灵活且可扩展的无服务器计算。演讲重点介绍了S3的对象存储特性,适用于并行工作负载的扩展,并可透过事件通知与其他亚马逊云科技服务进行整合。相比之下,EFS文件存储更适用于访问随机小文件和满足POSIX权限需求。

演讲者通过一个使用S3事件的示例工作流程来说明如何触发Lambda处理,例如生成视频缩略图或编辑数据字段。他们展示了一个例子,说明如何使用S3对象和Lambda在不复制对象的情况下实时转换数据。建议将应用程序拆分为由事件驱动的较小功能模块,以实现灵活性。Step Functions可以协助协调这些事件和无服务器组件(如EFS)与Lambda的集成。

Shutterstock分享了他们在实际操作中如何使用S3、EventBridge(事件桥接器)、Step Functions和Lambda构建一个跨品牌统一的摄取平台。他们强调应尽量使用较小的函数,并让Step Functions负责协调和处理错误。这种无服务器方法带来的效率提升使他们的速度提高了4700%。

演讲原文

AWS storage for serverless application development [REPEAT]-CSDN博客

想了解更多精彩完整内容吗?立即访问re:Invent 官网中文网站!

2023亚马逊云科技re:Invent全球大会 - 官方网站

点击此处,一键查看 re:Invent 2023 所有热门发布

即刻注册亚马逊云科技账户,开启云端之旅!

【免费】亚马逊云科技“100 余种核心云服务产品免费试用”

【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”

亚马逊云科技是谁?

亚马逊云科技(Amazon Web Services)是全球云计算的开创者和引领者,自 2006 年以来一直以不断创新、技术领先、服务丰富、应用广泛而享誉业界。亚马逊云科技可以支持几乎云上任意工作负载。亚马逊云科技目前提供超过 200 项全功能的服务,涵盖计算、存储、网络、数据库、数据分析、机器人、机器学习与人工智能、物联网、移动、安全、混合云、虚拟现实与增强现实、媒体,以及应用开发、部署与管理等方面;基础设施遍及 31 个地理区域的 99 个可用区,并计划新建 4 个区域和 12 个可用区。全球数百万客户,从初创公司、中小企业,到大型企业和政府机构都信赖亚马逊云科技,通过亚马逊云科技的服务强化其基础设施,提高敏捷性,降低成本,加快创新,提升竞争力,实现业务成长和成功。

  • 18
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Serverless 应用引擎(Serverless Application Engine)是一种原生的应用部署和管理平台。它可以帮助开发者将代码轻松地部署到端,而无需考虑服务器的管理和维护。 安装和使用 Serverless 应用引擎需要以下步骤: 1. 首先,需要在云服务提供商(如 AWS、阿里等)创建账户,并进行必要的身份验证和权限配置。 2. 在本地开发机器上安装并配置相关的开发工具,如命令行界面(CLI)工具、代码编辑器等。 3. 在命令行界面中,使用适当的指令来安装 Serverless 应用引擎。具体的指令可能因云服务提供商有所不同,需参考相关文档。 4. 在安装完成后,使用命令行界面创建一个新的项目或选择已有的项目。 5. 编写应用程序的代码,并针对特定的云服务提供商进行相关配置。这些配置可能包括函数的入口点、运行环境、内存分配等。 6. 使用命令行界面将应用程序部署到端。这个过程会自动创建所需的资源(如函数、存储桶等),并将代码上传到端。 7. 一旦部署完成,开发者可以通过命令行界面获取应用程序的状态、日志和其他相关信息。 8. 如果需要更新应用程序,可以通过修改本地代码后,再一次使用命令行界面将应用程序部署到端。 总之,安装和使用 Serverless 应用引擎需要开发者熟悉相关的命令行界面和云服务商的配置,同时需要编写适应云服务商要求的代码。通过这些步骤,开发者可以方便地将自己的应用程序部署到端,并享受 Serverless 架构的弹性和可扩展性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李白的朋友高适

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值