Βίντεο: Word 2010 - Εσοχές παραγράφων 2025
Ο τρόπος που έχει ρυθμιστεί το HDFS, καταστρέφει τα πολύ μεγάλα αρχεία σε μεγάλα μπλοκ (για παράδειγμα, και αποθηκεύει τρία αντίγραφα αυτών των μπλοκ σε διαφορετικούς κόμβους του συμπλέγματος.Η HDFS δεν έχει επίγνωση του περιεχομένου αυτών των αρχείων
Στο YARN, όταν ξεκινά μια εργασία MapReduce, ο Διαχειριστής Πόρων (διαχείριση πόρων πόρων και προγραμματισμός εργασιών) δημιουργεί ένα δαίμονα Master Application για να μεριμνήσει για τον κύκλο ζωής της εργασίας. (Στο Hadoop 1, το JobTracker παρακολούθησε μεμονωμένες εργασίες καθώς και χειρισμό προγραμματισμού εργασιών και διαχείρισης πόρων cluster.)
τοπικά
στον κόμβο υποτελούς όπου είναι αποθηκευμένα. Πριν εξετάσετε πώς επεξεργάζονται τα μπλοκ δεδομένων, θα πρέπει να εξετάσετε προσεκτικότερα τον τρόπο αποθήκευσης των δεδομένων από τον Hadoop. Στο Hadoop, τα αρχεία αποτελούνται από μεμονωμένα αρχεία, τα οποία τελικά επεξεργάζονται ένα προς ένα από τις εργασίες χαρτογράφησης. Για παράδειγμα, το δείγμα δεδομένων περιέχει πληροφορίες σχετικά με τις ολοκληρωμένες πτήσεις εντός των Ηνωμένων Πολιτειών μεταξύ 1987 και 2008.
Για να κάνετε λήψη του δείγματος δεδομένων, ανοίξτε το πρόγραμμα περιήγησης Firefox μέσα από το VM και μεταβείτε στη σελίδα dataexpo.
Έχετε ένα μεγάλο αρχείο για κάθε έτος, και μέσα σε κάθε αρχείο, κάθε μεμονωμένη γραμμή αντιπροσωπεύει μια μόνο πτήση. Με άλλα λόγια, μία γραμμή αντιπροσωπεύει ένα αρχείο. Τώρα, να θυμάστε ότι το μέγεθος μπλοκ για το σύμπλεγμα Hadoop είναι 64MB, πράγμα που σημαίνει ότι τα αρχεία δεδομένων φωτός χωρίζονται σε κομμάτια ακριβώς 64MB.Βλέπετε το πρόβλημα; Εάν κάθε εργασία χαρτών επεξεργάζεται όλες τις εγγραφές σε ένα συγκεκριμένο μπλοκ δεδομένων, τι συμβαίνει σε αυτές τις εγγραφές που καλύπτουν τα όρια; Τα μπλοκ αρχείων είναι ακριβώς 64MB (ή ό, τι ρυθμίζετε το μέγεθος του μπλοκ) και επειδή το HDFS δεν έχει αντίληψη για τα περιεχόμενα των μπλοκ αρχείων, δεν μπορεί να μετρήσει όταν ένα αρχείο μπορεί να μεταφερθεί σε άλλο μπλοκ.
Για την επίλυση αυτού του προβλήματος, ο Hadoop χρησιμοποιεί μια λογική αναπαράσταση των δεδομένων που είναι αποθηκευμένα σε μπλοκ αρχείων, γνωστά ως
σχισμές εισόδου
. Όταν ένας πελάτης εργασίας MapReduce υπολογίζει τις διαφορές εισόδου, υπολογίζει πού αρχίζει η πρώτη ολόκληρη εγγραφή σε ένα μπλοκ και πού τελειώνει η τελευταία εγγραφή στο μπλοκ. Σε περιπτώσεις όπου η τελευταία εγγραφή σε ένα μπλοκ είναι ατελής, ο διαχωρισμός εισόδου περιλαμβάνει πληροφορίες θέσης για το επόμενο μπλοκ και την απόκλιση byte των δεδομένων που απαιτούνται για την ολοκλήρωση της εγγραφής. Το σχήμα δείχνει αυτή τη σχέση μεταξύ των μπλοκ δεδομένων και των χωρισμάτων εισόδου.
Μπορείτε να διαμορφώσετε τον δαίμονα Application Master (ή το JobTracker, εάν βρίσκεστε στο Hadoop 1) για να υπολογίσετε τις χωρίσεις εισόδου αντί του πελάτη εργασίας, κάτι που θα ήταν πιο γρήγορο για εργασίες που επεξεργάζονται μεγάλο αριθμό μπλοκ δεδομένων.
Η επεξεργασία δεδομένων MapReduce οδηγείται από αυτή την έννοια των διαφορών εισόδου. Ο αριθμός των διαχωρισμών εισόδου που υπολογίζονται για μια συγκεκριμένη εφαρμογή καθορίζει τον αριθμό των εργασιών χαρτογράφησης. Κάθε μία από αυτές τις εργασίες χαρτογράφησης αντιστοιχεί, όπου είναι δυνατόν, σε έναν κόμβο υποτελούς λειτουργίας στον οποίο αποθηκεύεται ο διαχωρισμός εισόδου. Ο Διαχειριστής Πόρων (ή το JobTracker, αν βρίσκεστε στο Hadoop 1) προσπαθεί να διασφαλίσει ότι οι διαχωρίσεις εισερχόμενων δεδομένων θα υποστούν επεξεργασία τοπικά.