Как я могу достичь атомарности, подобно django orm, в fastapi с sqlalchmey orm

Как я могу добиться атомарности как в django orm в fastapi с sqlalchmey orm. Я пытаюсь сделать cron скрипт, который будет удалять данные из s3 bucket и DB большое количество данных. Если каким-то образом операция s3 не удастся и это создаст несогласованность или в любом случае s3 пройдет, а DB не удастся. Поэтому я хочу добиться атомарности, как в django "с атомарными транзакциями".

Я пытаюсь сделать скрипт, который будет удалять данные из s3 bucket и DB большое количество данных.

Один простой подход может быть таким,

def function_name(...):
   try:
       ...
       db.commit()
   except:
       db.rollback()
   finally:
       db.close()
Вернуться на верх