Learning Objectives
5 objectives- Understand the fundamental concepts and components of database systems and their role in modern organizations.
- Design and model relational databases using entity-relationship diagrams, normalization, and schema refinement techniques.
- Develop proficiency in SQL for querying, updating, and managing relational databases.
- Explore various database management systems and their applications, including relational and NoSQL databases.
- Apply concepts of transactions, concurrency control, security, and optimization to ensure efficient and secure database operations.
Content Outline
PreviewUnit 4: Database Systems and Management
1. Introduction to Database Systems
- Definition and purpose of a database system
- Components of a database system: DBMS, database, users
- Types of databases
- Relational databases
- NoSQL databases (document, key-value, column-family, graph)
- NewSQL and others
- Importance of database management in modern organizations
- Real-world applications and use cases
2. Relational Database Design
- Fundamentals of relational databases
- Entity-Relationship (ER) Modeling
- Entities, attributes, relationships
- ER diagrams and notation
- Normalization
- Purpose and benefits
- Normal forms: 1NF, 2NF, 3NF, BCNF
- Data integrity constraints
- Primary keys, foreign keys, unique constraints
- Schema refinement and optimization
3. SQL Fundamentals
- Introduction to SQL and its role
- Data Querying
- SELECT statements
- Filtering and sorting data (WHERE, ORDER BY)
- Data Manipulation
- INSERT, UPDATE, DELETE
- Joining Tables
- INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN
- Creating and managing views
- Aggregate functions and grouping
4. Database Management Systems (DBMS)
- Overview of popular DBMS platforms
- MySQL
- Oracle Database
- Microsoft SQL Server
- PostgreSQL
- Key features and functionalities of each
- Use cases and industry applications
- Client-server architecture and tools
5. Data Modeling and Implementation
- Data modeling levels
- Conceptual data models
- Logical data models
- Physical data models
- Translating ER diagrams into relational schemas
- Implementation considerations
- Data types
- Indexing strategies
- Storage and access methods
6. Data Normalization and Optimization
- Importance of normalization to reduce redundancy
- Common anomalies and how normalization resolves them
- Denormalization: when and why
- Optimization techniques
- Indexing
- Query optimization
- Caching
7. Indexing and Query Optimization
- Index types and structures
- B-tree, Hash indexes
- Creating and managing indexes
- Query execution plans
- Strategies for query optimization
- Performance tuning in DBMS
8. Transactions and Concurrency Control
- Definition and properties of transactions (ACID)
- Isolation levels and their impact
- Concurrency control mechanisms
- Locking protocols
- Timestamp ordering
- Multiversion concurrency control (MVCC)
- Deadlock detection and resolution
9. Database Security and Backup Strategies
- Security challenges in databases
- User authentication and authorization
- Encryption techniques
- Backup strategies
- Full, incremental, differential backups
- Disaster recovery planning
10. Big Data and NoSQL Databases
- Introduction to Big Data concepts
- Limitations of traditional relational databases with big data
- NoSQL databases overview
- MongoDB (document store)
- Cassandra (wide-column store)
- Hadoop ecosystem
- Use cases and advantages of NoSQL
- Integration of NoSQL with existing systems
Unlock the full outline
Get the complete content outline, learning outcomes and assessment methods for Database Systems And Management.
KSh 20 one-off, or included with a plan
Learning Outcomes
Unlock the outline above to see learning outcomes.
Assessment Methods
Unlock the outline above to see assessment methods.