Transactions and DBMS Architecture Flashcards
What is a DBMS?
Software system for defining, building, manipulating, and sharing databases efficiently
What are the main goals of a DBMS
- Data abstraction
- Independence
- Fault tolerance
- Access control
- Concurrency
4 types of DBMS languages
- Data Definition Language (DDL)
- Data Manipulation Language (DML)
- Data Control Language (DCL - access control)
- Transaction Control Language (TCL)
ACID
Atomicity
Consistency
Isolation
Durability
Why is isolation important in transactions?
To maintain transactions do not interfere with each other, maintaining data integrity
What is a dirty read in concurrency?
When a transaction reads data that has not been committed yet
How does a DBMS prevent loss updates?
By using locks and ensuring proper transaction isolation
What does the Query Optimizer do?
Determines the most efficient way to execute a query
Recovery Manager
Restrores database to a consistent state after failures
NoSQL
Databases that handle unstructured data, web-scale applications and horizontal scalability
Main advantage of in-memory databases (IMDB)
Faster access since data is stored in RAM.
Difference between two-tier and three-tier DBMS architectures
3-tier separates presentation, logic, and database services to improve scalability and modularity
Cloud Database
Database hosted in managed in the cloud (DBaaS).