This course provides an overview of the current database management systems in the cloud, and explains how they are different from traditional database systems. The goal is to get students familiar with some well-known implementations like NoSQL databases, Google BigTable, Google MegaStore, and Google Spanner etc., and more importantly, to help students make better decisions on the design tradeoffs when configuring/building their own database systems given a particular set of target applications (tenants) in mind.
Proper understanding of Java/OOP programming and data structure is required.
Wei-Hung Chang
*張維紘
Shih-Yu Teng
鄧仕榆
Zhong-Ming Guo
郭忠明
Yung-Chen Chiang,
江咏宸
This course is intended for senior undergraduate and junior graduate students who understand
If you have any feedback, feel free to contact: shwu@cs.nthu.edu.tw
Following provides links to some useful online resources. If this course starts your DB journey, don't stop here. Enroll yourself in advanced courses (shown below) to learn more.
For more course materials (such as assignments, score sheets, etc.) and online forum please refer to the GitLab.
Describes the API operations for the VanillaDB in detail.
Raghu Ramakrishnan et al., Database Management Systems, 3 Edition, McGraw-Hill, 2002, ISBN: 0072465638
Abraham Silberschatz et al, Database System Concepts, 6 Edition, McGraw-Hill, 2010, ISBN: 0073523321
Edward Sciore, Database Design and Implementation, Wiley, 2008, ISBN: 0471757160
M.Tamer Özsu, Principles of Distributed Database Systems, 3 Edition, Springer, 2011, ISBN: 1441988335
Rachid Guerraoui et al., Introduction to Reliable Distributed Programming, Springer, 2006, ISBN: 3540288457