Skip to content
This repository has been archived by the owner on Aug 3, 2022. It is now read-only.

meeeejin/SWE3033-F2021

Repository files navigation

SWE3033: Database Project (Fall 2021)

Introduction

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.

Schedule

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

Contact

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).