This course will include an in-depth, hands-on exposure to how applications are created and deployed in modern public cloud computing environments. The course will cover fundamental concepts in distributed systems including distributed clocks, consistency, fault tolerance, and consensus. The course will also cover fundamental concepts in modern database systems such as distributed ACID transactions, column-stores, and key-value stores.
Martin Kleppmann, Design of Data-Intensive Applications, O’Reilly Media, 2017. Free access online through O’Reilly Media at Hunter Library.
Grading procedures and factors influencing course grade are left to the discretion of individual instructors, subject to general university policy.
Attendance policy is left to the discretion of individual instructors, subject to general university policy.