Learning Objectives
5 objectives- Understand fundamental concepts and components of database systems, including data models and schemas.
- Design and model efficient relational databases using ER diagrams and normalization techniques.
- Apply advanced SQL querying and data manipulation skills for effective data retrieval and updates.
- Explore database administration, security practices, and backup/recovery methods.
- Analyze emerging database technologies including NoSQL, big data solutions, and modern trends.
Content Outline
PreviewUnit 624: Comprehensive Database Systems
1. Introduction to Database Systems
- Overview and importance of database systems
- Components of database systems: DBMS, database, users, and applications
- Basic concepts:
- Data models (hierarchical, network, relational, object-oriented)
- Schemas and instances
- Relationships (one-to-one, one-to-many, many-to-many)
2. Relational Database Management Systems (RDBMS)
- Principles of RDBMS
- Tables (relations), rows (tuples), and columns (attributes)
- Keys:
- Primary keys
- Foreign keys
- Candidate and alternate keys
- Normalization:
- Purpose and benefits
- Normal forms (1NF, 2NF, 3NF, BCNF)
- Indexing:
- Types of indexes (B-tree, hash)
- Index advantages and trade-offs
- Introduction to SQL:
- Data Definition Language (DDL)
- Data Manipulation Language (DML)
3. Database Design and Modeling
- Database design process overview
- Entity-Relationship (ER) modeling:
- Entities, attributes, relationships
- ER diagrams and notation
- Mapping ER models to relational schemas
- Advanced modeling concepts (weak entities, generalization, aggregation)
- Normalization techniques and schema refinement
4. Data Querying and Manipulation
- Advanced SQL querying:
- Complex SELECT statements
- Subqueries and correlated subqueries
- Joins:
- INNER JOIN
- LEFT, RIGHT, FULL OUTER JOIN
- CROSS JOIN
- Set operations (UNION, INTERSECT, EXCEPT)
- Aggregate functions (COUNT, SUM, AVG, MIN, MAX)
- Grouping data (GROUP BY, HAVING)
- Transactions and concurrency control basics
5. Database Administration and Security
- Database administration tasks:
- Installation and configuration
- Monitoring and performance tuning
- User access control and authentication
- Backup and recovery strategies:
- Full, incremental, and differential backups
- Recovery models
- Security measures:
- Encryption
- Auditing and compliance
- SQL injection prevention
6. NoSQL Databases
- Introduction and rationale for NoSQL
- Types of NoSQL databases:
- Document stores (e.g., MongoDB)
- Key-value stores (e.g., Redis)
- Column-family stores (e.g., Cassandra)
- Graph databases (e.g., Neo4j)
- Differences between NoSQL and RDBMS
- Use cases and application scenarios
7. Data Warehousing and Business Intelligence
- Data warehousing concepts:
- Data marts
- Star and snowflake schemas
- ETL (Extract, Transform, Load) processes
- Online Analytical Processing (OLAP):
- Multidimensional analysis
- Data mining techniques
- Business intelligence and decision support systems
8. Big Data and Distributed Databases
- Challenges of big data
- Distributed database systems:
- Characteristics and architecture
- Scalability and fault tolerance
- CAP theorem explained
- Technologies overview:
- Hadoop ecosystem
- Apache Spark
- NoSQL databases in big data
9. Database Trends and Technologies
- Cloud databases and Database as a Service (DBaaS)
- In-memory databases and their advantages
- Blockchain databases:
- Concepts and use cases
- Impact of artificial intelligence and machine learning on databases
- Future directions and emerging innovations
Unlock the full outline
Get the complete content outline, learning outcomes and assessment methods for Database Systems.
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.