Skip to content

Apache Spark project for Advanced Topics on Databases course

Notifications You must be signed in to change notification settings

Thapep/ApacheSpark

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ApacheSpark

Apache Spark project for Database II course

Μέρος 1ο : Υπολογισμός Αναλυτικών Ερωτημάτων με τα APIs του Apache Spark

  • Ζητούμενο 1: Φόρτωση αρχείων csv στο hdfs

  • Ζητούμενο 2: Μετατροπή αρχείων csv σε parquet για επεξεργασία (οδηγίες εδώ και εδώ). Μετα από αυτό θελουμε 6 αρχεία στο hdfs (3 csv, 3 parquet)

  • Ζητούμενο 3: Για τα Q1-Q5 υλοποίηση λύσης: μια με RDD API και μια με Spark SQL Το RDD θα γίνει πάνω στα csv ενώ το Spark SQL πάνω στα csv και στα parquet

    Queries RDD Spark SQL
    Q1 ✔️ ✔️
    Q2 ✔️ ✔️
    Q3 ✔️ ✔️
    Q4 ✔️ ✔️
    Q5 ✔️ ✔️
  • Ζητούμενο 4: Εκτέλεση των παραπάνω queries:

    • Map Reduce Queries – RDD API
    • Spark SQL με είσοδο το csv αρχείο (συμπεριλάβετε infer schema)
    • Spark SQL με είσοδο το parquet αρχείο
    • Δώστε τους χρόνους εκτέλεσης σε ένα ραβδόγραμμα, ομαδοποιημένους ανά Ερώτημα Σχολιάστε τα αποτελέσματα σε κάθε query. Τι παρατηρείται με τη χρήση του parquet ? Γιατί δεν χρησιμοποιείται το infer schema?
Μέρος 2ο : Υλοποίηση και μελέτη συνένωσης σε ερωτήματα και Μελέτη του βελτιστοποιητή του Spark

  • Ζητούμενο 1: Υλοποιείστε το broadcast join στο RDD API (Map Reduce)
  • Ζητούμενο 2: Υλοποιείστε το repartition join στο RDD API (Map Reduce)
  • Ζητούμενο 3: Απομονώστε 100 γραμμές του πίνακα movie genres σε ένα άλλο CSV. Συγκρίνετε τους χρόνους εκτέλεσης των δύο υλοποιήσεων σας για την συνένωση των 100 γραμμών με τον πίνακα ratings και συγκρίνετε τα αποτελέσματα. Τι παρατηρείτε? Γιατί?
  • Ζητούμενο 4: Συμπλήρωση του κώδικα της αναφοράς στη σελίδα 6 για την απενεργοποίηση του join από τον βελτιστοποιητή

About

Apache Spark project for Advanced Topics on Databases course

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published