{"id":7139,"date":"2023-09-27T18:28:48","date_gmt":"2023-09-27T16:28:48","guid":{"rendered":"https:\/\/dbdmg.polito.it\/dbdmg_web\/?p=7139"},"modified":"2024-02-19T12:24:57","modified_gmt":"2024-02-19T11:24:57","slug":"big-data-architectures-and-data-analytics-2023-2024","status":"publish","type":"post","link":"https:\/\/dbdmg.polito.it\/dbdmg_web\/2023\/big-data-architectures-and-data-analytics-2023-2024\/","title":{"rendered":"Big Data: Architectures and Data Analytics (2023\/2024)"},"content":{"rendered":"\n<h2 class=\" wp-block-heading eplus-wrapper\" id=\"general-information\">General Information<\/h2>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>SSD<\/strong>: ING-INF\/05<\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>CFU<\/strong>: 6<\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Professor<\/strong>: Daniele Apiletti<\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Teaching Assistant<\/strong>: Simone Monaco<\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Q&amp;A teaching&nbsp;<strong>assistance&nbsp;<\/strong>on Piazza:&nbsp;<a href=\"https:\/\/piazza.com\/polito.it\/fall2023\/01qydov\">piazza.com\/polito.it\/fall2023\/01qydov<\/a><\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\" wp-block-spacer eplus-wrapper\"><\/div>\n\n\n\n<h2 class=\" wp-block-heading eplus-wrapper\" id=\"announcements\">Announcements<\/h2>\n\n\n<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-79dc05\">\n<li class=\" eplus-wrapper\"><strong>20-09-23:<\/strong> The first lecture is scheduled for October 4, 2023, at 11:30 in Classroom 3P<\/li>\n\n\n\n<li class=\" eplus-wrapper\"><strong>27-09-23:<\/strong> No lab activities during the first weeks of the course. The lab will start in the upcoming weeks.<\/li>\n\n\n\n<li class=\" eplus-wrapper\"><strong>27-09-23:<\/strong> We are using Piazza for class discussion. We invite all students to\u00a0<a href=\"https:\/\/piazza.com\/polito.it\/fall2023\/01qydov\">join the course Piazza<\/a>. Piazza is highly catered to getting help fast and efficiently from classmates and teachers. Rather than emailing questions to the teaching staff, students are invited to post their questions on Piazza.<\/li>\n<\/ul>\n\n\n<hr class=\" wp-block-separator has-css-opacity eplus-wrapper\"\/>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\" wp-block-spacer eplus-wrapper\"><\/div>\n\n\n\n<h2 class=\" wp-block-heading eplus-wrapper\" id=\"teaching-material\">Teaching Material<\/h2>\n\n\n\n<div class=\"wp-block-ep-tabs ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948\"><div class=\"ep_tabs_root ep_tabs_top\" data-autoplay=\"false\" data-delay=\"1000\"><div class=\"ep_tabs_header \"><a href=\"#ep_tab_wrapper__0f8466c3-8dd1-4408-b84d-dd8d8033c5db\" class=\"ep_label_main\"><span class=\"ep_label\">Introduction<\/span><\/a><a href=\"#ep_tab_wrapper__b15d50e5-ec67-4c20-bd66-3c7f74c5ba32\" class=\"ep_label_main\"><span class=\"ep_label\">Hadoop and MapReduce<\/span><\/a><a href=\"#ep_tab_wrapper__debbe526-9a8c-4bcf-ac76-fe7fd321197c\" class=\"ep_label_main\"><span class=\"ep_label\">Spark<\/span><\/a><\/div><div class=\"ep_tabs_wrapper undefined\">\n<div id=\"ep_tab_wrapper__0f8466c3-8dd1-4408-b84d-dd8d8033c5db\" class=\"ep_tab_item_wrapper ep_tab_wrapper__0f8466c3-8dd1-4408-b84d-dd8d8033c5db undefined\"><ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-228a12\">\n<li class=\" eplus-wrapper\">Introduction to the course content and exam rules (<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2023\/10\/00_Intro_BigData_23-24_Daniele.pdf\">slides<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Introduction to Big Data (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/01_Intro_BigData_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Big Data Architectures (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/02_Architectures_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/li>\n<\/ul><\/div>\n\n\n\n<div id=\"ep_tab_wrapper__b15d50e5-ec67-4c20-bd66-3c7f74c5ba32\" class=\"ep_tab_item_wrapper ep_tab_wrapper__b15d50e5-ec67-4c20-bd66-3c7f74c5ba32 undefined\"><ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-1ee64a\">\n<li class=\" eplus-wrapper\">Introduction to Apache Hadoop and the MapReduce programming paradigm (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/03_Intro_HadoopAndMapReduce_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-c115c6\">\n<li class=\" eplus-wrapper\">Interaction with HDFS and Hadoop using the command line (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/03b_HDFS_Hadoop_CommandLine_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/li>\n<\/ul><\/li>\n\n\n\n<li class=\" eplus-wrapper\">Hadoop implementation of MapReduce (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/04_HadoopImplementationOfMapReduce_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-a1d8ba\">\n<li class=\" eplus-wrapper\">BigData@Polito environment + Jupyter \u2013 How to submit MapReduce jobs on BigData@Polito (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/04b_ClusterJupyter_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/li>\n<\/ul><\/li>\n\n\n\n<li class=\" eplus-wrapper\">MapReduce and Hadoop \u2013 Advanced Topics: Multiple inputs, Multiple outputs, Distributed cache (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/06_AdvancedTopicsMapReduce_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">MapReduce \u2013 Design patterns \u2013 Part 1 (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/05_MapReduce_Patterns_Part1_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">MapReduce \u2013 Design patterns \u2013 Part 2 (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/07_MapReduce_Patterns_Part2_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">MapReduce \u2013 Relational Algebra\/SQL operators (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/08_SQLOperators_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/li>\n<\/ul><\/div>\n\n\n\n<div id=\"ep_tab_wrapper__debbe526-9a8c-4bcf-ac76-fe7fd321197c\" class=\"ep_tab_item_wrapper ep_tab_wrapper__debbe526-9a8c-4bcf-ac76-fe7fd321197c undefined\"><ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-4f5816\">\n<li class=\" eplus-wrapper\">Introduction to Apache Spark (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/10_SparkIntroduction_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-e2ac63\">\n<li class=\" eplus-wrapper\">How to submit Spark applications (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/10b_SparkSubmit_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/li>\n<\/ul><\/li>\n\n\n\n<li class=\" eplus-wrapper\">RDD-based programs RDDs<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-2be128\">\n<li class=\" eplus-wrapper\">Creation, basic transformations and actions (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/11_SparkRDD_Basic_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Key-value pair RDDs: transformations and actions on PairRDDs (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/12_SparkRDD_PairRDD_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">DoubleRDDs (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/13_SparkRDD_DoubleRDD_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Advanced Topics: Cache, accumulators, broadcast variables (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/14_SparkRDD_AdvancedTopics_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/li>\n<\/ul><\/li>\n\n\n\n<li class=\" eplus-wrapper\">Spark SQL, Datasets and DataFrames (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/15_SparkSQL_Datasets_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>) <ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-2e80b6\">\n<li class=\" eplus-wrapper\">Spark SQL &#8211; Join examples (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/ExamplesSparkSQLJoins.zip\" target=\"_blank\">ExamplesSparkSQLJoins.zip<\/a>)<\/li>\n<\/ul><\/li>\n\n\n\n<li class=\" eplus-wrapper\">Data Mining<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-a9d258\">\n<li class=\" eplus-wrapper\">Recap data mining tasks (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/DMintro.pdf\" target=\"_blank\">slides<\/a>) &#8211; From the &#8220;Data Science And Database Technology&#8221; course<\/li>\n<\/ul><\/li>\n\n\n\n<li class=\" eplus-wrapper\">Spark MLlib<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-d7400a\">\n<li class=\" eplus-wrapper\">Introduction and Classification of structured data (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/16_SparkMLlib_Part1_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-c9b6d3\">\n<li class=\" eplus-wrapper\">Logistic Regression example code (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/MLlibPipelineLogisticRegression.zip\" target=\"_blank\">zip<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Decision Trees example code (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/MLlibPipelineDecisionTree.zip\" target=\"_blank\">zip<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Decision Trees and Categorical class label example code (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/MLlibPipelineDecisionTreeCategoricalLabel.zip\" target=\"_blank\">zip<\/a>)<\/li>\n<\/ul><\/li>\n\n\n\n<li class=\" eplus-wrapper\">Classification of textual data (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/17_SparkMLlib_Part2_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>, <a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/MLlibPipelineText.zip\" target=\"_blank\">example code zip<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Classification and Parameter tuning (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/18_SparkMLlib_Part3_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>, <a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/MLlibPipelineLogisticRegressionCrossValidation.zip\" target=\"_blank\">example code zip<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Clustering of structured data (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/19_SparkMLlib_Part4_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>, <a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/MLlibPipelineClustering.zip\" target=\"_blank\">example code zip<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Itemset and Association rule mining (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/20_SparkMLlib_Part5_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>, <a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/MLlibFPGrowth.zip\" target=\"_blank\">example code zip<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Linear regression (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/21_SparkMLlib_Part6_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>, <a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/MLlibPipelineLinearRegression.zip\" target=\"_blank\">example code zip<\/a>)<\/li>\n<\/ul><\/li>\n\n\n\n<li class=\" eplus-wrapper\">Spark Streaming (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/22_SparkStreaming_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-682303\">\n<li class=\" eplus-wrapper\">Examples: Word Count \u2013 Streaming versions (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/ExamplesSparkStreaming.zip\" target=\"_blank\">zip<\/a>)<\/li>\n<\/ul><\/li>\n<\/ul><\/div>\n<\/div><style>.eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_tabs_header {\n                \n                flex-basis: 15% ;\n            }.eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_tabs_root {\n                \n                gap: 0px ;\n            }.eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_label {\n                \n                color: #1e1e1e;\nfont-size: 17px ;\n            }\n            \n\n        \n\n         \n\n        \n        \n      .eplus_styles  .ep_label_main:hover .ep_label {\n        color: #ffffff;\n      }.eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_sub_label {\n                \n                color: #1e1e1e;\nfont-size: 15px ;\n            }\n            \n\n        \n\n         \n\n        \n        \n      .eplus_styles  .ep_label_main:hover .ep_sub_label {\n        color: #ffffff;\n      }.eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_active_tab .ep_label {\n                \n                color: #ffffff;\n            }.eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_active_tab .ep_sub_label {\n                \n                color: #ffffff;\n            }.eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_label_main {\n                \n                background-image: linear-gradient(#f0f0f0, #f0f0f0);\n            }\n            \n\n        \n\n         \n\n        \n            .eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_label_main:hover {\n                background-image: linear-gradient(#007cba, #007cba);\n            }.eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_active_tab {\n                \n                background-image: linear-gradient(#007cba, #007cba);\n            }.eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_tab_item_wrapper {\n                \n                background-image: linear-gradient(#f0f0f0, #f0f0f0);\n            }.eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_label_main {\n                \n                padding-top: 15px ;\npadding-right: 15px ;\npadding-bottom: 15px ;\npadding-left: 15px ;\n            }.eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_tab_item_wrapper {\n                \n                padding-top: 15px ;\npadding-right: 15px ;\npadding-bottom: 15px ;\npadding-left: 15px ;\n            }.eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_tabs_header {\n                \n                gap: 5px ;\n            }.eplus_styles .ep_tabs_wrapper__0af6dd7b-52ad-4dd5-bb4d-ac0f20505948 .ep_tabs_header {\n                \n                justify-content: flex-start;\n            }<\/style><\/div><\/div>\n\n\n\n<h2 class=\" wp-block-heading eplus-wrapper\">Exercises<\/h2>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\"><mark style=\"background-color:rgba(0, 0, 0, 0);color:#fc0303\" class=\"has-inline-color\">If you use your PC to write and run your code, import the projects based on Maven (those projects can be run locally).<br>If you use the PC available in the LAB, import the projects with libraries (those projects cannot be run locally but only on the cluster exporting the project&#8217;s jar file). Refer to the <a href=\"#laboratory-material\" data-type=\"internal\" data-id=\"#laboratory-material\">Laboratory Material<\/a> section for more information.<\/mark><\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\"><\/p>\n\n\n\n<div class=\"wp-block-ep-tabs ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837\"><div class=\"ep_tabs_root ep_tabs_top\" data-autoplay=\"false\" data-delay=\"1000\"><div class=\"ep_tabs_header \"><a href=\"#ep_tab_wrapper__a19261c9-0ebe-4c82-b0e5-5626694358a9\" class=\"ep_label_main\"><span class=\"ep_label\">MapReduce<\/span><\/a><a href=\"#ep_tab_wrapper__1de3583b-cfbf-4ff8-8eb0-6391007d493e\" class=\"ep_label_main\"><span class=\"ep_label\">Spark<\/span><\/a><\/div><div class=\"ep_tabs_wrapper undefined\">\n<div id=\"ep_tab_wrapper__a19261c9-0ebe-4c82-b0e5-5626694358a9\" class=\"ep_tab_item_wrapper ep_tab_wrapper__a19261c9-0ebe-4c82-b0e5-5626694358a9 undefined\"><ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-c65f6e\">\n<li class=\" eplus-wrapper\"><strong>MapReduce exercises (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/01_MapReduce_Exercises_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/strong><ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-41418a\">\n<li class=\" eplus-wrapper\">Solutions of Exercises 1-29 (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/SolutionsExMapReduce.zip\" target=\"_blank\" rel=\"noreferrer noopener\">SolutionsExMapReduce.zip<\/a>)<\/li>\n<\/ul><\/li>\n<\/ul><\/div>\n\n\n\n<div id=\"ep_tab_wrapper__1de3583b-cfbf-4ff8-8eb0-6391007d493e\" class=\"ep_tab_item_wrapper ep_tab_wrapper__1de3583b-cfbf-4ff8-8eb0-6391007d493e undefined\"><ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-7b05fb\">\n<li class=\" eplus-wrapper\"><strong>Spark RDD-, Dataset-, DataFrame-based exercises (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/02_Spark_Exercises_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/strong><ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-b3dd1d\">\n<li class=\" eplus-wrapper\">Example data \u2013 One folder with (few) data for each exercise (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/ExampleDataSpark.zip\" target=\"_blank\" rel=\"noreferrer noopener\">ExampleDataSpark.zip<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Solutions of Exercises 30-50 (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/SolutionsSpark30-50.zip\" target=\"_blank\" rel=\"noreferrer noopener\">SolutionsExSpark30-50.zip<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Solutions of Exercises from 32 to 38 and 44 based on Spark SQL (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/SolSparkSQL32-38_44.zip\" target=\"_blank\" rel=\"noreferrer noopener\">SolSparkSQL32-38_44.zip<\/a>)<\/li>\n<\/ul><\/li>\n\n\n\n<li class=\" eplus-wrapper\"><strong>Spark streaming exercises (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/03_SparkStreaming_Exercises_BigData_NewStyle.pdf\" target=\"_blank\">slides<\/a>)<\/strong><ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-90fdc6\">\n<li class=\" eplus-wrapper\">Solutions of Exercises 51-53 (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/SolutionsSparkStreaming51-53.zip\">SolutionsSparkStreaming51_53.zip<\/a>)<\/li>\n<\/ul><\/li>\n<\/ul><\/div>\n<\/div><style>.eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_tabs_header {\n                \n                flex-basis: 15% ;\n            }.eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_tabs_root {\n                \n                gap: 0px ;\n            }.eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_label {\n                \n                color: #1e1e1e;\nfont-size: 17px ;\n            }\n            \n\n        \n\n         \n\n        \n        \n      .eplus_styles  .ep_label_main:hover .ep_label {\n        color: #ffffff;\n      }.eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_sub_label {\n                \n                color: #1e1e1e;\nfont-size: 15px ;\n            }\n            \n\n        \n\n         \n\n        \n        \n      .eplus_styles  .ep_label_main:hover .ep_sub_label {\n        color: #ffffff;\n      }.eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_active_tab .ep_label {\n                \n                color: #ffffff;\n            }.eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_active_tab .ep_sub_label {\n                \n                color: #ffffff;\n            }.eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_label_main {\n                \n                background-image: linear-gradient(#f0f0f0, #f0f0f0);\n            }\n            \n\n        \n\n         \n\n        \n            .eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_label_main:hover {\n                background-image: linear-gradient(#007cba, #007cba);\n            }.eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_active_tab {\n                \n                background-image: linear-gradient(#007cba, #007cba);\n            }.eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_tab_item_wrapper {\n                \n                background-image: linear-gradient(#f0f0f0, #f0f0f0);\n            }.eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_label_main {\n                \n                padding-top: 15px ;\npadding-right: 15px ;\npadding-bottom: 15px ;\npadding-left: 15px ;\n            }.eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_tab_item_wrapper {\n                \n                padding-top: 15px ;\npadding-right: 15px ;\npadding-bottom: 15px ;\npadding-left: 15px ;\n            }.eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_tabs_header {\n                \n                gap: 5px ;\n            }.eplus_styles .ep_tabs_wrapper__9f02b4bc-c894-47e4-8374-57e882f44837 .ep_tabs_header {\n                \n                justify-content: flex-start;\n            }<\/style><\/div><\/div>\n\n\n\n\n\n<h2 class=\" wp-block-heading eplus-wrapper\" id=\"laboratory-material\">Laboratory Material<\/h2>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\"><span><mark style=\"font-weight: bold; background-color: rgba(0, 0, 0, 0); color: rgb(253, 2, 2);\" class=\"has-inline-color\">The first lab is scheduled for Friday, October 20<\/mark><\/span><\/p>\n\n\n\n<figure class=\" wp-block-table eplus-wrapper\"><table><tbody><tr><td><strong>Student Group<\/strong><\/td><td><strong>Time<\/strong><\/td><td><strong>Room<\/strong><\/td><\/tr><tr><td>Team A: Students from A to L<\/td><td>Fri, 16:00-17:30<\/td><td>Room 3D<\/td><\/tr><tr><td>Team B: Students from M to Z<\/td><td>Fri, 17:30-19:00<\/td><td>Room 3D<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">We suggest the use of Visual Studio Code for the lab sessions. For the configuration instructions, refer to this \ud83d\udcd8<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2023\/10\/BigData_labs-VSCode_guide.pdf\">guide<\/a>.<\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Windows users only:<\/strong> You must configure the <strong>winutils<\/strong> (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/winutils.zip\" target=\"_blank\" rel=\"noreferrer noopener\">winutils.zip<\/a>) and set up some environmental variables. Follow this \ud83d\udcd8<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/ConfigureWindowsEnviroment.pdf\">extra guide<\/a> for the complete configuration. <\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">All the Laboratory materials are available in multiple versions. The version with libraries is <strong>the only one<\/strong> you can use on the Lab computers (without running locally). All the other versions are Maven projects, so you can use them locally on your laptop, depending on your OS and the cluster. The legend for the buttons is the following:<\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">\ud83d\udcda<strong>lib:<\/strong> with libraries, \ud83d\udc27<strong>mavU:<\/strong>  Maven project for Linux\/MacOS, \ud83e\ude9f<strong>mavW:<\/strong> Maven project for Windows (Hadoop projects only)<\/p>\n\n\n<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-cd6060\">\n<li class=\" eplus-wrapper\">Basic project for <strong>MapReduce<\/strong> applications (\ud83d\udcda<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2023\/10\/Lab2_Skeleton_with_libraries_vscode.zip\"><strong>lib<\/strong><\/a><\/strong>, \ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/MapReduceBasicProject.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>, \ud83e\ude9f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/09\/MapReduceBasicProjectWindows.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavW<\/strong><\/a>) <\/li>\n<\/ul>\n\n\n<div class=\"wp-block-ep-tabs ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7\"><div class=\"ep_tabs_root ep_tabs_top\" data-autoplay=\"false\" data-delay=\"1000\"><div class=\"ep_tabs_header \"><a href=\"#ep_tab_wrapper__11932b2e-b509-40f7-bd67-371eb4b49eb8\" class=\"ep_label_main\"><span class=\"ep_label\">Lab 1<\/span><\/a><a href=\"#ep_tab_wrapper__aa04e4d0-50b7-4dbf-ac2d-5587c48ca1fa\" class=\"ep_label_main\"><span class=\"ep_label\">Lab 2<\/span><\/a><a href=\"#ep_tab_wrapper__46c98d96-240e-468a-b4e1-798986d541ff\" class=\"ep_label_main\"><span class=\"ep_label\">Lab 3<\/span><\/a><a href=\"#ep_tab_wrapper__c6621471-3040-4d54-a1e7-fb1c5f43681b\" class=\"ep_label_main\"><span class=\"ep_label\">Lab 4<\/span><\/a><a href=\"#ep_tab_wrapper__d4b234a3-8d23-4487-b12c-520891c4ba85\" class=\"ep_label_main\"><span class=\"ep_label\">Lab 5<\/span><\/a><a href=\"#ep_tab_wrapper__59acf96b-4d76-4480-a580-42d4baad23d2\" class=\"ep_label_main\"><span class=\"ep_label\">Lab 6<\/span><\/a><a href=\"#ep_tab_wrapper__6dae1aac-2a86-4e78-9955-863c783a591f\" class=\"ep_label_main\"><span class=\"ep_label\">Lab 7<\/span><\/a><a href=\"#ep_tab_wrapper__d04c279e-a621-4d43-9275-a97aa88678a2\" class=\"ep_label_main\"><span class=\"ep_label\">Lab 8<\/span><\/a><a href=\"#ep_tab_wrapper__5b8b8671-270b-4b00-b22b-bb21d02776a9\" class=\"ep_label_main\"><span class=\"ep_label\">Lab 9<\/span><\/a><a href=\"#ep_tab_wrapper__a4908b0c-c26f-4d79-b62e-8d1ed38e10c2\" class=\"ep_label_main\"><span class=\"ep_label\">Lab 10<\/span><\/a><\/div><div class=\"ep_tabs_wrapper undefined\">\n<div id=\"ep_tab_wrapper__11932b2e-b509-40f7-bd67-371eb4b49eb8\" class=\"ep_tab_item_wrapper ep_tab_wrapper__11932b2e-b509-40f7-bd67-371eb4b49eb8 undefined\">\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Lab1: Hadoop and MapReduce<\/strong><\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Problem specification (\ud83d\udcc4<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2023\/04\/Lab1_BigData_vscode.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">pdf<\/a>)<br>Basic project and small example data set \ud83d\udcda<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2023\/04\/Lab1_BigData_with_libraries_vscode.zip\"><strong>lib<\/strong><\/a><\/strong>, \ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab1.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>, \ud83e\ude9f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab1Windows.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavW<\/strong><\/a>)<br>Bigger data set: finefoods_text.txt (<a href=\"https:\/\/www.dropbox.com\/s\/fswdiblx15mhmyo\/finefoods_text.zip?dl=0\" target=\"_blank\" rel=\"noreferrer noopener\">\ud83d\uddc3\ufe0fzip<\/a>)<\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Solution (Bonus track \ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab1_SolBonusMvn.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>)<\/p>\n<\/div>\n\n\n\n<div id=\"ep_tab_wrapper__aa04e4d0-50b7-4dbf-ac2d-5587c48ca1fa\" class=\"ep_tab_item_wrapper ep_tab_wrapper__aa04e4d0-50b7-4dbf-ac2d-5587c48ca1fa undefined\">\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Lab2: Filter with Hadoop MapReduce<\/strong><\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Problem specification (\ud83d\udcc4<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab2_2021.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">pdf<\/a>)<br>Skeleton Project (\ud83d\udcda<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2023\/10\/Lab2_Skeleton_with_libraries_vscode.zip\"><strong>lib<\/strong><\/a><\/strong>, \ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab2_Skeleton.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>, \ud83e\ude9f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab2Windows_Skeleton.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavW<\/strong><\/a>)<br>Outputs of the first lab (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/OutputFolderLab1.zip\" target=\"_blank\" rel=\"noreferrer noopener\">OutLab1.zip<\/a>, \ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/OutputFolderLab1BonusTrack.zip\" target=\"_blank\" rel=\"noreferrer noopener\">OutLab1Bonus.zip<\/a>)<\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Solution (\ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab2_Sol.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>, <strong>bonus<\/strong> \ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab2_SolBonus.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>)<\/p>\n<\/div>\n\n\n\n<div id=\"ep_tab_wrapper__46c98d96-240e-468a-b4e1-798986d541ff\" class=\"ep_tab_item_wrapper ep_tab_wrapper__46c98d96-240e-468a-b4e1-798986d541ff undefined\">\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Lab3: Frequently bought\/reviewed together application with Hadoop MapReduce<\/strong><\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Problem specification (\ud83d\udcc4<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab3_2021.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">pdf<\/a>)<br>Skeleton Project (\ud83d\udcda<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2023\/10\/Lab3_Skeleton_with_libraries_vscode.zip\"><strong>lib<\/strong><\/a><\/strong>, \ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab3_Skeleton.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>, \ud83e\ude9f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab3Windows_Skeleton.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavW<\/strong><\/a>)<br><span style=\"text-indent: 0em;\">Sample file (<\/span>\ud83d\udcc5<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/AmazonTransposedDataset_Sample.txt\" target=\"_blank\" rel=\"noreferrer noopener\">AmazonTransposedDataset_Sample.txt<\/a><span style=\"text-indent: 0em;\">)<\/span><\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Solution (\ud83d\udc27<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab3_Sol.zip\" target=\"_blank\" rel=\"noreferrer noopener\">mavU<\/a><\/strong>, <a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab3_DraftSolution_BigData_NewStyle.pdf\">Comments<\/a>)<\/p>\n<\/div>\n\n\n\n<div id=\"ep_tab_wrapper__c6621471-3040-4d54-a1e7-fb1c5f43681b\" class=\"ep_tab_item_wrapper ep_tab_wrapper__c6621471-3040-4d54-a1e7-fb1c5f43681b undefined\">\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Lab4: Normalized ratings for product recommendations with Hadoop MapReduce<\/strong><\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Problem specification (\ud83d\udcc4<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab4_2021.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">pdf<\/a>)<br>Skeleton Project (\ud83d\udcda<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2023\/10\/Lab4_Skeleton_with_libraries_vscode.zip\"><strong>lib<\/strong><\/a><\/strong>, \ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab4_Skeleton.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>, \ud83e\ude9f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/Lab4Windows_Skeleton.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavW<\/strong><\/a>)<br><span style=\"text-indent: 0em;\">Sample file (<\/span>\ud83d\udcc5<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/10\/ReviewsSample.csv\" target=\"_blank\" rel=\"noreferrer noopener\">ReviewsSample.csv<\/a><span style=\"text-indent: 0em;\">)<\/span><\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Solution (\ud83d\udc27<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab4_Sol.zip\" target=\"_blank\" rel=\"noreferrer noopener\">mavU<\/a><\/strong>)<\/p>\n<\/div>\n\n\n\n<div id=\"ep_tab_wrapper__d4b234a3-8d23-4487-b12c-520891c4ba85\" class=\"ep_tab_item_wrapper ep_tab_wrapper__d4b234a3-8d23-4487-b12c-520891c4ba85 undefined\">\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Lab5: Filter data and compute basic statistics with Apache Spark<\/strong><br><em><strong>Note: <\/strong>Windows users can download <strong>[icon name=&#8221;uniregistry&#8221; prefix=&#8221;fab&#8221;]mavU<\/strong> for all Spark projects.<\/em><\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Problem specification (\ud83d\udcc4<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab5_2021.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">pdf<\/a>)<br>Skeleton Project (\ud83d\udcda<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab5_Skeleton_with_libraries.zip\"><strong>lib<\/strong><\/a><\/strong>, \ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab5BigData_Skeleton.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>)<br><span style=\"text-indent: 0em;\">Sample file (<\/span>\ud83d\udcc5<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/SampleLocalFile.csv\" target=\"_blank\" rel=\"noreferrer noopener\">SampleLocalFile.csv<\/a><span style=\"text-indent: 0em;\">)<\/span><\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Solution (\ud83d\udc27<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab5BigData_Sol.zip\" target=\"_blank\" rel=\"noreferrer noopener\">mavU<\/a><\/strong>)<\/p>\n<\/div>\n\n\n\n<div id=\"ep_tab_wrapper__59acf96b-4d76-4480-a580-42d4baad23d2\" class=\"ep_tab_item_wrapper ep_tab_wrapper__59acf96b-4d76-4480-a580-42d4baad23d2 undefined\">\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Lab6: Frequently bought\/reviewed together application with Apache Spark<\/strong><\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Problem specification (\ud83d\udcc4<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab6_2023.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">pdf<\/a>)<br>Skeleton Project (\ud83d\udcda<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab6_Skeleton_with_libraries.zip\"><strong>lib<\/strong><\/a><\/strong>, \ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab6BigData_Skeleton.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>)<br><span style=\"text-indent: 0em;\">Sample data (<\/span>\ud83d\udcc5<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/ReviewsSample.csv\" target=\"_blank\" rel=\"noreferrer noopener\">ReviewsSample.csv<\/a><span style=\"text-indent: 0em;\">)<\/span><\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Expected output \u2013 Task 1 (expected output if the input is the HDFS file Reviews.csv) (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/outputTask1Lab6.zip\" target=\"_blank\" rel=\"noreferrer noopener\">outputTask1Lab6.zip<\/a>)<br>Solution (\ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab6BigData_Sol.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>)<\/p>\n<\/div>\n\n\n\n<div id=\"ep_tab_wrapper__6dae1aac-2a86-4e78-9955-863c783a591f\" class=\"ep_tab_item_wrapper ep_tab_wrapper__6dae1aac-2a86-4e78-9955-863c783a591f undefined\">\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Lab7: Bike sharing data analysis<\/strong> <\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Problem specification (\ud83d\udcc4<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab7_2023.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">pdf<\/a>)<br>Skeleton Project (\ud83d\udcda<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab7_Skeleton_with_libraries.zip\"><strong>lib<\/strong><\/a><\/strong>, \ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab7_Skeleton.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>)<br><span style=\"text-indent: 0em;\">Sample data (<\/span>\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/exampleKML.zip\">SampleData.zip<\/a><span style=\"text-indent: 0em;\">)<\/span><br>Example KML file (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/exampleKML.zip\" target=\"_blank\" rel=\"noreferrer noopener\">exampleKML.zip<\/a>)<\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Expected output<\/p>\n\n\n<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-6bc93f\">\n<li class=\" eplus-wrapper\">On sample data (sampleData\/{registerSample.csv,stations.csv}),min criticality threshold = 0.4 (<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/resSampleData0.4-1.txt\" target=\"_blank\" rel=\"noreferrer noopener\">part-00000<\/a>)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">On complete data (\/data\/students\/bigdata-01QYD\/Lab7\/{register.csv,stations.csv}), threshold = 0.6 (<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/resAllData0.6-1.txt\" target=\"_blank\" rel=\"noreferrer noopener\">part-00000<\/a>)<\/li>\n<\/ul>\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Solution (\ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab7BigData_Sol.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>)<\/p>\n<\/div>\n\n\n\n<div id=\"ep_tab_wrapper__d04c279e-a621-4d43-9275-a97aa88678a2\" class=\"ep_tab_item_wrapper ep_tab_wrapper__d04c279e-a621-4d43-9275-a97aa88678a2 undefined\">\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Lab8: Bike sharing data analysis based on Spark SQL<\/strong><\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Problem specification (\ud83d\udcc4<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab8.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">pdf<\/a>)<br>Skeleton Project (\ud83d\udcda<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab8_Skeleton_with_libraries.zip\"><strong>lib<\/strong><\/a><\/strong>, \ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/Lab8_Skeleton.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>)<br>Sample data (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/11\/sampleData-1.zip\">SampleData.zip<\/a>)<\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Solution (\ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/Lab8_Sol.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>)<\/p>\n<\/div>\n\n\n\n<div id=\"ep_tab_wrapper__5b8b8671-270b-4b00-b22b-bb21d02776a9\" class=\"ep_tab_item_wrapper ep_tab_wrapper__5b8b8671-270b-4b00-b22b-bb21d02776a9 undefined\">\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Lab9: A classification pipeline with MLlib + SparkSQL<\/strong> <\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Problem specification (\ud83d\udcc4<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/Lab9.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">pdf<\/a>)<br>Skeleton Project (\ud83d\udcda<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/Lab9_Skeleton_with_libraries.zip\"><strong>lib<\/strong><\/a><\/strong>, \ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/Lab9_Skeleton.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>)<br>Sample data (\ud83d\udcc5<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/ReviewsSample.csv\">ReviewsSample.csv<\/a>)<\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Solution. <\/strong>Logistic regression (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/Lab9_SolLR.zip\" target=\"_blank\" rel=\"noreferrer noopener\">zip<\/a>)<br><strong>Solution. <\/strong>DecisionTree (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/Lab9_SolDT.zip\" target=\"_blank\" rel=\"noreferrer noopener\">zip<\/a>)<br><strong>Solution. <\/strong>Logistic regression based on text analysis (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/Lab9_SolLRText.zip\" target=\"_blank\" rel=\"noreferrer noopener\">zip<\/a>)<br><strong>Solution. <\/strong>DecisionTree based on text analysis (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/Lab9_SolDTText.zip\" target=\"_blank\" rel=\"noreferrer noopener\">zip<\/a>)<\/p>\n<\/div>\n\n\n\n<div id=\"ep_tab_wrapper__a4908b0c-c26f-4d79-b62e-8d1ed38e10c2\" class=\"ep_tab_item_wrapper ep_tab_wrapper__a4908b0c-c26f-4d79-b62e-8d1ed38e10c2 undefined\">\n<p class=\"eplus-wrapper wp-block-paragraph\"><strong>Lab10: Tweet analysis \u2013 Spark streaming<\/strong> <\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Problem specification (\ud83d\udcc4<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/Lab10.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">pdf<\/a>)<br>Skeleton Project (\ud83d\udcda<strong><a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/Lab10_Skeleton_with_libraries.zip\"><strong>lib<\/strong><\/a><\/strong>, \ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/Lab10_Skeleton.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>)<br>Example files \u2013 tweets (\ud83d\uddc3\ufe0f<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/exampledata_tweets.zip\" target=\"_blank\" rel=\"noreferrer noopener\">exampledata_tweets.zip<\/a>)<\/p>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Solution (\ud83d\udc27<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/Lab10_Sol.zip\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>mavU<\/strong><\/a>)<\/p>\n<\/div>\n<\/div><style>.eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_tabs_header {\n                \n                flex-basis: 15% ;\n            }.eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_tabs_root {\n                \n                gap: 0px ;\n            }.eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_label {\n                \n                color: #1e1e1e;\nfont-size: 17px ;\n            }\n            \n\n        \n\n         \n\n        \n        \n      .eplus_styles  .ep_label_main:hover .ep_label {\n        color: #ffffff;\n      }.eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_sub_label {\n                \n                color: #1e1e1e;\nfont-size: 15px ;\n            }\n            \n\n        \n\n         \n\n        \n        \n      .eplus_styles  .ep_label_main:hover .ep_sub_label {\n        color: #ffffff;\n      }.eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_active_tab .ep_label {\n                \n                color: #ffffff;\n            }.eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_active_tab .ep_sub_label {\n                \n                color: #ffffff;\n            }.eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_label_main {\n                \n                background-image: linear-gradient(#f0f0f0, #f0f0f0);\n            }\n            \n\n        \n\n         \n\n        \n            .eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_label_main:hover {\n                background-image: linear-gradient(#007cba, #007cba);\n            }.eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_active_tab {\n                \n                background-image: linear-gradient(#007cba, #007cba);\n            }.eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_tab_item_wrapper {\n                \n                background-image: linear-gradient(#f0f0f0, #f0f0f0);\n            }.eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_label_main {\n                \n                padding-top: 15px ;\npadding-right: 15px ;\npadding-bottom: 15px ;\npadding-left: 15px ;\n            }.eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_tab_item_wrapper {\n                \n                padding-top: 15px ;\npadding-right: 15px ;\npadding-bottom: 15px ;\npadding-left: 15px ;\n            }.eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_tabs_header {\n                \n                gap: 5px ;\n            }.eplus_styles .ep_tabs_wrapper__36d4fa94-1572-4a95-b58f-7ef95a232aa7 .ep_tabs_header {\n                \n                justify-content: flex-start;\n            }<\/style><\/div><\/div>\n\n\n\n<h2 class=\" wp-block-heading eplus-wrapper\" id=\"exam-examples\">Exam examples<\/h2>\n\n\n\n<p class=\"eplus-wrapper wp-block-paragraph\">Pay attention that from the academic year 2022\/23, the exam is <strong><mark style=\"background-color:rgba(0, 0, 0, 0);color:#f30a0a\" class=\"has-inline-color\">open book<\/mark><\/strong>.<\/p>\n\n\n\n<figure class=\" wp-block-table eplus-wrapper\"><table><tbody><tr><td><strong>Text<\/strong><\/td><td><strong>Solutions<\/strong><\/td><\/tr><tr><td>Spark Streaming &#8211; Examples of multiple choice questions (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/ExamplesMultipleChoiceQuestions.pdf\" target=\"_blank\">pdf<\/a>)<\/td><td>Question 1: (c)<br>Question 2: (d)<br>Question 3: (b)<\/td><\/tr><tr><td>Exam June 30, 2017 (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2017\/06\/Exam20170630_v1.pdf\">pdf<\/a>)<\/td><td>Question 1: (b)<br>Question 2: (c)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2018\/05\/Exam20170630.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam July 14, 2017 (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2017\/07\/Exam20170714_v1.pdf\">pdf<\/a>)<\/td><td>Question 1: (d)<br>Question 2: (c)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2018\/05\/Exam20170714.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam September 14, 2017 (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2017\/09\/Exam20170914_v1.pdf\">pdf<\/a>)<\/td><td>Question 1: (a)<br>Question 2: (b)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2018\/05\/Exam20170914.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam June 26, 2018 (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2018\/06\/Exam20180626_v1.pdf\">pdf<\/a>)<\/td><td>Question 1: (c)<br>Question 2: (c)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2018\/06\/DraftSolutionv1.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam July 16, 2018 (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2018\/07\/Exam20180716_v1.pdf\">pdf<\/a>)<\/td><td>Question 1: (d)<br>Question 2: (a)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2018\/07\/DraftSolutionv1_20180716.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam September 3, 2018 (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2018\/09\/Exam20180903_v1.pdf\">pdf<\/a>)<\/td><td>Question 1: (d)<br>Question 2: (c)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2019\/06\/DraftSolutionv1_201809003.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam February 15, 2019 (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2019\/03\/Exam20190215_v1.pdf\">pdf<\/a>)<\/td><td>Question 1: (d)<br>Question 2: (c)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2019\/06\/DraftSolutionv1_20190215.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam July 2, 2019 (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2019\/07\/Exam20190702_v1.pdf\">pdf<\/a>)<\/td><td>Question 1: (a)<br>Question 2: (b)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2019\/07\/BozzaSoluzionev1_20190702.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam July 18, 2019 (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2019\/07\/Exam20190718_v1.pdf\">pdf<\/a>)<\/td><td>Question 1: (b)<br>Question 2: (b)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2019\/07\/DraftSolutionExam20190718_v1.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam July 2, 2020 (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2020\/07\/BD_Exam20200702.pdf\">pdf<\/a>)<\/td><td>Question 1: (b)<br>Question 2: (a)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2020\/07\/DraftSolutionExam20120702.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam July 16, 2020 (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2020\/07\/BD_Exam20200716.pdf\">pdf<\/a>)<\/td><td>Question 1: (b)<br>Question 2: (b) \u2013 Note that there are two actions and hence the input file is read two times.<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2020\/07\/DraftSolutionExam20120716.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam September 17, 2020 (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2020\/09\/BD_Exam20200917.pdf\">pdf<\/a>)<\/td><td>Question 1: (d)<br>Question 2: (c)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2020\/09\/DraftSolutionExam20120917.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam February 5, 2021 (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2021\/02\/BD_Exam20210205.pdf\">pdf<\/a>)<\/td><td>Question 1: (b)<br>Question 2: (c)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2021\/02\/DraftSolutionExam20210205.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam June 30, 2021Exam (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2021\/12\/BD_Exam20210630.pdf\" target=\"_blank\">pdf<\/a>)<\/td><td>Question 1: (a)<br>Question 2: (c)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/wordpress\/wp-content\/uploads\/2021\/07\/DraftSolutionExam20210630.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam February 2, 2022 (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2022\/02\/BD_Exam20220202_v1.pdf\" target=\"_blank\">pdf<\/a>)<\/td><td>Question 1: (b)<br>Question 2: (d)<br>Source code\/Eclipse projects (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2022\/02\/Draft20200202.zip\" target=\"_blank\">zip<\/a>)<\/td><\/tr><tr><td>Exam February 21, 2022 (<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2022\/02\/BD_Exam20220221_v2.pdf\">pdf<\/a>)<\/td><td>Question 1: (d)<br>Question 2: (d)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2022\/02\/Draft20200221.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam July 4, 2022 (<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2022\/07\/BD_Exam20220704.pdf\">pdf<\/a>)<\/td><td>Question 1: (c)<br>Question 2: (d)<br>Source code\/Eclipse projects (<a href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2022\/07\/Draft20220704.zip\">zip<\/a>)<\/td><\/tr><tr><td>Exam September 6, 2022 (<a rel=\"noreferrer noopener\" href=\"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-content\/uploads\/2022\/09\/BD_Exam20220906.pdf\" target=\"_blank\">pdf<\/a>)<\/td><td>Question 1: (c)<br>Question 2: (d)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\" wp-block-heading eplus-wrapper\" id=\"additional-material\">Additional material<\/h3>\n\n\n<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-b46d4b\">\n<li class=\" eplus-wrapper\">Slides and screencasts about Java (kindly provided by prof. Torchiano) (<a href=\"http:\/\/dbdmg.polito.it\/~paolo\/JavaMaterials\/02JEY%20-%20Object%20Oriented%20Programming.html\">link<\/a>)<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-30b97a\">\n<li class=\" eplus-wrapper\">Suggested slides\/lectures for those students who have never used Java<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-6dc440\">\n<li class=\" eplus-wrapper\">OO Paradigm and UML (The UML part is not mandatory)<\/li>\n\n\n\n<li class=\" eplus-wrapper\">The Java Environment<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Java Basic Features<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Java Inheritance<\/li>\n<\/ul><\/li>\n<\/ul><\/li>\n<\/ul>\n\n\n<div class=\"wp-block-buttons eplus-wrapper is-layout-flex wp-block-buttons-is-layout-flex\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>General Information SSD: ING-INF\/05 CFU: 6 Professor: Daniele Apiletti Teaching Assistant: Simone Monaco Q&amp;A teaching&nbsp;assistance&nbsp;on Piazza:&nbsp;piazza.com\/polito.it\/fall2023\/01qydov Announcements Teaching Material Exercises If you use your PC to write and run your code, import the projects based on Maven (those projects can be run locally).If you use the PC available in the &hellip;<\/p>\n","protected":false},"author":11,"featured_media":1517,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"editor_plus_copied_stylings":"{}","footnotes":""},"categories":[37],"tags":[],"class_list":["post-7139","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-courses"],"_links":{"self":[{"href":"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-json\/wp\/v2\/posts\/7139","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-json\/wp\/v2\/comments?post=7139"}],"version-history":[{"count":94,"href":"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-json\/wp\/v2\/posts\/7139\/revisions"}],"predecessor-version":[{"id":10477,"href":"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-json\/wp\/v2\/posts\/7139\/revisions\/10477"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-json\/wp\/v2\/media\/1517"}],"wp:attachment":[{"href":"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-json\/wp\/v2\/media?parent=7139"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-json\/wp\/v2\/categories?post=7139"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dbdmg.polito.it\/dbdmg_web\/wp-json\/wp\/v2\/tags?post=7139"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}