Introduzione ai Big Data: problemi e sfide.
Archiviazione dei dati: file system distribuiti, data store NoSQL, database NewSQL, database a serie temporali. Casi di studio: GFS, HDFS, Dynamo, Bigtable, Cassandra, DynamoDB, Spanner, VoltDB. Laboratorio: HDFS, Redis, MongoDB, HBase, Neo4j, InfluxDB, CockroachDB.
Sistemi di acquisizione e ingestione dati: pub/sub, code di messaggi, sistemi di raccolta. Casi di studio: Kafka, Pulsar, Flume e NiFi.
Sistemi per l'elaborazione batch. Casi di studio: Hadoop, Spark, Spark SQL. Laboratorio: Spark, Spark SQL.
Sistemi per l'elaborazione di flussi di dati in tempo reale. Casi di studio: Storm, Flink. Laboratorio: Flink, Spark Streaming, Kafka Streams. Sfide nel data stream processing. Adattamento a runtime di sistemi di data stream processing.
Elaborazione batch e stream nel cloud.
Machine learning distribuito e federato. Casi di studio: Spark MLlib, TensorFlow distribuito.