Σκάλιση
ERDDAP™- Βαριά φορτία, πλέγματα, συστοιχίες, ομοσπονδίες, και υπολογιστικό σύννεφο
ERDDAP:
ERDDAP™είναι μια εφαρμογή web και μια υπηρεσία web που συγκεντρώνει επιστημονικά δεδομένα από διαφορετικές τοπικές και απομακρυσμένες πηγές και προσφέρει έναν απλό, συνεπή τρόπο για να κατεβάσετε υποσύνολα των δεδομένων σε κοινές μορφές αρχείων και να κάνει γραφήματα και χάρτες. Αυτή η ιστοσελίδα συζητά θέματα που σχετίζονται με βαριάERDDAP™χρήση φορτίων και διερευνά τις δυνατότητες αντιμετώπισης εξαιρετικά βαρέων φορτίων μέσω δικτύων, συστάδων, ομοσπονδιών και υπολογιστικών νεφών.
Η αρχική έκδοση γράφτηκε τον Ιούνιο του 2009. Δεν υπήρξαν σημαντικές αλλαγές. Αυτό ενημερώθηκε τελευταία φορά 2019-04-15.
ΔΙΕΥΘΥΝΤΗΣ
Τα περιεχόμενα αυτής της ιστοσελίδας είναι προσωπικές απόψεις του Bob Simons και δεν αντανακλούν απαραίτητα καμία θέση της κυβέρνησης ή τουNational Oceanic and Atmospheric Administration. Οι υπολογισμοί είναι απλοϊκοί, αλλά πιστεύω ότι τα συμπεράσματα είναι σωστά. Χρησιμοποίησα λάθος λογική ή έκανα λάθος στους υπολογισμούς μου; Αν ναι, το λάθος είναι δικό μου και μόνο. Παρακαλώ στείλτε ένα email με τη διόρθωσηerd dot data at noaa dot gov.
-
- Ναι.
Βαριά φορτία / περιορισμούς
Με βαριά χρήση, αυτόνομηERDDAP™θα περιοριστούν. (από το πιο στο λιγότερο πιθανό) από:
Εύρος απομακρυσμένης πηγής
- Εύρος ζώνης μιας απομακρυσμένης πηγής δεδομένων — Ακόμη και με αποτελεσματική σύνδεση (π.χ. μέσωOPeNDAP) , εκτός εάν μια απομακρυσμένη πηγή δεδομένων έχει πολύ υψηλό εύρος ζώνης σύνδεσης στο Διαδίκτυο,ERDDAPΟι απαντήσεις θα περιοριστούν από το πόσο γρήγοραERDDAP™μπορεί να πάρει δεδομένα από την πηγή δεδομένων. Μια λύση είναι να αντιγράψετε το σύνολο δεδομένων πάνωERDDAPΟ σκληρός δίσκος, ίσως μεEDDGridΑντιγραφήήEDDTableCopy.
ERDDAPΕύρος ζώνης εξυπηρετητή
- Εκτός ανERDDAPΟ διακομιστής έχει πολύ υψηλή σύνδεση στο Internet,ERDDAPΟι απαντήσεις θα περιοριστούν από το πόσο γρήγοραERDDAP™μπορεί να πάρει τα δεδομένα από τις πηγές δεδομένων και πόσο γρήγοραERDDAP™μπορεί να επιστρέψει τα δεδομένα στους πελάτες. Η μόνη λύση είναι να αποκτήσετ ε μια ταχύτερη σύνδεση στο Διαδίκτυο.
Μνήμη
- Αν υπάρχουν πολλές ταυτόχρονες αιτήσεις,ERDDAP™μπορεί να ξεμείνει από μνήμη και προσωρινά να αρνηθεί νέα αιτήματα. (ERDDAP™έχει μερικούς μηχανισμούς για να το αποφύγει αυτό και να ελαχιστοποιήσει τις συνέπειες αν συμβεί.) Έτσι, όσο περισσότερη μνήμη στον διακομιστή τόσο το καλύτερο. Σε ένα διακομιστή 32-bit, 4+ GB είναι πραγματικά καλό, 2 GB είναι εντάξει, λιγότερο δεν συνιστάται. Σε έναν εξυπηρετητή 64-bit, μπορείτε σχεδόν εντελώς να αποφύγετε το πρόβλημα με το να πάρετε πολλές αναμνήσεις. Δείτε το\ Xmx και -XmsγιαERDDAPΤόμκατ. ΑERDDAP™να πάρει βαριά χρήση σε έναν υπολογιστή με 64-bit server με 8GB μνήμης και -Xmx που σε 4000M είναι σπάνια, αν ποτέ, περιορίζεται από τη μνήμη.
Είχε εύρος ζώνης κίνησης
- Η πρόσβαση στα δεδομένα που αποθηκεύονται στο σκ ληρό δίσκο του διακομιστή είναι πολύ πιο γρήγορη από την πρόσβαση σε απομακρυσμένα δεδομένα. Ακόμα κι έτσι, αν ηERDDAP™server έχει ένα πολύ υψηλό εύρος ζώνης σύνδεση στο Internet, είναι πιθανό ότι η πρόσβαση σε δεδομένα σχετικά με το σκληρό δίσκο θα είναι ένα αδιέξοδο. Μια μερική λύση είναι να χρησιμοποιήσετε πιο γρήγορα (π.χ., 10.000 Στροφές) μαγνητικοί σκληροί δίσκοι ή δίσκοι SSD (εάν έχει νόημα από πλευράς κόστους) . Μια άλλη λύση είναι να αποθηκεύσετε διαφορετικά σύνολα δεδομένων σε διαφορετικές κινήσεις, έτσι ώστε το σωρευτικό εύρος ζώνης του σκληρού δίσκου είναι πολύ υψηλότερο.
Πάρα πολλά αρχεία Cached
- Πάρα πολλά αρχεία σε ένακρύπτηκατάλογος —ERDDAP™αποθηκεύει όλες τις εικόνες, αλλά μόνο αποθηκεύει τα δεδομένα για ορισμένους τύπους αιτημάτων δεδομένων. Είναι δυνατόν ο κατάλογος cache για ένα σύνολο δεδομένων να έχει έναν μεγάλο αριθμό αρχείων προσωρινά. Αυτό θα επιβραδύνει τις αιτήσεις για να δείτε αν ένα αρχείο είναι στην κρύπτη (Αλήθεια!) .<κρύπτη Πρακτικά & gt, insetup.xmlσας επιτρέπει να ορίσετε πόσο ένα αρχείο μπορεί να είναι στην κρύπτη πριν διαγραφεί. Ο καθορισμός μικρότερου αριθμού θα ελαχιστοποιήσει αυτό το πρόβλημα.
ΚΜΕ
- Μόνο δύο πράγματα χρειάζονται πολύ χρόνο CPU:
- NetCDF4 καιHDF5 τώρα υποστηρίζουν εσωτερική συμπίεση των δεδομένων. Αποσυμπίεση μιας μεγάλης συμπιεσμένηςNetCDF4 /HDF5 αρχείο δεδομένων μπορεί να διαρκέσει 10 ή περισσότερα δευτερόλεπτα. (Αυτό δεν είναι σφάλμα εφαρμογής. Είναι η φύση της συμπίεσης.) Έτσι, πολλαπλές ταυτόχρονες αιτήσεις για σύνολα δεδομένων με δεδομένα αποθηκευμένα σε συμπιεσμένα αρχεία μπορούν να βάλουν μια σοβαρή πίεση σε οποιοδήποτε διακομιστή. Εάν αυτό είναι ένα πρόβλημα, η λύση είναι να αποθηκεύσετε δημοφιλή σύνολα δεδομένων σε μη συμπιεσμένα αρχεία, ή να πάρετε έναν εξυπηρετητή με μια CPU με περισσότερους πυρήνες.
- Κατασκευή γραφημάτων (συμπεριλαμβανομένων των χαρτών) : περίπου 0,2 - 1 δευ τερόλεπτο ανά γράφημα. Έτσι, αν υπήρχαν πολλές ταυτόχρονες μοναδικές αιτήσεις για γραφήματα (WMSΟι πελάτες συχνά κάνουν 6 ταυτόχρονες αιτήσεις!) Μπορεί να υπάρχει περιορισμός της ΚΜΕ. Όταν πολλοί χρήστες τρέχουνWMSπελάτες, αυτό γίνεται πρόβλημα.
-
- Ναι.
Πολλαπλές ίδιεςERDDAPΜε Εξισορρόπηση Φορτίων;
Συχνά τίθεται το ερώτημα: "Για την αντιμετώπιση βαρέων φορτίων, μπορώ να ρυθμίσω πολλαπλά πανομοιότυπαERDDAPs με εξισορρόπηση φορτίου?" Είναι μια ενδιαφέρουσα ερώτηση γιατί γρήγορα φτάνει στον πυρήνα τηςERDDAPΤο σχέδιο. Η γρήγορη απάντηση είναι "όχι". Γνωρίζω ότι αυτή είναι μια απογοητευτική απάντηση, αλλά υπάρχουν δύο άμεσοι λόγοι και ορισμένοι μεγαλύτεροι βασικοί λόγοι για τους οποίους σχεδίασαERDDAP™να χρησιμοποιήσει διαφορετική προσέγγιση (μια ομοσπονδίαERDDAPs, που περιγράφεται στο μεγαλύτερο μέρος του παρόντος εγγράφου) , η οποία πιστεύω ότι είναι μια καλύτερη λύση.
Μερικοί άμεσοι λόγοι για τους οποίους δεν μπορείτε / δεν πρέπει να ρυθμίσετε πολλαπλά πανομοιότυπαERDDAPίνα είναι:
- Ένα δεδομένοERDDAP™διαβάζει κάθε αρχείο δεδομένων όταν για πρώτη φορά γίνεται διαθέσιμο για να βρει τα εύρος των δεδομένων στο αρχείο. Στη συνέχεια αποθηκεύει αυτές τις πληροφορίες σε ένα αρχείο ευρετηρίου. Αργότερα, όταν έρθει ένα αίτημα χρήστη για δεδομένα,ERDDAP™χρησιμοποιεί τον εν λόγω δείκτη για να βρει ποια αρχεία για να ψάξει για τα ζητούμενα δεδομένα. Αν υπήρχαν πολλαπλά πανομοιότυπαERDDAPS, ο καθένας θα κάνει αυτό το ευρετήριο, το οποίο είναι σπατάλη προσπάθειας. Με το σύστημα που περιγράφεται παρακάτω, η ευρετηρίαση γίνεται μόνο μία φορά, από ένα από ταERDDAPΣ.
- Για ορισμένους τύπους αιτήσεων χρηστών (π.χ. για.nc, .png, .pdf αρχεία) ERDDAP™πρέπει να κάνει ολόκληρο το αρχείο πριν από την απάντηση μπορεί να σταλεί. Λοιπόν...ERDDAP™αποθηκεύει αυτά τα αρχεία για ένα σύντομο χρονικό διάστημα. Αν έρθει μια παρόμοια αίτηση (όπως κάνει συχνά, ειδικά για εικόνες όπου το URL είναι ενσωματωμένο σε μια ιστοσελίδα) ,ERDDAP™μπορεί να επαναχρησιμοποιήσει το αρχείο cached. Σε ένα σύστημα πολλαπλών πανομοιότυπωνERDDAPs, αυτά τα αρχεία cached δεν μοιράζονται, έτσι το καθέναERDDAP™θα αναδημιουργούσε άσκοπα και άσκοπα το.nc, .png, ή .pdf αρχεία. Με το σύστημα που περιγράφεται παρακάτω, τα αρχεία γίνονται μόνο μία φορά, από ένα από ταERDDAPs, και επαναχρησιμοποιείται.
- ERDDAPΤο σύστημα συνδρομών δεν έχει ρυθμιστεί για να μοιράζεται με πολλαπλάERDDAPΣ. Για παράδειγμα, εάν ο ισοσταθμιστής φορτίου στέλνει ένα χρήστη σε έναERDDAP™και ο χρήστης εγγραφεί σε ένα σύνολο δεδομένων, τότε το άλλοERDDAPΔεν θα το γνωρίζουν αυτό. Αργότερα, αν ο ισοσταθμιστής φορτίου στείλει το χρήστη σε διαφορετικόERDDAP™και ζητά κατάλογο των συνδρομών του, η άλληERDDAP™Θα πω ότι δεν υπάρχουν. (οδηγώντας τον/την να κάνει μια διπλή συνδρομή στο άλλο EREDDAP) . Με το σύστημα που περιγράφεται παρακάτω, το σύστημα συνδρομών απλώς αντιμετωπίζεται από το κύριο, δημόσιο, σύνθετοERDDAP.
Ναι, για κάθε ένα από αυτά τα προβλήματα, θα μπορούσα (με μεγάλη προσπάθεια) μηχανικά ένα διάλυμα (να μοιραστεί τις πληροφορίες μεταξύERDDAPα) , αλλά νομίζω ότι τοΟμοσπονδίαERDDAPπροσέγγιση s (που περιγράφονται στο μεγαλύτερο μέρος του παρόντος εγγράφου) Συζητήσεις του Ευρωπαϊκού ΚοινοβουλίουERDDAPΗ προσέγγιση s-with-a-load-balancer δεν αρχίζει καν να αντιμετωπίζει, ιδίως τον αποκεντρωμένο χαρακτήρα των πηγών δεδομένων στον κόσμο.
Είναι καλύτερα να δεχτείς το απλό γεγονός ότι δεν σχεδίασαERDDAP™να αναπτυχθούν ως πολλαπλά πανομοιότυπαERDDAPs με ισοσταθμιστή φορτίου. Σχεδίασα συνειδητάERDDAP™να λειτουργήσει καλά εντός μιας ομοσπονδίαςERDDAPS, το οποίο πιστεύω ότι έχει πολλά πλεονεκτήματα. Συζητήσεις του Ευρωπαϊκού ΚοινοβουλίουERDDAPΤο s είναι απόλυτα ευθυγραμμισμένο με το αποκεντρωμένο, κατανεμημένο σύστημα των κέντρων δεδομένων που έχουμε στον πραγματικό κόσμο (Σκεφτείτε τις διάφορες περιοχές IOOS, ή τις διάφορες περιοχές CoastWatch, ή τα διάφορα μέρη του NCEI, ή τα 100 άλλα κέντρα δεδομένωνNOAA, ή τις διαφορετικές DAAC της NASA, ή τα 1000 των κέντρων δεδομένων σε όλο τον κόσμο) . Αντί να λένε σε όλα τα κέντρα δεδομένων του κόσμου ότι πρέπει να εγκαταλείψουν τις προσπάθειές τους και να βάλουν όλα τα δεδομένα τους σε μια κεντρική λίμνη δεδομένων. (Ακόμα και αν ήταν δυνατόν, είναι μια φρικτή ιδέα για πολλούς λόγους -- δείτε τις διάφορες αναλύσεις που δείχνουν τα πολυάριθμα πλεονεκτήματα τηςαποκεντρωμένα συστήματα) ,ERDDAPΟ σχεδιασμός λειτουργεί με τον κόσμο όπως είναι. Κάθε κέντρο δεδομένων που παράγει δεδομένα μπορεί να συνεχίσει να διατηρεί, να επιμελείται και να εξυπηρετεί τα δεδομένα τους (όπως θα έπρεπε) , και όμως, μεERDDAP™, τα δεδομένα μπορούν επίσης να είναι άμεσα διαθέσιμα από ένα κεντρικόERDDAP, χωρίς την ανάγκη διαβίβασης των δεδομένων στο κεντρικόERDDAP™ή αποθήκευση αντιγράφων των δεδομένων. Πράγματι, ένα δεδομένο σύνολο δεδομένων μπορεί να είναι ταυτόχρονα διαθέσιμο από έναERDDAP™στην οργάνωση που παρήγαγε και στην πραγματικότητα αποθηκεύει τα δεδομένα (π.χ., GoMOOS) , από έναERDDAP™στη μητρική οργάνωση (π.χ., κεντρική μονάδα IOOS) , από όλα...NOAA ERDDAP™, από μια ομοσπονδιακή κυβέρνηση όλων των ΗΠΑERDDAP™, από ένα παγκόσμιοERDDAP™ (ΓΟΥΑ) , και από εξειδικευμένοERDDAPα (π.χ.ERDDAP™σε ίδρυμα αφιερωμένο στην έρευνα HAB) , όλα ουσιαστικά στιγμιαία, και αποτελεσματικά επειδή μόνο τα μεταδεδομένα μεταφέρονται μεταξύERDDAPΌχι τα δεδομένα. Το καλύτερο από όλα, μετά το αρχικόERDDAP™στην οργάνωση καταγωγής, όλα τα άλλαERDDAPs μπορεί να συσταθεί γρήγορα (λίγες ώρες εργασίας) , με ελάχιστους πόρους (ένας εξυπηρετητής που δεν χρειάζεται RAID για αποθήκευση δεδομένων δεδομένου ότι δεν αποθηκεύει δεδομένα τοπικά) , και έτσι με πραγματικά ελάχιστο κόστος. Συγκρίνετε αυτό με το κόστος της εγκατάστασης και διατήρησης ενός συγκεντρωτικού data center με μια λίμνη δεδομένων και την ανάγκη για μια πραγματικά τεράστια, πραγματικά ακριβή, σύνδεση στο Διαδίκτυο, καθώς και το συνοδευτικό πρόβλημα του κεντρικού data center είναι ένα ενιαίο σημείο αποτυχίας. Για μένα,ERDDAPΗ αποκεντρωμένη, ομοσπονδιακή προσέγγιση είναι πολύ ανώτερη.
Σε περιπτώσεις όπου ένα δεδομένο κέντρο δεδομένων χρειάζεται πολλαπλάσιαERDDAPs για την κάλυψη της υψηλής ζήτησης,ERDDAPΟ σχεδιασμός είναι πλήρως ικανός να ταιριάζει ή να υπερβαίνει τις επιδόσεις του πολλαπλού-ταυτοποιημένου-ERDDAPS-με-ένα φορτίο-εξισορρόπηση προσέγγιση. Έχεις πάντα τη δυνατότητα να στήσειςπολλαπλών συνθέτωνERDDAPα (όπως αναφέρεται παρακάτω) , καθένα από τα οποία λαμβάνει όλα τα δεδομένα τους από άλλαERDDAPs, χωρίς εξισορρόπηση φορτίου. Σε αυτή την περίπτωση, σας συνιστώ να κάνετε ένα σημείο να δώσει σε κάθε ένα από τα σύνθεταERDDAPs ένα διαφορετικό όνομα / ταυτότητα και, αν είναι δυνατόν, την εγκατάστασή τους σε διάφορα μέρη του κόσμου (π.χ., διαφορετικές περιφέρειες AWS) , π.χ.,ERD\_ΗΠΑ\_Ανατολικά,ERD\ΗΠΑ\Δυτικά,ERD\ΙΕ,ERD\_FR,ERD\_IT, έτσι ώστε οι χρήστες συνειδητά, επανειλημμένα, εργάζονται με ένα συγκεκριμένοERDDAP, με το πρόσθετο όφελος ότι έχετε αφαιρέσει τον κίνδυνο από ένα μόνο σημείο αποτυχίας.
-
- Ναι.
Δίχτυα, συστάδες και ομοσπονδίες
Υπό πολύ βαριά χρήση, ένα μόνο αυτόνομοERDDAP™θα συναντήσει ένα ή περισσότερα από ταπεριορισμοίΌπως αναφέρεται παραπάνω, ακόμη και οι προτεινόμενες λύσεις θα είναι ανεπαρκείς. Για τέτοιες περιπτώσεις,ERDDAP™έχει χαρακτηριστικά που καθιστούν εύκολη την κατασκευή κλιμακωτών καννάβων (επίσης ονομάζεται συστάδες ή ομοσπονδίες) τουERDDAPs που επιτρέπουν στο σύστημα να χειρίζεται πολύ βαριά χρήση (π.χ. για μεγάλο data center) .
Κάνω χρήση.πλέγμαως γενική ένδειξη ενός τύπουσυστάδα υπολογιστώνόταν όλα τα μέρη μπορούν να βρίσκονται ή να μην βρίσκονται σε μία εγκατάσταση και μπορούν ή να μην λειτουργούν κεντρικά. Πλεονέκτημα του δικτύου που έχει συσταθεί, ανήκει κεντρικά και διαχειρίζεται (Σμήνη) είναι ότι επωφελούνται από οικονομίες κλίμακας (Ειδικά ο ανθρώπινος φόρτος εργασίας) και να απλοποιήσει καθιστώντας τα μέρη του συστήματος λειτουργούν καλά μαζί. Πλεονέκτημα μη εγκατεστημένων δικτύων, μη κεντρικής ιδιοκτησίας και διαχείρισης (ομοσπονδίες) είναι ότι διανέμουν τον ανθρώπινο φόρτο εργασίας και το κόστος, και μπορεί να παρέχουν κάποια πρόσθετη ανοχή ελαττωμάτων. Η λύση που προτείνω κάτω λειτουργεί καλά για όλα τα δίκτυα, συστάδα, και ομοσπονδιακές τοπογραφίες.
Η βασική ιδέα του σχεδιασμού ενός κλιμακούμενου συστήματος είναι να εντοπιστούν τα πιθανά σημεία συμφόρησης και στη συνέχεια να σχεδιαστεί το σύστημα έτσι ώστε τμήματα του συστήματος να μπορούν να αναπαραχθούν όπως απαιτείται για την ανακούφιση των σημείων συμφόρησης. Ιδανικά, κάθε αντιγραφόμενο μέρος αυξάνει γραμμικά την ικανότητα αυτού του τμήματος του συστήματος (απόδοση κλιμάκωσης) . Το σύστημα δεν είναι κλιμακωτό εκτός αν υπάρχει ένα κλιμακωτό διάλυμα για κάθε σημείο συμφόρησης.Κλιμάκωσηείναι διαφορετική από την αποδοτικότητα (πόσο γρήγορα μπορεί να γίνει μια εργασία — αποδοτικότητα των εξαρτημάτων) . Η κλιμακωσιμότητα επιτρέπει στο σύστημα να αναπτύσσεται για να χειριστεί οποιοδήποτε επίπεδο ζήτησης. Απόδοση (της κλιμάκωσης και των μερών) καθορίζει πόσους διακομιστές, κ.λπ., θα πρέπει να πληρούν ένα δεδομένο επίπεδο ζήτησης. Η αποδοτικότητα είναι πολύ σημαντική, αλλά πάντα έχει όρια. Η κλιμάκωση είναι η μόνη πρακτική λύση για την κατασκευή ενός συστήματος που μπορεί να χειριστεί πολύ Βαριά χρήση. Ιδανικά, το σύστημ α θα είναι κλιμακωτό και αποτελεσματικό.
Στόχοι
Οι στόχοι αυτού του σχεδιασμού είναι:
- Για να κάνει μια κλιμακωτή αρχιτεκτονική (ένα που είναι εύκολα επεκτάσιμο με την αντιγραφή οποιουδήποτε μέρους που γίνεται υπερφορτωμένο) . Για να γίνει ένα αποτελεσματικό σύστημα που μεγιστοποιεί τη διαθεσιμότητα και τη διέλευση των δεδομένων, δεδομένων των διαθέσιμων υπολογιστικών πόρων. (Το κόστος είναι σχεδόν πάντα ένα θέμα.)
- Για να εξισορροπηθούν οι δυνατότητες των τμημάτων του συστήματος ώστε ένα μέρος του συστήματος να μην κατακλύσει άλλο μέρος.
- Για να κάνετε μια απλή αρχιτεκτονική έτσι ώστε το σύστημα να είναι εύκολο στη δημιουργία και τη διαχείριση.
- Για να κάνει μια αρχιτεκτονική που λειτουργεί καλά με όλες τις τοπογραφίες πλέγμα.
- Να φτιάξουμε ένα σύστημα που αποτυγχάνει χαριτωμένα και με περιορισμένο τρόπο αν κάποιο μέρος γίνει υπερφορτωμένο. (Ο χρόνος που απαιτείται για την αντιγραφή ενός μεγάλου συνόλου δεδομένων θα περιορίσει πάντα την ικανότητα του συστήματος να αντιμετωπίσει ξαφνικές αυξήσεις στη ζήτηση για ένα συγκεκριμένο σύνολο δεδομένων.)
- (Εάν είναι δυνατόν) Για να φτιάξεις μια αρχιτεκτονική που δεν συνδέεται με κάποια συγκεκριμένηυπολογιστικό σύννεφουπηρεσίες ή άλλες εξωτερικές υπηρεσίες (Γιατί δεν τα χρειάζεται.) .
Συστάσεις
Οι συστάσεις μας είναι
- Βασικά, προτείνω τη δημιουργία ενός ΣύνθετουERDDAP™ ( Δ στο διάγραμμα) , η οποία είναι τακτικήERDDAP™μόνο που εξυπηρετεί δεδομένα από άλλαERDDAPΣ. Η αρχιτεκτονική του πλέγματος έχει σχεδιαστεί για να μετατοπίζει όσο το δυνατόν περισσότερη εργασία. (Χρήση ΚΜΕ, χρήση μνήμης, χρήση εύρους ζώνης) από το CompositeERDDAP™προς την άλληERDDAPΣ.
- ERDDAP™έχει δύο ειδικούς τύπους συνόλου δεδομένων,EDDGridΑπό τοErddapκαιEDD TableFromErddap, που αναφέρονται σε σύνο λα δεδομένων σε άλλαERDDAPΣ.
- Όταν το σύνθετοERDDAP™λαμβάνει αίτημα για δεδομένα ή εικόνες από αυτά τα σύνολα δεδομένων, το σύνθετοERDDAP™ ανακατευθύνσειςτα δεδομένα που ζητούνται στο άλλοERDDAP™Διακομιστής. Το αποτέλεσμα είναι:
- Αυτό είναι πολύ αποτελεσματικό. (ΚΜΕ, μνήμη και εύρος ζώνης) , γιατί διαφορετικά
- Το σύνθετοERDDAP™πρέπει να αποστείλει το αίτημα δεδομένων στο άλλοERDDAP.
- Το άλλοERDDAP™πρέπει να πάρει τα δεδομένα, αναδιαμόρφωση σε αυτό, και να διαβιβάσει τα δεδομένα στο σύνθετοERDDAP.
- Το σύνθετοERDDAP™πρέπει να λάβει τα δεδομένα (χρησιμοποιώντας επιπλέον εύρος ζώνης) , αναδιαμόρφωση σε αυτό (χρησιμοποιώντας επιπλέον χρόνο και μνήμη ΚΜΕ) , και να διαβιβάσει τα δεδομένα στο χρήστη (χρησιμοποιώντας επιπλέον εύρος ζώνης) . Με ανακατευθύνοντας το αίτημα για δεδομένα και επιτρέποντας το άλλοERDDAP™για να στείλετε την απάντηση απευθείας στο χρήστη, το σύνθετοERDDAP™Ουσιαστικά δεν ξοδεύει χρόνο CPU, μνήμη, ή εύρος ζώνης σε αιτήματα δεδομένων.
- Η ανακατεύθυνση είναι διαφανής στον χρήστη ανεξάρτητα από το λογισμικό του πελάτη (περιηγητής ή οποιοδήποτε άλλο λογισμικό ή εργαλείο γραμμής εντολών) .
- Αυτό είναι πολύ αποτελεσματικό. (ΚΜΕ, μνήμη και εύρος ζώνης) , γιατί διαφορετικά
Μέρη καννάβου
Α : Για κάθε απομακρυσμένη πηγή δεδομένων που έχει ένα υψηλό εύρος ζώνηςOPeNDAPserver, μπορείτε να συνδεθείτε απευθείας στον απομακρυσμένο server. Αν ο απομακρυσμένος εξυπηρετητής είναι έναςERDDAP™, χρήσηEDDGridΑπόErddap ή EDDTableFromERDDAPγια την εξυπηρέτηση των δεδομένων στο CompositeERDDAP. Αν ο απομακρυσμένος εξυπηρετητής είναι κάποιος άλλος τύποςDAPserver, π.χ., ΤΡΕΙΣ,Hyrax, ή GrADS, χρήσηEDDGridΑπό τον Νταπ.
B : Για κάθεERDDAP- εφικτή πηγή δεδομένων (πηγή δεδομένων από την οποίαERDDAPμπορεί να διαβάσει δεδομένα) που έχει έναν εξυπηρετητή υψηλής ζώνης, που δημιουργεί ένα άλλοERDDAP™στο δίκτυο που είναι υπεύθυνο για την εξυπηρέτηση των δεδομένων από αυτήν την πηγή δεδομένων.
- Εάν περισσότερες από μίαERDDAPΤα s δεν λαμβάνουν πολλά αιτήματα για δεδομένα, μπορείτε να τα εδραιώσετε σε έναERDDAP.
- Εάν ηERDDAP™αφιερωμένο στην λήψη δεδομένων από μια απομακρυσμένη πηγ ή λαμβάνει πάρα πολλά αιτήματα, υπάρχει ένας πειρασμός να προσθέσετε επιπλέονERDDAPs για πρόσβαση στην απομακρυσμένη πηγή δεδομένων. Σε ειδικές περιπτώσεις αυτό μπορεί να έχει νόημα, αλλά είναι πιο πιθανό ότι αυτό θα κατακλύσει την απομακρυσμένη πηγή δεδομένων (που είναι αυτοκαταστροφικό) και επίσης να αποτρέψει άλλους χρήστες από την πρόσβαση στην απομακρυσμένη πηγή δεδομένων (Που δεν είναι ωραίο.) . Σε μια τέτοια περίπτωση, σκεφτείτε να δημιουργήσετε ένα άλλοERDDAP™να εξυπηρετήσει αυτό το ένα σύνολο δεδομένων και να αντιγράψει το σύνολο δεδομένων σε αυτόERDDAPΣκληρός δίσκος (Βλέπε Γ ) , ίσως μεEDDGridΑντιγραφήή/καιEDDTableCopy.
- B Οι διακομιστές πρέπει να είναι προσιτοί στο κοινό.
Γ : Για κάθεERDDAP-able πηγή δεδομένων που έχει έναν εξυπηρετητή χαμηλού εύρους ζώνης (ή είναι μια αργή υπηρεσία για άλλους λόγους) , να εξετάσει τη δημιουργία ενός άλλουERDDAP™και αποθήκευση αντιγράφου του συνόλου δεδομένων σε αυτόERDDAPΟι σκληροί δίσκοι, ίσως μεEDDGridΑντιγραφήή/καιEDDTableCopy. Εάν περισσότερες από μίαERDDAPΤα s δεν λαμβάνουν πολλά αιτήματα για δεδομένα, μπορείτε να τα εδραιώσετε σε έναERDDAP. Γ Οι διακομιστές πρέπει να είναι προσιτοί στο κοινό.
ΣύνθετηERDDAP
Δ : Το σύνθετοERDDAP™είναι τακτικήERDDAP™μόνο που εξυπηρετεί δεδομένα από άλλαERDDAPΣ.
- Επειδή το σύνθετοERDDAP™έχει πληροφορίες στη μνήμη για όλα τα σύνολα δεδομένων, μπορεί να ανταποκριθεί γρήγορα σε αιτήματα για λίστες συνόλων δεδομένων (πλήρεις αναζητήσεις κειμένου, αναζητήσεις κατηγοριών, ο κατάλογος όλων των συνόλων δεδομένων) , και τις αιτήσεις για το έντυπο πρόσβασης ενός μεμονωμένου συνόλου δεδομένων,WMSσελίδα πληροφοριών. Αυτές είναι όλες μικρές, δυναμικά παραγόμενες, σελίδες HTML βασισμένες σε πληροφορίες που κρατούνται στη μνήμη. Οπότε οι απαντήσεις είναι πολύ γρήγορες.
- Επειδή οι αιτήσεις για πραγματικά δεδομένα γρήγορα ανακατευθύνονται στο άλλοERDDAPs, το σύνθετοERDDAP™μπορεί να ανταποκριθεί γρήγορα σε αιτήματα για πραγματικά δεδομένα χωρίς τη χρήση οποιουδήποτε χρόνου CPU, μνήμης, ή εύρους ζώνης.
- Μετατοπίζοντας όσο το δυνατόν περισσότερη εργασία (ΚΜΕ, μνήμη, εύρος ζώνης) από το CompositeERDDAP™προς την άλληERDDAPs, το σύνθετοERDDAP™μπορεί να φαίνεται ότι εξυπηρετεί δεδομένα από όλα τα σύνολα δεδομένων και ωστόσο εξακολουθεί να συμβαδίζει με πολύ μεγάλους αριθμούς αιτημάτων δεδομένων από μεγάλο αριθμό χρηστών.
- Προκαταρκτικές δοκιμές δείχνουν ότι το σύνθετοERDDAP™μπορεί να ανταποκριθεί στα περισσότερα αιτήματα σε ~1ms του χρόνου ΚΜΕ, ή 1000 αιτήματα / δευτερόλεπτο. Έτσι, ένας επεξεργαστής 8 πυρήνα θα πρέπει να είναι σε θέση να ανταποκριθεί σε περίπου 8000 αιτήματα / δευτερόλεπτο. Αν και είναι δυνατόν να οραματιστούμε εκρήξεις μεγαλύτερης δραστηριότητας που θα προκαλούσε επιβραδύνσεις, αυτό είναι πολύ αποτέλεσμα. Είναι πιθανό ότι το εύρος ζώνης του κέντρου δεδομένων θα είναι το σημείο συμφόρησης πολύ πριν το σύνθετοERDDAP™Γίνεται το εμπόδιο.
Ενημέρωση max (χρόνος) ♪ ♪
ΗEDDGrid/TableFromErddap στο σύνθετοERDDAP™αλλάζει μόνο τις αποθηκευμένες πληροφορίες του για κάθε σύνολο δεδομένων πηγής όταν το σύνολο δεδομένων πηγή είναι" επαναφόρτωσηκαι κάποιες αλλαγές μεταδεδομένων (π.χ. η μεταβλητή του χρόνουactual\_range) , με τον τρόπο αυτό προβαίνει σε κοινοποίηση συνδρομής. Εάν το σύνολο δεδομένων πηγής έχει δεδομένα που αλλάζουν συχνά (για παράδειγμα, νέα δεδομένα κάθε δευτερόλεπτο) και χρησιμοποιεί το" ενημέρωση"σύστημα για την παρατήρηση συχνών αλλαγών στα υποκείμενα δεδομένα,EDDGrid/TableFromErddap δεν θα ενημερωθεί σχετικά με αυτές τις συχνές αλλαγές μέχρι το επόμενο σύνολο δεδομένων " επαναφόρτωση", έτσι ώστε ηEDDGrid/TableFromErddap δεν θα είναι απολύτως ενημερωμένο. Μπορείτε να ελαχιστοποιήσετε αυτό το πρόβλημα αλλάζοντας το σύνολο δεδομένων της πηγής<reloadEveryNMinutes> σε μικρότερη τιμή (60; 15;) Έτσι ώστε να υπάρχουν περισσότερες κοινοποιήσεις συνδρομής για να πληροφορηθεί τοEDDGrid/TableFromErddap για να ενημερώσει τις πληροφορίες του σχετικά με το σύνολο δεδομένων πηγή.
Ή, αν το σύστημα διαχείρισης δεδομένων σας γνωρίζει πότε το σύνολο δεδομένων πηγή έχει νέα δεδομένα (π.χ., μέσω σεναρίου που αντιγράφει ένα αρχείο δεδομένων στη θέση του) , και αν αυτό δεν είναι πολύ συχνό (π.χ. κάθε 5 λεπτά, ή λιγότερο συχνές) Υπάρχει καλύτερη λύση.
- Μην το χρησιμοποιείς.<updateEveryNMillis>· για τη διατήρηση του συνόλου των δεδομένων πηγής ενημερωμένων.
- Ορισμός του συνόλου δεδομένων πηγής<reloadEveryNMinutes> σε μεγαλύτερο αριθμό (1440;) .
- Βάλε το σενάριο να επικοινωνήσει με το σύνολο δεδομένων πηγήςURL σημαίαςαμέσως μετά την αντιγραφή ενός νέου αρχείου δεδομένων στη θέση του. Αυτό θα οδηγήσει στην πλήρη ενημέρωση του συνόλου των δεδομένων πηγής και θα προκαλέσει τη δημιουργία μιας κοινοποίησης εγγραφής, η οποία θα αποσταλεί στηνEDDGrid/TableFromErddap dataset. Αυτό θα οδηγήσει στηνEDDGrid/TableFromErddap dataset για να είναι απόλυτα ενημερωμένα (Λοιπόν, μέσα σε 5 δευτερόλεπτα από την προσθήκη νέων δεδομένων) . Και όλα αυτά θα γίνουν αποτελεσματικά. (χωρίς περιττές επαναφορτίσεις συνόλου δεδομένων) .