TECHNOLOGIES FOR ADVANCED PROGRAMMING

Academic Year 2020/2021 - 3° Year - Curriculum B
Teaching Staff: Salvatore NICOTRA
Credit Value: 9
Scientific field: INF/01 - Informatics
Taught classes: 36 hours
Exercise: 36 hours
Term / Semester:

Learning Objectives

The course will introduce a general overview of technologies useful to define end-to-end real time data analysis solutions.

Using automatic delivery systems (Docker) and orchestration (Kubernetes) the course will introduce “on the edge” technologies for data ingestion, pipelines, processing, analysis and visualization.

A practical approach using a class github repository and real problems will be analyzed on all aspects enforcing different soft skills including knowledge and understanding, decision, communication and learning skills.


Course Structure

The course will be structured as a laboratory where each topic will be presented and tested.

The class will also form a community to discuss about these technologies and applications.

Should teaching be carried out in mixed mode or remotely, it may be necessary to introduce changes with respect to previous statements, in line with the programme planned and outlined in the syllabus.

Learning assessment may also be carried out on line, should the conditions require it.


Detailed Course Content

  • Stream Processing
  • Digital Marketing
  • Introduction to Docker and Kubernetes
  • Data Ingestion (Apache Flume)
  • Data Streaming (Apache Kafka)
  • Data Processing (Spark)
  • Fundamentals of Machine Learning and Classification
  • Data Indexing and Query (Elastic Search)
  • Data Visualization (Grafana)

Textbook Information

1. Slides and link to manual of frameworks will be shared during the course

2. Github repository containing all example and source code.