I file csv usati sono stati scaricati da repository-covid-19 il giorno 31/05/2021 e sono memorizzati nella cartella /data.
- Installare Spark, al link è disponibile un breve tutorial.
- Installare maven:
apt install maven
- Installare java
- Far partire lo spark master eseguendo il comando
start-master.sh
- compilare il maven project con i seguenti comandi:
mvn compile; mvn package; mvn install
- fare eseguire il docker-compose:
~ cd dist/hdfs/; docker-compose up
per fare partire i container per l'HDFS - una volta ottenuto il jar target/SABD-Project_1-1.0-SNAPSHOT.jar a seguito del punto 3. è possibile eseguire gli script forniti nella cartella SABD-Project_1 dopo avergli concesso i permessi di esecuzione.
il JAR deve essere generato poiché la piattaforma non ne permette l'upload a causa delle sue dimensioni corrispondenti a ≈ 108MB
~ ./query1.sh
~ ./query2.sh
~ ./main.sh
per eseguire sia la query1 che la query 2
Per usare il programma in modalità debug basta usare il flag "-D"
~ ./query1.sh -D
~ ./query2.sh -D
~ ./main.sh -D
I risultati verranno esportati sia su hdfs che su una cartella locale denominata Results.
Per verificarne il contenuto dell'omologa cartella su HDFS: hdfs dfs -ls /Results/query1
ehdfs dfs -ls /Results/query2
e farne il cat hdfs dfs -cat /Results/query1/csv-name
, hdfs dfs -cat /Results/query1/csv-name
I tempi di esecuzione vengono stampati a schermo per ciascuna delle queries
Il grafico viene preso dal report del job disponibile in: SABD-TIZIANA-MANNUCCI-PROJECT - Details for Job query1.pdf
Il grafico viene preso dal report del job disponibile in: SABD-TIZIANA-MANNUCCI-PROJECT - Details for Job query2.pdf
I test sono stati effettuati su una macchina con le seguenti specifiche:
- CPU: Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz sbloccato (up to 4900MHz)
- Motherboard: MPG Z390 GAMING PRO CARBON AC
- RAM: 16GB DIMM DDR4 Synchronous 3200 MHz (0.3 ns) CMK16GX4M2B3200C16 a 64bit
- Scheda grafica: MSI RTX 2070 super ventus
per ulteriori dettagli vedere il report