Πίνακας περιεχομένων:
- Μεγάλη πληροφορία υλικού / τοπολογία δικτύου
- Επειδή δεν είναι αποτελεσματικό να κρατάτε όλα τα αποτελέσματα της αντιστοίχισης στον κόμβο, οι μηχανισμοί συγχρονισμού αντιγράφουν τα αποτελέσματα χαρτογράφησης στους κόμβους μείωσης αμέσως μετά την ολοκλήρωσή τους, έτσι ώστε το η επεξεργασία μπορεί να ξεκινήσει αμέσως. Όλες οι τιμές από το ίδιο κλειδί αποστέλλονται στον ίδιο μειωτήρα, εξασφαλίζοντας και πάλι υψηλότερες επιδόσεις και καλύτερη απόδοση.
- Η υλοποίησή σας MapReduce υποστηρίζεται από ένα κατανεμημένο σύστημα αρχείων. Η κύρια διαφορά μεταξύ τοπικών και κατανεμημένων συστημάτων αρχείων είναι η χωρητικότητα. Για να χειριστούν τις τεράστιες ποσότητες πληροφοριών σε έναν μεγάλο κόσμο δεδομένων, τα συστήματα αρχείων πρέπει να διανεμηθούν σε πολλαπλά μηχανήματα ή κόμβους σε ένα δίκτυο.
Βίντεο: ISOMAT: Εφαρμογή πατητής τσιμεντοκονίας σε δάπεδο 2025
Εκτός από τη βελτιστοποίηση του πραγματικού κώδικα εφαρμογής με το MapReduce για μεγάλα έργα δεδομένων, τεχνικές βελτιστοποίησης για τη βελτίωση της αξιοπιστίας και της απόδοσης. Μοιάζουν σε τρεις κατηγορίες: τοπολογία υλικού / δικτύου, συγχρονισμός και σύστημα αρχείων.
Μεγάλη πληροφορία υλικού / τοπολογία δικτύου
Ανεξάρτητα από την εφαρμογή, το ταχύτερο υλικό και δίκτυα πιθανόν να αποφέρουν ταχύτερους χρόνους εκτέλεσης του λογισμικού σας. Ένα ξεχωριστό πλεονέκτημα του MapReduce είναι η δυνατότητα να τρέχετε σε φθηνά συμπλέγματα υλικού υλικού και τυποποιημένων δικτύων. Εάν δεν δίνετε προσοχή στο πού οργανώνονται οι διακομιστές σας, δεν θα έχετε την καλύτερη απόδοση και τον υψηλό βαθμό αντοχής σε σφάλματα που απαιτούνται για την υποστήριξη μεγάλων εργασιών δεδομένων.
Το υλικό εμπορευμάτων αποθηκεύεται συχνά σε ράφια στο κέντρο δεδομένων. Η εγγύτητα του υλικού μέσα στο rack προσφέρει ένα πλεονέκτημα απόδοσης σε αντίθεση με τη μετακίνηση δεδομένων και / ή τον κωδικό από το rack στο rack. Κατά τη διάρκεια της εφαρμογής, μπορείτε να ρυθμίσετε τη μηχανή MapReduce ώστε να γνωρίζει και να επωφεληθεί από αυτήν την εγγύτητα.
Η διατήρηση των δεδομένων και του κώδικα μαζί αποτελεί μία από τις καλύτερες βελτιστοποιήσεις για την απόδοση του MapReduce. Στην ουσία, όσο πιο κοντά βρίσκονται τα στοιχεία επεξεργασίας υλικού, τόσο λιγότερη λανθάνουσα κατάσταση θα πρέπει να αντιμετωπίσετε.
Επειδή δεν είναι αποτελεσματικό να κρατάτε όλα τα αποτελέσματα της αντιστοίχισης στον κόμβο, οι μηχανισμοί συγχρονισμού αντιγράφουν τα αποτελέσματα χαρτογράφησης στους κόμβους μείωσης αμέσως μετά την ολοκλήρωσή τους, έτσι ώστε το η επεξεργασία μπορεί να ξεκινήσει αμέσως. Όλες οι τιμές από το ίδιο κλειδί αποστέλλονται στον ίδιο μειωτήρα, εξασφαλίζοντας και πάλι υψηλότερες επιδόσεις και καλύτερη απόδοση.
Οι εξόδους μείωσης γράφονται απευθείας στο σύστημα αρχείων, γι 'αυτό πρέπει να σχεδιάζονται και να συντονίζονται για καλύτερα αποτελέσματα.
Η υλοποίησή σας MapReduce υποστηρίζεται από ένα κατανεμημένο σύστημα αρχείων. Η κύρια διαφορά μεταξύ τοπικών και κατανεμημένων συστημάτων αρχείων είναι η χωρητικότητα. Για να χειριστούν τις τεράστιες ποσότητες πληροφοριών σε έναν μεγάλο κόσμο δεδομένων, τα συστήματα αρχείων πρέπει να διανεμηθούν σε πολλαπλά μηχανήματα ή κόμβους σε ένα δίκτυο.
Οι υλοποιήσεις MapReduce βασίζονται σε ένα στυλ κατανομής master-slave, όπου ο κεντρικός κόμβος αποθηκεύει όλα τα μεταδεδομένα, δικαιώματα πρόσβασης, χαρτογράφηση και θέση αρχείων και μπλοκ κλπ. Οι σκλάβοι είναι κόμβοι όπου αποθηκεύονται τα πραγματικά δεδομένα. Όλα τα αιτήματα πηγαίνουν στον κύριο και στη συνέχεια αντιμετωπίζονται από τον κατάλληλο κόμβο υποτελούς λειτουργίας.Καθώς εξετάζετε το σχεδιασμό του συστήματος αρχείων, θα πρέπει να λάβετε υπόψη σας τα εξής:
Κρατήστε το ζεστό:
-
Όπως θα περίμενε κανείς, ο κύριος κόμβος θα μπορούσε να καταστραφεί επειδή όλα αρχίζουν εκεί. Επιπλέον, αν ο κύριος κόμβος αποτύχει, ολόκληρο το σύστημα αρχείων είναι απρόσιτο έως ότου αποκατασταθεί ο κύριος κόμβος. Μια πολύ σημαντική βελτιστοποίηση είναι η δημιουργία ενός κύριου κόμβου "ζεστού αναμονής" που μπορεί να μεταβεί σε υπηρεσία εάν παρουσιαστεί κάποιο πρόβλημα με τον διαδικτυακό πλοίαρχο. Το μεγαλύτερο, το καλύτερο:
-
Το μέγεθος του αρχείου είναι επίσης ένα σημαντικό θέμα. Πολλά μικρά αρχεία (κάτω από 100MB) θα πρέπει να αποφεύγονται. Τα κατανεμημένα συστήματα αρχείων που υποστηρίζουν τους μηχανισμούς MapReduce λειτουργούν καλύτερα όταν είναι γεμάτα με ένα μικρό αριθμό μεγάλων αρχείων. Η μακρά προβολή:
-
Επειδή οι φόρμες εργασίας διαχειρίζονται σε παρτίδες, το εύρος ζώνης του δικτύου είναι πολύ σημαντικότερο από τους χρόνους γρήγορης εκτέλεσης των χαρτογράφων ή των μειωτήρων. Η βέλτιστη προσέγγιση είναι για τον κώδικα να ρέει πολλά δεδομένα όταν διαβάζει και πάλι όταν είναι καιρός να γράψει στο σύστημα αρχείων. Κρατήστε την ασφαλή:
-
Αλλά όχι υπερβολικά. Η προσθήκη επιπέδων ασφαλείας στο διανεμημένο σύστημα αρχείων θα υποβαθμίσει την απόδοσή του. Τα δικαιώματα αρχείων είναι εκεί για να προφυλαχθούν από ακούσιες συνέπειες και όχι κακόβουλη συμπεριφορά. Η καλύτερη προσέγγιση είναι να διασφαλιστεί ότι μόνο οι εξουσιοδοτημένοι χρήστες έχουν πρόσβαση στο περιβάλλον του κέντρου δεδομένων και να διατηρούν το σύστημα κατανεμημένου αρχείου προστατευμένο από το εξωτερικό.
