Транзакция - это единица работы, которую вы хотите рассматривать как «целое». Это должно происходить полностью или не происходить вообще.
Классическим примером является перевод денег с одного банковского счета на другой. Для этого вам необходимо сначала снять сумму с исходного счета, а затем внести ее на целевой счет. Операция должна пройти полностью. Если вы остановитесь на полпути, деньги будут потеряны, и это очень плохо.
В современных базах данных транзакции также делают некоторые другие вещи - например, гарантируют, что вы не можете получить доступ к данным, которые другой человек написал на полпути. Но основная идея та же - транзакции должны гарантировать, что независимо от того, что произойдет, данные, с которыми вы работаете, будут в разумном состоянии . Они гарантируют, что НЕ будет ситуации, когда деньги будут сняты с одного счета, но не переведены на другой.