为 Lambda 函数配置短暂存储 - AWS Lambda

为 Lambda 函数配置短暂存储

Lambda 为 /tmp 目录中的函数提供短暂存储。此存储是临时的,并且对于每个执行环境都是独一无二的。您可以使用短暂存储设置来控制分配给函数的短暂存储量。您可以以 1MB 的增量将短暂存储配置在 512MB 与 10240MB 之间。存储在 /tmp 中的所有数据都是使用由 AWS 管理密钥进行静态加密。

本页介绍常见应用场景以及如何更新 Lambda 函数的短暂存储。

增加短暂存储的常见应用场景

以下是几个可从增加短暂存储中受益的常见应用场景:

  • 提取-转换-加载(ETL)作业:当您的代码执行中间计算或下载其他资源以完成处理时,增加短暂存储。更多的临时空间允许在 Lambda 函数中运行更复杂的 ETL 作业。

  • 机器学习(ML)推理:许多推理任务依赖于大型参考数据文件,包括库和模型。有了更多短暂存储,您可以从 Amazon Simple Storage Service(Amazon S3)将更大的模型下载到 /tmp 并将其用于处理。

  • 数据处理:对于从 Amazon S3 下载对象以响应 S3 事件的工作负载,更多的 /tmp 空间使得无需使用内存中处理即可处理较大的对象。创建 PDF 或处理媒体的工作负载也将从更多短暂的存储中获益。

  • 图形处理:图像处理是基于 Lambda 的应用程序的常见应用场景。对于处理大型 TIFF 文件或卫星图像的工作负载,更多的短暂存储可以更轻松地在 Lambda 中使用库和执行计算。

配置短暂存储(控制台)

您可以在 Lambda 控制台中配置临时存储。

要修改函数的临时存储
  1. 打开 Lamba 控制台的 Functions(函数)页面。

  2. 选择函数。

  3. 选择配置选项卡,然后选择常规配置

    Lambda 控制台中的配置选项卡。
  4. 常规配置下,选择编辑

  5. 对于短暂存储,以 1MB 的增量将值设置在 512MB 与 10240MB 之间。

  6. 选择保存

配置短暂存储(AWS CLI)

您可以使用 update-function-configuration 命令来配置短暂存储。

aws lambda update-function-configuration \ --function-name my-function \ --ephemeral-storage '{"Size": 1024}'

配置短暂存储(AWS SAM)

您可以使用 AWS Serverless Application Model 为您的函数配置短暂存储。更新 template.yaml 文件中的 EphemeralStorage 属性,然后运行 sam deploy

例 template.yaml
AWSTemplateFormatVersion: '2010-09-09' Transform: AWS::Serverless-2016-10-31 Description: An AWS Serverless Application Model template describing your function. Resources: my-function: Type: AWS::Serverless::Function Properties: CodeUri: . Description: '' MemorySize: 128 Timeout: 120 Handler: index.handler Runtime: nodejs20.x Architectures: - x86_64 EphemeralStorage: Size: 10240 # Other function properties...