How does Databricks ensure atomicity in transactions involving multiple tables?
Databricks manages transactions at the table level, and by default, it provides snapshot isolation on reads and write-serializable isolation on writes. This means that write operations are atomic for each table, but there are no multi-table transactions. Therefore, when working with multiple tables, transactions are committed to each table in a serial fashion. This ensures atomicity for each table operation, but not for the entire multi-table transaction as a whole.