YugabyteDB is a transactional database that supports distributed transactions. A transaction is a sequence of operations performed as a single logical unit of work. YugabyteDB provides ACID guarantees for all transactions.

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.
An application can connect to any node of the cluster.
Isolation levels Serializable
Snapshot
Read Committed
Snapshot Repeatable read isolation level in PostgreSQL maps to snapshot isolation in YSQL.
AUTOCOMMIT = false setting Yes No The transaction must be expressed as one statement in YCQL.