私はaws Athenaに解析するために、Python 3.6でコード化されたラムダをいくつかのSQLクエリとともにコード化しています。このラムダは、dynamodbに入る新しい項目があるときには常にdynamoDBによってトリガーされます。新しいアイテムごとに、ラムダをスピンアップしたい。たとえば、DynamoDBに入っている100個の新しいアイテムがある場合、実行される100の同時ラムダがあります。しかし、このプロセスでは、SQLクエリの1つがAthenaで失敗し、ラムダがそのdynamodbレコードの計算を完了できない瞬間がありました。aws lambda(python 3.6)の操作の制御
注:dynamodbの各レコードのデータは、PythonおよびAWS ATHENAのSQLクエリに解析されます。
私の質問:並行するラムダのいずれかにエラーがある場合、このプロセスをどのように停止すれば、ラムダは私にコストがかかる同じレコードの実行を繰り返しています。
私はエラーやコードについては尋ねていませんが、実行に失敗した場合にラムダを停止する方法を知りたいだけです。 – pyhotshot
ラムダ関数の同期型 'RequestResponse'呼び出し型または非同期' event'呼び出しを使用していますか? –
同期RequestResponseではありません。新しいレコードがDynamoDBで生成/編集されると、ラムダはそのレコードの実行を開始します。 DynamoDBで100レコードが生成されると、ラムダはレコードごとに1つずつ実行されます。レコードが実行に失敗すると、同じレコードに対して再実行されます。 – pyhotshot