CLOUD COMPUTING AND BIG DATA

INF/01 - 6 CFU - 2° Semester

Teaching Staff

GIUSEPPE PAPPALARDO


Learning Objectives

  1. Knowledge and understanding (Conoscenza e capacità di comprensione). Students will acquire a precise knowledge and understanding of fundamental concepts in the field of cloud computing, chiefly through a guided exploration of the main technological solutions available from the public Cloud, focusing on resources and services oriented to data storage, analysis, visualization and machine learning.
  2. Applying knowledge and understanding (Capacità di applicare conoscenza e comprensione). Based on the operating knowledge acquired, students will develop an effective "toolset" of practical, application-oriented skills in leveraging the Cloud to cater for the typical needs of a data scientist: i.e. processing large datasets with a view to revealing meaningful patterns and relationships. Cloud implementations of state-of-the-art tools and frameworks like, e.g., MapReduce/Hadoop or TensorFlow, will be employed
  3. Making judgements (Autonomia di giudizio). The student will develop the ability to choose the suitable Cloud-based resource for the Data Science scenario of interest, properly estimating the ensuing costs and performance gains, as well as consciously assessing the tradeoffs involved.
  4. Communication skills (Abilità comunicative). The student will acquire the communication skills required to express and discuss, at a rigorous technical level, the benefits and (mostly cost-related) downsides of the Cloud for Data Science applications. In addition, the student will gain the ability, for presentation purposes, to effectively highlight the features of very large datasets by means of cloud-based visualization services.
  5. Learning skills (Capacità di apprendimento). Students will become capable of profitably consulting technical documentation concerning Data Science-oriented Cloud services, in order to concretely put them to effective use

Course Structure

Lectures will mainly consist in live sessions dealing with using the Cloud for the purposes of data analysis and machine learning. These sessions will be carried out by the lecturer and replicated, with suggested variations, by the students, on available equipment. Laboratory practice aims at enabling students to refine their understanding of the technologies presented and acquire autonomous operating skills. As a framework and guidance, lecture notes will be displayed during lectures and shared with students. Notes will provide a precise record of the material presented, as well as pointers to the required reference technical documentation.

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.



Detailed Course Content

This course aims at enabling the data scientist to put into practice on the public Cloud principles and methodologies learnt in courses concerned with data storage, processing, analysis, and machine learning. Indeed, in these areas, present day industrial and enterprise applications typically require storage volumes, computing power and bandwidth at a scale impossible or (even for large organizations) impractical to attain with proprietary equipment. In realistic Data Science scenarios, it is therefore hardly avoidable for the data scientist to resort to the Cloud, i.e. storage and computing services offered by third-party providers over the public Internet, with a pay-per-use cost model.

In a nutshell, quoting reference [2], we may say that: “The Cloud turbocharges Data Science” .

Google Cloud is the platform of choice, for its ease of use and free availability to students.

SQL on Google Cloud and BigQuery: performing structured queries on BigQuery and Cloud SQL. Importing data from CSV files.

Data acquisition into Google Cloud: downloading selected data from a large public data set over the internet, and processing it with Google App Engine.

Google Cloud Dataflow: processing a real-time, real-world data set, and storing the results on the cloud. Case study: real-time geospatial data.

Visualization with Google Data Studio: Visualizing data stored in Google Cloud SQL. Visualizing Real Time Geospatial Data.

Google Datalab for Data Analysis: loading text data into Google BigQuery; rapid exploratory data analysis with Google Cloud Datalab notebooks.

Google Cloud AI Platform: using Google AI Platform to perform queries and present the data.

Evaluating a Data Model: partitioning a data set into a training set and a test set; evaluating various predictive models.

Machine Learning with Spark on Google Cloud Dataproc. Implementing logistic regression through machine learning on Apache Spark running on a Google Cloud Dataproc. Developing a model from a multivariable dataset.

Machine Learning with TensorFlow: developing and evaluating prediction models.

MapReduce e Hadoop on Google Cloud: exploiting parallelism and machine clusters.



Textbook Information

  1. Google Inc. Student Training: Kick-Start Your Cloud Trainings. https://edu.google.com/programs/students/training.
  2. Lakshmanan, V. Data Science on the Google Cloud Platform. O'Reilly Media, Inc. 2018.
  3. Lecture notes, to be made available through the Studium portal.



Open in PDF format Versione in italiano