About the Course
Databases are the lifeblood of commerce, government, and science today. This course provides an introduction to database systems and their query languages. We will study several database systems, including MySQL, MongoDB, and Neo4j. We will also discuss "big data" systems. The focus of this course will be on data management in the cloud, focusing on modern cloud computing platforms, such as Google Cloud Platform
Week | Date | Topics | Lecture Notes | Class Activities | Assignment Due | Optional Readings |
---|---|---|---|---|---|---|
1 | 1/5 | Teacher Institute Day (No School) | ||||
1/7 | Course Introduction |
| ||||
2 | 1/10 | Data Models: The Relational Data Model | ||||
1/12 | Relational Database Design: Entity Relationship Diagrams | Group Activity 1 | ||||
1/14 | Relational Database Design: Logical Database Design | Group Activity 2 | ||||
3 | 1/17 | Martin Luther King Day (No School) | ||||
1/19 | Structure Query Language (SQL) 1: Data Definition Language | Group Activity 3 | ||||
1/21 | SQL 2: Data Manipulation Language (DML): Single Relation Queries Part 1 | Group Activity 4 | ||||
4 | 1/24 | Office Hours/Collaborative Learning | ||||
1/26 | SQL 3 DML: Single Relation Queries Part 2 | Group Activity 5 | ||||
1/28 | SQL 4 DML: Cross Product and Inner Join | Group Activity 6 | ||||
5 | 1/31 | Office Hours/Collaborative Learning | ||||
2/2 | SQL 5 DML: Natural and Inequality Joins |
| Group Activity 7 |
|
| |
2/4 | SQL 6 DML: Outer joins (Left, Right and Full) | Group Activity 8 | ||||
6 | 2/7 | Office Hours/Collaborative Learning | ||||
2/9 | SQL 7 DML: Subqueries | Group Activity 9 | ||||
2/11
| SQL 8 DML: Boolean Operators (IN, EXISTS, ANY, ALL) | Group Activity 10 | ||||
7 | 2/14 | Teacher Institute Day (No School) | ||||
2/16 | SQL 9 DML: Set Operations (U, ∩, -) | Group Activity 11 | ||||
2/18 | SQL 10 DML: Grouping and Aggregation | Group Activity 12 | ||||
8 | 2/21 | Presidents Day (No School) | ||||
2/23 | SQL 11 DML: String and Date Functions | Group Activity 13 | ||||
2/25 | SQL 13 Extended SQL: Triggers | Group Activity 14 | ||||
9 | 2/28 | Office Hours/Collaborative Learning | ||||
3/2 | SQL 13 Extended SQL: Stored Procedures | Group Activity 15 | ||||
3/4 | SQL 14: Indexing | Group Activity 16 | ||||
10 | 3/7 | Office Hours/Collaborative Learning | ||||
3/9 | Embedded SQL and the Web: Node.JS Part 1 | Group Activity 17 | ||||
3/11 | Embedded SQL and the Web: Node.JS Part 2 | Group Activity 18 | ||||
11 | 3/12-3/18 | Spring Break | ||||
12 | 3/21 | Office Hours/Collaborative Learning | ||||
3/23 | Overview of NoSQL MongoDB 1: Create, Update and Delete Collections | Group Activity 19 | ||||
3/25 | MongoDB 2: Querying with find( ): Basic Selection | |||||
13 | 3/28 | Office Hours/Collaborative Learning | ||||
3/30 | MongoDB 3: Querying with find(): Complex Selection and Projection | Group Activity 20 | ||||
4/1 | Parent/teacher conferences (no school) | |||||
14 | 4/4 | Office Hours/Collaborative Learning | ||||
4/6 | MongoDB 4: Querying Arrays and Embedded Documents | Group Activity 21 | ||||
4/8 | MongoDB 5: Cursor Methods | Group Activity 22 | ||||
15 | 4/11 | Office Hours/Collaborative Learning | ||||
MongoDB 6: Aggregation Part 1: Basic Aggregation | Group Activity 23 | |||||
4/15 | MongoDB 7: Aggregation Part 2: Unwind and Group Filtering | Group Activity 24 | ||||
16 | 4/18 | Teacher Institute Day (No School) | ||||
4/20 | MongoDB 8: Aggregation Part 3: Connecting documents with $lookup | Group Activity 25 |
| |||
4/22 | Graph Data Model:
| Group Activity 26 |
| |||
17 | 4/25 | Office Hours/Collaborative Learning |
| |||
4/27 | Neo4J 2:
| Group Activity 27 |
| |||
4/29 | Neo4J 3: Shortest Path | Group Activity 28 |
| |||
18 | 5/2 | Office Hours/Collaborative Learning |
| |||
5/4 | Neo4J 4: Aggregation |
| ||||
5/6 | Neo4J 4: Composing Statements with UNION and WITH |
| ||||
19 | 5/9 | Office Hours/Collaborative Learning |
| |||
5/11 | Google Cloud Platform Basics |
| ||||
5/13 | Project Demos |
| ||||
20 | 5/16 | Office Hours/Collaborative Learning |
| |||
5/18 | Project Demos |
| ||||
5/20 | Project Demos |
|