Skip to main content

CS 475 Syllabus

Cloud Computing

 

Course Description

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.

Prerequisite & Notes

  • CS 351.
  • 3 Credit hours.

Text

Martin Kleppmann, Design of Data-Intensive Applications, O’Reilly Media,  2017. Free access online through O’Reilly Media at Hunter Library.

Grading Procedure

Grading procedures and factors influencing course grade are left to the discretion of individual instructors, subject to general university policy.

Attendance Policy

Attendance policy is left to the discretion of individual instructors, subject to general university policy.

Course Outline

  • Introductory concepts
    • Cloud terminology
    • Types of cloud services
    • Overview of cloud infrastructure
    • Google Cloud Platform
  • Distributed Systems
    • Models of distributed systems
    • Clocks (Lamport, vector)
    • Broadcast protocols
    • Replication
    • Consensus
  • Database Systems
    • ACID transactions
    • Column-stores
    • Key-value stores
  • Review of major systems or in-depth topics (research and industry) 
Office of Web Services