Back to search

National and Kapodistrian University of Athens

Design and Implementation of a Serverless MapReduce Framework

Abstract

dc:description

Η ταχεία αύξηση του όγκου των δεδομένων έχει δημιουργήσει την ανάγκη για κλιμακώσιμες, οικονομικά αποδοτικές και ευέλικτες λύσεις επεξεργασίας. Τα παραδοσιακά MapReduce frameworks εξαρτώνται συνήθως από στατικές υποδομές, οι οποίες μπορεί να είναι δαπανηρές και σύνθετες στην εγκατάσταση. Το serverless computing προσφέρει on-demand εκτέλεση με αυτόματη και παραμετροποιήσιμη κλιμάκωση και παρέχει μια εναλλακτική τεχνική για την κατανεμημένη επεξεργασία δεδομένων. Σε αυτή τη διπλωματική εργασία, παρουσιάζεται ένα MapReduce framework βασισμένο στο μοντέλο Function as a Service (FaaS), το οποίο χρησιμοποιεί το Kubernetes για την ανάπτυξη, το Knative για τη διαχείριση των serverless workloads και cloud native υπηρεσίες για την αποθήκευση και τη διαχείριση δεδομένων. Το framework οργανώνεται σε πέντε μερικώς συζευγμένες υπηρεσίες και jobs, οι οποίες ενεργοποιούνται μέσω της πλατφόρμας Apache Kafka event streaming. Σε μια εργασία MapReduce, τα δεδομένα αρχικά διαχωρίζονται σε τμήματα με βάση τον αριθμό των Mapper jobs. Στη συνέχεια εκτελούνται τα Mapper και Reducer containers και, τέλος, εφόσον έχει ενεργοποιηθεί, ένα Finalizer component συγχωνεύει τα αποτελέσματα σε ένα ενιαίο τελικό αρχείο. Η ροή αυτή διαχειρίζεται από ένα κεντρικό component, τον Coordinator. Όλα τα components εκτελούνται ως ανεξάρτητοι Knative πόροι, οι οποίοι μπορούν να εκκινηθούν από μηδενικό αριθμό replicas. Τα metadata διαχειρίζονται μέσω μιας βάσης δεδομένων Redis, ενώ το AWS S3 αποθηκεύει τόσο τα ενδιάμεσα όσο και τα τελικά αποτελέσματα. Το framework είναι εύχρηστο και μπορεί να παραμετροποιηθεί μέσω μιας client-side βιβλιοθήκης Python. Οι χρήστες μπορούν να ορίσουν ρυθμίσεις σε αρχείο JSON, να επιλέξουν τον αριθμό των Mappers και Reducers και να ορίσουν δικές τους map και reduce συναρτήσεις. Με τον τρόπο αυτό, το framework προσαρμόζεται στις απαιτήσεις του κάθε φόρτου εργασίας. Η πειραματική αξιολόγηση πραγματοποιήθηκε σε περιβάλλον Kubernetes στο AWS μέσω EKS, καθώς και τοπικά με χρήση Minikube. Τα αποτελέσματα δείχνουν ότι το framework κλιμακώνεται, επιτυγχάνει ανταγωνιστικούς χρόνους εκτέλεσης και παρέχει έναν απλό και ασφαλή τρόπο για την εκτέλεση MapReduce εργασιών. Το framework δείχνει ότι μια serverless υλοποίηση του MapReduce μπορεί να αποτελέσει μια πρακτική εναλλακτική στα παραδοσιακά συστήματα κατανεμημένης επεξεργασίας δεδομένων. Η χρήση event driven αρχιτεκτονικής, container orchestration και cloud native υπηρεσιών αποθήκευσης μειώνει την ανάγκη για αποκλειστική υποδομή, διατηρώντας παράλληλα υψηλή απόδοση και αξιοπιστία. Η χρήση πόρων, όπως CPU και μνήμη, παρακολουθήθηκε μέσω του Prometheus, παρέχοντας λεπτομερή εικόνα της αξιοποίησης των πόρων του συστήματος.

Author and committee

dc:creator, dc:contributor.*
Authors dc:creator
  • ΧΑΤΖΟΠΟΥΛΟΣ ΑΓΓΕΛΟΣ-ΔΩΡΟΘΕΟΣ
  • CHATZOPOULOS ANGELOS-DOROTHEOS

Subjects

dc:subject × 2

Rights

Language dc:language
Ελληνικά, English, Greek

Identifiers

dc:identifier.*
Identifier
uoadl:5327694
OAI identifier oai:identifier
oai:lib.uoa.gr:uoadl:5327694

Chain of custody

source
Harvested from
National and Kapodistrian University of Athens
Base URL
pergamos.lib.uoa.gr/uoa/dl/frontend/oaipmh
Last updated
2026-07-24
Source record
OAI-PMH GetRecord
citation

ΧΑΤΖΟΠΟΥΛΟΣ ΑΓΓΕΛΟΣ-ΔΩΡΟΘΕΟΣ; CHATZOPOULOS ANGELOS-DOROTHEOS. Design and Implementation of a Serverless MapReduce Framework. 2026. https://pergamos.lib.uoa.gr/uoa/dl/object/5327694