If you are Linux user with MySQL and PostgreSQL experience, you have probably noticed that SQL Server works with two types of files, .data and .log:
- data: A container file for database objects and data itself
- log: A container file for logging database operations, depending on recovery model
Each database has at least one data and log file. However, based on business needs, this number can be larger.
The transaction log file is the heart of Atomicity, Consistency, Integrity, and Durability (ACID). Those four magic words are the most powerful tools of every relational database. In a nutshell, it helps that, if something goes wrong during the business process, all changes are written to the database or returned to the state prior to the transaction. ACID in SQL Server is implemented through Write Ahead Log (WAL). The following figure describes that process...