Lambdaでサイズを変更するよりも、ファイルをS3にアップロードするシステムの最良の設計は何ですか。
サイズのラムダ関数を複数回トリガーすることなく、ファイルをS3にアップロードしてAWSラムダを使用してサイズを変更するシステムの1つの設計が1つあります。

ユーザーはファイルをS3バケットにアップロードします。
S3は「Put Object」イベントを生成し、Lambda関数をトリガーします。
Lambda関数は、同じキーが同じであるが異なるファイル拡張子（「Resized」など）を持つ同じS3バケットにサイズ変更されたファイルが存在するかどうかをチェックすることにより、アップロードされたファイルがすでにサイズ変更されているかどうかを確認します。
サイズ変更されたファイルが存在する場合、ラムダ関数はそれ以上何もせずに戻ります。
サイズ変更されたファイルが存在しない場合、Lambda関数はS3の元のファイルを読み取り、サイズ変更操作を実行し、同じキーが異なるファイル拡張機能を持つS3にサイズ変更ファイルを書き戻します。
Lambda関数は、S3の元のファイルのメタデータを更新し、ファイルがサイズ変更されたことを示すフラグを示します。
この設計により、ラムダ関数はアップロードされた各ファイルに対して1回のみトリガーされ、サイズ変更されたファイルが元のファイルと同じキーを持つ同じS3バケットに保存され、サイズ変更されたファイルを簡単に追跡できます。