The term “Big Data” describes datasets that are either too big or change too fast or both to be processed on a single computer.

Big Data Processing provides an introduction to systems and algorithms used to process Big Data. The main focus of the course is programming and engineering big data systems; initially, the course explores general programming primitives that span across big data systems and touches upon distributed systems, databases and filesystems. Then, the course examines in detail the implementation of data analysis algorithms in Spark and Flink, in the context of batch, streaming, and graph processing applications.