Official course description:
Turning the unprecedented amounts of data being collected today into useful information is well beyond the computing power of a single general purpose CPU core. It is, therefore, crucial to know and understand the methods and tools that are able to parallelize various data analysis tasks in an efficient way on multicore CPUs and on a cluster of machines.
With this goal in mind, this course first gives an overview of the popular parallel data processing platforms. Then, it dives into parallelizing various machine learning tasks.
Formal prerequisitesThe course assumes that the students have taken an introductory course on data management or database systems.
Intended learning outcomes
After the course, the student should be able to:
- Select the right distributed data processing platform and the right subset of functionalities from such platforms for a given task.
- Apply machine learning and data mining in a parallel setting
- Effectively combine different types of data analysis tasks (machine learning, traditional SQL, …) in a query
- Reason about the performance of data processing systems in a parallel setting