Transactions in YugabyteDB.

YugabyteDB is a transactional database that supports distributed transactions. A transaction is a sequence of operations performed as a single logical unit of work. A transaction has four key properties - Atomicity, Consistency, Isolation and Durability - commonly abbreviated as ACID.

The following table summarizes the support for transactions across the YSQL and YCQL APIs.

Property YSQL YCQL Comments
Distributed transactions Yes Yes Perform multi-row or multi-table transactions.
Application can connect to any node of the cluster.
Isolation levels Serializable
Snapshot Repeatable read isolation level in PostgreSQL maps to snapshot isolation in YSQL.
Set AUTOCOMMIT = false Yes No The transaction must be expressed as one statement in YCQL.

The various features are explained in the following sections.