- Instructor: Prof. Sang-Won Lee (swlee@skku.edu)
- TA
- Mijin An (meeeejin@skku.edu)
- Jong-Hyeok Park (akindo19@skku.edu)
Almost every important computer application must manage, update, and query databases using a database system(s) that best fits its workload. In this course, you will learn the three most popular database systems and their major workloads:
- MySQL and TPC-C (OLTP workload)
- RocksDB and YCSB (Key-value store workload)
- SQLite and AndroBench (Mobile workload)
From these three projects, you can learn how each database system works and understand the characteristics of popular workloads. You can also learn how to measure key (performance-related) metrics and analyze their impacts on performance.
Week # | Contents | TA |
---|---|---|
1 | Introduction to MySQL and TPC-C benchmark | Mijin An |
2 | Run TPC-C and analyze the results | Mijin An |
3 | Measure MySQL performance by varying the buffer size | Mijin An |
4 | Effect of page size on performance | Mijin An |
5 | Space Utilization of MySQL | Mijin An |
6 | RocksDB: An Introduction | Mijin An |
7 | RocksDB Compaction | Mijin An |
8 | Mid-term exam | |
9 | SST file size of RocksDB | Mijin An |
10 | Introduction to SQLite and AndroBench | Jong-Hyeok Park |
11 | SQLite API and Storage organization | Jong-Hyeok Park |
12 | Transaction Management in SQlite | Jong-Hyeok Park |
13 | Buffer Management in SQLite | Jong-Hyeok Park |
14 | Logging & Recovery in SQLite | Jong-Hyeok Park |
15 | Final exam |
If you have any questions about this course, please contact the teaching assistant: Mijin An (meeeejin@skku.edu) and Jong-Hyeok Park (akindo19@skku.edu).