私はアプリケーションを構築しています。その1つの側面は、ユーザーがいくつかのcsvファイルとともに画像をエクスポートできることです。データ処理ワークフロー:aws lambdaまたはec2インスタンス?
このアプリケーションのこの機能の使用は断続的です。言い換えれば、使用の間に多量の時間(数ヶ月)があり、その後かなりの時間がかかるでしょう。
現在、私はこれをec2インスタンス上で動作するpythonスクリプトを使用して実装しています。 pythonスクリプトは、エクスポートの詳細を含むjsonのsqsキューをポーリングします。エクスポートjsonには、s3に格納された一連のイメージが含まれています。この配列には、1〜5000個のイメージが含まれている可能性があります。
スクリプトは、基本的には次のん:輸出メッセージの
- ポーリングSQS
- ダウンロードs3の画像
- は(ImageMagickの)をリサイズし /エクスポートメッセージ からのデータに基づいて画像の名前を変更します
- エクスポートメッセージのデータに基づいてディレクトリ内のイメージをグループ化する
- csvを作成する輸出メッセージからデータ
- に基づいてファイルには、このワークフローを使用の間欠性を考慮したAWSラムダのためのより良いでしょうか?
- アップロードが
をS3に.zip .zipアーカイブを作成しますか
ラムダを使用してこのワークフローを実行できますか?
5k画像のサイズを変更するのはラムダにとって時間がかかりすぎますか?あなたはAWSラムダ関数を使用して経験する
スポットインスタンスは素晴らしいコールされている、あなたはまた、SWF(https://aws.amazon.com/swf検討することもでき/)が、Samはすでにサーバー上で実行されているPythonスクリプトを持っているので、スポットインスタンスがそのインスタンスになります。 –