AMS/CS 691-01: Algorithms and Big Data Systems

This is an advanced course on algorithms and their applications in real systems, such as Google search, Advertisement by Google/Facebook, and big data systems. This course will be open to both graduate students and senior undergraduate students. 


This course will be a combination of lectures, presentations from students, and course projects. The grade will be based on homework & mini-course projects (30%), research project (literature study, presentation, and proposal, 30%), exam during last class (30%), and class participation (10%). No textbook required.


The course will cover the following topics (subject to change):


o   Network architecture

o   The web graph and beyond

o   Giant component of the web

o   Heavy tail and small world

o   Mini-course project: web structure of Stony Brook University


o   How Google works

o   How search works

o   Data centers and MapReduce

o   Game theory basics

o   Auctions and sponsored search

o   Mini-course project: Rankmaniac


o   Algorithms with uncertainties

o   Online algorithm and competitive analysis

o   Learning and regret


o   Big data systems

o   Technology trends

o   Cluster computing system, e.g., Spark

o   Streaming systems

o   Storage and file system, e.g., Google File System

o   Resource allocation and scheduling

o   Geo-distributed analytics

o   Security and privacy

o   Low latency network