🗣️

Lambdaの処理可能なデータ容量の制限

2024/08/04に公開

概要

Lambdaで処理可能なデータ容量とAPIGatewayなどのペイロードのサイズを意識して説明する場面があったのでその時の内容を整理します。

Lambdaで処理可能なデータ容量に関連する制限

  • 一時ストレージ(エフェメラルストレージ):/tmpディレクトリは最大10GB
  • メモリ(RAM):最大10GBまで割り当て可能
  • 実行時のペイロード:最大6MBまで
    *responseも6MBの制限あり。なお、使用したことないがレスポンスストリーミングを使うとより大きなサイズをレスポンス可能らしい。

参考AWS公式
この6MBの制限があるからか、S3トリガーのLambdaではfileそのものはPayloadに入っておらず、bucket名などが連携されます。

対処

上述の制限を踏まえ、Lambdaで大きなデータを処理したい場合は、Lambda内でデータを取得する形にしましょう。
非常に基本的な内容ではありますが、同じことを何度か説明したので今後の備忘用に残しました。

参考リンク

Lambdaで6MBを超えるデータをresponseしたいときにS3を経由させる方法

Discussion