CPSC 436C Cloud Computing for Data Science

CPSC 436C: CLOUD COMPUTING FOR DATA SCIENCE

Fall 2024

COURSE DESCRIPTION

This course is an introduction to cloud computing designed for the students who wish to use the cloud for data science applications. It covers the topics of how cloud computing can be used to support data science workflows, including data storage, processing, analysis, and visualization. It also includes security considerations for the entire pipeline. Overall, the course provides students with the skills and knowledge necessary to effectively use cloud computing for design, implementation, test, and deployment of data science applications.


LECTURES & CLASSROOMS

Lecture Time : Tuesday/Thursday - 11AM -12:30PM

Classroom: CEME-Floor 1-Room 1202

Office hours: Tuesday, 1PM - 3PM


TEXTBOOKS

The course will rely mainly on the following textbook.

  •  Learning Spark: Lightning-fast Data Analytics by: Jules Damji,                         
    Brooke Wenig, Tathagata Das 
TOPICS
  • Cloud service delivery models
  • Cloud storage systems
  • Batch processing
  • Stream processing
  • Cloud security



TA TEAM

Mahmoud Alkhatib, Email: makhatib@students.cs.ubc.ca 

Arman Moztarzadeh, Email: arman88@student.ubc.ca

Sopuruchi Chisom, Email: schisom@student.ubc.ca 

Chen ZHao, Email: laozc@student.ubc.ca  



SYLLABUS

Download the syllabus (v1.0)

 

HANDOUT

Lecture 1

Introduction to Data centres and Cloud [SLIDES]

Lecture 2

Cloud Computing Service Models, Serverless Computing [SLIDES] 

Lecture 3

 Cloud Computing Service Models, Containerization [SLIDES]

Lecture 4

Cloud Service Computing Models, Virtualization [SLIDES]

Lecture 5

Big Data [SLIDES]

Lecture 6

Data Stores [SLIDES1] , [SLIDES2] , [SLIDES3]

Lecture 7

Data Management Systems [SLIDES]

Lecture 8

Data Processing [SLIDES1][SLIDES2]

Lecture 9

Structured Data Processing [SLIDES]

Lecture 10

Distributed Machine Learning [SLIDES]

Lecture 11

Stream Processing [SLIDES1] , [SLIDES2]

Lecture 12

Graph Processing - Resource Management [SLIDES1][SLIDES2]

Lecture 13

Cloud Security- part1: [SLIDES]

Cloud Security- part2: [SLIDES]

Guest Speaker-Cloud Security [SLIDES]

Lecture 14

Guest Speaker-Advanced topics [SLIDES]

Assignments

  

 

 

 

Project

In teams of up to 5, students will design and implement a cloud-based data processing pipeline using one storage system, one computing engine, and one database to store or visualize the results. The project topic is student-chosen but must cover the entire pipeline, giving students the opportunity to apply the practical skills learned in the course to solve a real-world problem. Evaluation will focus on the quality of the architecture, cost-efficiency, performance, and security. The project will culminate in a final presentation at the end of the semester [Project Description Document]

 

Recourses