Course Overview
This syllabus outlines the topics covered in the programming course.
Week 1: Introduction to Relational Databases and SQL
- What is a relational database?
- Introduction to SQL (Structured Query Language)
- SQL data types
- Creating databases and tables
Week 2: Retrieving Data with SQL
- SELECT statement and basic queries
- Filtering and sorting data
- Using WHERE, ORDER BY, and LIMIT clauses
- DISTINCT keyword
Week 3: Modifying Data in SQL
- INSERT, UPDATE, and DELETE statements
- Modifying data in tables
- Transactions and ACID properties
Week 4: Data Manipulation with SQL
- Aggregation functions (SUM, AVG, COUNT, etc.)
- Grouping data with GROUP BY
- Filtering grouped data with HAVING
- Subqueries and joins
Week 5: SQL Constraints and Indexing
- PRIMARY KEY and FOREIGN KEY constraints
- UNIQUE and CHECK constraints
- Indexes and their importance
Week 6: Advanced SQL Topics
- Views and stored procedures
- Triggers
- Understanding normalization and denormalization
- Best practices and optimization
Week 7: Data Security and Permissions
- User management and authentication
- Database and table permissions
- Securing SQL databases
Week 8: Introduction to NoSQL Databases
- What are NoSQL databases?
- Types of NoSQL databases (document, key-value, column-family, graph, etc.)
Week 9: Introduction to MongoDB
- What is MongoDB?
- Installation and setup
- Basic MongoDB commands
Week 10: Data Modeling in MongoDB
- Document structure and collections
- JSON-like documents
- Data types in MongoDB
Week 11: Querying and CRUD Operations in MongoDB
- Inserting, updating, and deleting documents
- Querying with the find() method
- Projection and filtering
- Sorting and limiting results
Week 12: Indexing and Aggregation in MongoDB
- Creating indexes for performance
- Aggregation framework
- Using $match, $group, and $project stages
Week 13: MongoDB Advanced Features
- Working with arrays and subdocuments
- Geospatial queries
- Text search
- Data consistency and transactions
Week 14: Security and Authentication in MongoDB
- User management and roles
- Authentication mechanisms
- Securing MongoDB
Week 15: Scaling and Sharding in MongoDB
- Horizontal scaling and sharding
- Configuring and managing sharded clusters
Week 16: Best Practices and Optimization
- Data modeling best practices
- Performance optimization
- Backup and recovery strategies