In a monolithic system, a database transaction should ensure consistent query results after a successful request. Otherwise, it should rollback all the commits that were made to the previous state (Atomicity). Atomic transaction is common and easily achievable in a single database system.
However, in a distributed system you may need to handle this differently ensuring data consistency across multiple services and where each service have its own database. So traditional ACID approach wouldn't work.
Celery is a distributed task queue framework that delegates tasks across multiple workers or threads it supports parallel processing. As a reader, I presume that you understand the basics of Celery and this article will only focus on the parallel tasks feature of Celery.