Dipartimento di InformaticaUniversità degli Studi di Milano

Algorithms for massive datasets2024/25

MSc in Computer science · University of Milan · Lectures are in English · 6 credits · 48 hours

Archived edition: this page is kept for reference, and some materials or links may no longer be available. Current edition (2025-26) →
This page refers to the course Algorithms for massive dataset within the Master in Computer science. The module Algorihms for massive data, within the course «Algorithms for massive data, cloud and distributed computing» of the Master in Data science for economics is described in a specific page.

The course aims at describing the big data processing framework, both in terms of methodologies and technologies.

Expected results

Students:

  • will be able to use technologies for the distributed storage of datasets;
  • will know the MapReduce distributed processing framework and its leading extensions;
  • will know the principal algorithms used in order to deal with classical big data problems, as well as to implement them using a distributed processing framework;
  • will be able to choose appropriate methods for solving big data problems.

News

  1. Projects for the «Algorithms for massive datasets» course (Master in Computer Science)

    The description of the projects for the course «Algorithms for massive datasets» for the Master in «Computer Science» are available.

  2. Classroom change for the AMD lectures

    Starting April 1st, the tuesday lectures of the «Algorithms for massive datasets» course will take place in the «Laboratorio magistrale» classroom on the 3rd floor of the Computer Science Department. The wednesday lectures will take place in the same classroom, starting April 9th. The time schedule will remain unchanged.

  3. Classroom change for the AMD lectures

    Starting April 1st, the lectures of the course «Algorithms for massive datasets» will take place in the «Laboratorio magistrale» classroom on the 3rd floor of the Computer Science Department.

Earlier news (2)
  1. Schedule change for the Algorithms for massive datasets course

    The Algorithms for massive datasets classes of April, 29th and 30th are canceled. They will be catched up in May.

  2. Course pages for 2024/25

    The pages for the 2024/25 courses on Statistics and data analytics and Algorithms for massive datasets are available.

Course schedule

Lectures take place in presence, during the spring semester, at the "Città studi" educational sector. The schedule is as follows:

Day Hour Place
Tuesday 14:30 - 16:30 Lab. magistrale 3 piano 100 (Settore didattico)
Wednesday 13:30 - 15:30 Lab. magistrale 3 piano V10 (Didatteca)

Any change to the schedule will be announced in class and published in paragraph News of this page.

Office hours

By appointment, room 5015 of the Computer Science Department. It is possible contact the teacher by e-mail, taking care to read in advance the guide prepared by Prof. Sebastiano Vigna and clearly specifying in the message the course name and the academic year. In particular, students are encouraged to always use their academic address (i.e. based on the domain studenti.unimi.it) signing with name and student ID number and recalling that the response time may vary depending on the teacher commitments.

Course material

Lectures are based:

  • on the textbook Mining of Massive Datasets, written by A. Rajaraman and J. Ullman (marked by RU in the calendar of lectures), available as a free download in the authors' Web site and published in hardcopy by Cambridge University Press (ISBN:9781107015357);
  • on the notes and sample code published in the calendar of lectures.

Syllabus

The course explains the topics listed in the lecture calendar (available at the beginning of the course), covering the textbook contents as well as the contents of the remaining documents listed in Course material.

Prereqs

The course requires knowledge of the main topics of bachelor-level computer programming, calculus, probability, and statistics.

Lectures calendar

Lecture Date Topic Material
L01 25/02/2025 HDFS and map-reduce.
L02 26/02/2025 Map-reduce algorithms. Communication cost model.
  • RU 2.3, 2.5
L03 04/03/2025 Communication cost model. Link analysis.
  • RU 2.5, 5.1-5.2
L04 05/03/2025 Link analysis.
L05 11/03/2025 Finding similar items.
  • RU 3.1-3.4.
L06 12/03/2025 Finding similar items.
L07 18/03/2025 Frequent itemsets.
  • RU 6.1-6.2.
L08 19/03/2025 Spark.
L09 25/03/2025 Frequent itemsets.
  • RU 6.3-6.4.4
L10 26/03/2025 Mining data streams.
  • RU 4.1-4.3
L11 01/04/2025 Mining data streams.
  • RU 4.3-4.5.
L12 02/04/2025 Mining data streams. Clustering.
  • RU 4.5, 7.1-7.3.
L13 08/04/2025 Clustering.
L14 09/04/2025 noSQL data base: mongodb.
L15 15/04/2025 noSQL data base: mongodb. Regression.
  • RU 7.3-7.5.
L16 16/04/2025 Regression. Logistic regression.
L17 22/04/2025 Deep learning and TensorFlow.
L18 23/04/2025 Deep learning and TensorFlow.
L19 06/05/2025 Transformers and LLMs.
L20 07/05/2025 Dimensionality reduction.
L21 13/05/2025 Dimensionality reduction. Gradient boosting.
L22 14/05/2025 Workshop: Led by data: big data, cloud & AI in today's enterprise (Microsoft)
    L23 20/05/2025 Workshop: The role of data & analytics in consulting (Target Reply)
      L24 21/05/2025 Recommendation systems.

      Exam modalities

      The exam consists of a project and an oral test, both related to the topics covered in the course. The project requires to process one or more datasets through the critical application of the techniques described during the classes, and is described in a written report.

      The evaluation of the project, expressed with a pass/fail mark, considers the level of mastery of the topics and the clarity of the report. The oral test, which is accessed after a positive evaluation of the project, is based on the discussion of some topics covered in the course and on in-depth questions about the presented project. The evaluation of the oral test, expressed on a scale between 0 and 30, takes into account the level of mastery of the topics, clarity, and language skills.

      Students should sign up at the chosen examination session through UniMia, and send en email to prof. Malchiodi within the project deadline (see table below), containing the link to the project. Students will be contacted after the project has been checked. The table below shows a tentative date for the oral exams.

      Exam sessions

      Session Date
      June 18/06/2025 (project deadline: 12/06)
      July 02/07/2025 (project deadline: 26/06)
      September 19/09/2025 (project deadline: 12/09)
      January 21/01 (project deadline: 14/01)
      February 11/02 (project deadline: 04/02)
      March 23/03 (project deadline: 16/03)