Database Fundamentals
A database is an organized collection of structured data, stored and accessed electronically.
A Database Management System (DBMS) is software that manages databases, providing:
- Data storage and retrieval
- Data manipulation (insert, update, delete)
- Data security and access control
- Data integrity constraints
- Concurrent access management
- Backup and recovery
File System vs DBMS
| File System | DBMS |
|---|---|
| Data redundancy | Controlled redundancy |
| No data integrity | Integrity constraints |
| No concurrent access | Transaction management |
| No security | Access control |
| No query language | SQL/Query languages |
| Application dependent | Data independence |
Types of Databases
- Relational (RDBMS): MySQL, PostgreSQL, Oracle
- Document: MongoDB, CouchDB
- Key-Value: Redis, DynamoDB
- Graph: Neo4j, Amazon Neptune
- Columnar: Cassandra, HBase