Οι οργανισμοί χρησιμοποιούν τα δεδομένα τους για να λύσουν πολύπλοκα προβλήματα ξεκινώντας μικρά, επαναληπτικά πειράματα και βελτιώνοντας τη λύση. Αν και η δύναμη των πειραμάτων δεν μπορεί να αγνοηθεί, οι οργανισμοί πρέπει να είναι προσεκτικοί σχετικά με τη σχέση κόστους-αποτελεσματικότητας τέτοιων πειραμάτων. Εάν δαπανηθεί χρόνος για τη δημιουργία της υποκείμενης υποδομής για την ενεργοποίηση πειραμάτων, αυτό αυξάνει περαιτέρω το κόστος.
Οι προγραμματιστές χρειάζονται ένα ολοκληρωμένο περιβάλλον ανάπτυξης (IDE) για την εξερεύνηση δεδομένων και τον εντοπισμό σφαλμάτων των ροών εργασίας, καθώς και διαφορετικά υπολογιστικά προφίλ για την εκτέλεση αυτών των ροών εργασίας. Αν επιλέξετε EMR Αμαζονίου για τέτοιες περιπτώσεις χρήσης, μπορείτε να χρησιμοποιήσετε ένα IDE που ονομάζεται Amazon EMR Studio για εξερεύνηση δεδομένων, μετασχηματισμό, έλεγχο έκδοσης και εντοπισμό σφαλμάτων και εκτέλεση εργασιών Spark για επεξεργασία μεγάλου όγκου δεδομένων. Ανάπτυξη Amazon EMR στο Amazon EKS απλοποιεί τη διαχείριση, μειώνει το κόστος και βελτιώνει την απόδοση. Ωστόσο, ένας μηχανικός δεδομένων ή ένας διαχειριστής πληροφορικής πρέπει να αφιερώσει χρόνο για να δημιουργήσει την υποκείμενη υποδομή, να διαμορφώσει τις παραμέτρους της ασφάλειας και να δημιουργήσει ένα διαχειριζόμενο τελικό σημείο στο οποίο μπορούν να συνδεθούν οι χρήστες. Αυτό σημαίνει ότι τέτοια έργα πρέπει να περιμένουν έως ότου αυτοί οι ειδικοί δημιουργήσουν την υποδομή.
Σε αυτήν την ανάρτηση, δείχνουμε πώς ένας μηχανικός δεδομένων ή ένας διαχειριστής πληροφορικής μπορεί να το χρησιμοποιήσει Αρχιτεκτονική αναφοράς AWS Analytics (ARA) για να επιταχύνετε την ανάπτυξη της υποδομής, εξοικονομώντας χρόνο και χρήμα στον οργανισμό σας που ξοδεύετε σε αυτά τα πειράματα ανάλυσης δεδομένων. Χρησιμοποιούμε τη βιβλιοθήκη για να αναπτύξουμε ένα Amazon Elastic Kubernetes σύμπλεγμα (Amazon EKS), διαμορφώστε το ώστε να χρησιμοποιεί το Amazon EMR στο EKS και αναπτύξτε ένα εικονικό σύμπλεγμα και διαχειριζόμενα τελικά σημεία και EMR Studio. Στη συνέχεια, μπορείτε είτε να εκτελέσετε εργασίες στο εικονικό σύμπλεγμα είτε να εκτελέσετε διερευνητική ανάλυση δεδομένων με Σημειωματάρια Jupyter στο Amazon EMR Studio και στο Amazon EMR στο EKS. Η παρακάτω αρχιτεκτονική αντιπροσωπεύει την υποδομή που θα αναπτύξετε με το AWS Analytics Reference Architecture.
Προϋποθέσεις
Για να ακολουθήσετε, θα πρέπει να έχετε έναν λογαριασμό AWS που να είναι συνδεδεμένος με το Κιτ ανάπτυξης AWS Cloud (AWS CDK). Για οδηγίες, ανατρέξτε στο Εκκίνηση. Το παρακάτω σεμινάριο χρησιμοποιεί TypeScript και απαιτεί έκδοση 2 ή μεταγενέστερη του AWS CDK. Εάν δεν έχετε εγκατεστημένο το AWS CDK, ανατρέξτε στο Εγκαταστήστε το AWS CDK.
Ρυθμίστε ένα έργο AWS CDK
Για να αναπτύξετε πόρους χρησιμοποιώντας το ARA, πρέπει πρώτα να ρυθμίσετε ένα έργο AWS CDK και να εγκαταστήσετε τη βιβλιοθήκη ARA. Ολοκληρώστε τα παρακάτω βήματα:
- Δημιουργήστε ένα φάκελο με το όνομα emr-eks-app:
- Εκκινήστε ένα έργο AWS CDK σε έναν κενό κατάλογο και εκτελέστε την ακόλουθη εντολή:
- Εγκαταστήστε τη βιβλιοθήκη ARA:
- Στο lib/emr-eks-app.ts, εισαγάγετε τη βιβλιοθήκη ARA ως εξής. Η πρώτη γραμμή καλεί τη βιβλιοθήκη ARA, η δεύτερη ορίζει τις πολιτικές AWS Identity and Access Management (IAM):
Δημιουργήστε και ορίστε ένα σύμπλεγμα EKS και υπολογιστική χωρητικότητα
Για να δημιουργήσετε ένα EMR στο EKS εικονικό σύμπλεγμα, πρέπει πρώτα να αναπτύξετε ένα σύμπλεγμα EKS. Η βιβλιοθήκη ARA ορίζει μια κατασκευή που ονομάζεται EmrEksCluster
. Η κατασκευή παρέχει ένα σύμπλεγμα EKS, που επιτρέπει Ρόλοι IAM για λογαριασμούς υπηρεσιώνκαι αναπτύσσει ένα σύνολο υποστηρικτικών ελεγκτών όπως ο ελεγκτής διαχείρισης πιστοποιητικών (που απαιτείται από το διαχειριζόμενο τελικό σημείο που χρησιμοποιείται από το Amazon EMR Studio) καθώς και έναν αυτόματο βαθμωτή κλιμάκωσης συμπλέγματος για να έχει ένα ελαστικό σύμπλεγμα και να εξοικονομεί κόστος όταν δεν υποβάλλεται εργασία στο σύμπλεγμα .
In lib/emr-eks-app.ts
, προσθέστε την ακόλουθη γραμμή:
Για να μάθετε περισσότερα σχετικά με τις ιδιότητες που μπορείτε να προσαρμόσετε, ανατρέξτε στο EmrEksClusterProps. Υπάρχουν δύο υποχρεωτικές παράμετροι EmrEksCluster
κατασκεύασμα: Το πρώτο είναι eksAdminRoleArn
Ο ρόλος είναι υποχρεωτικός και είναι ο ρόλος που χρησιμοποιείτε για να αλληλεπιδράσετε με το επίπεδο ελέγχου Kubernetes. Αυτός ο ρόλος πρέπει να έχει διαχειριστικές άδειες δημιουργήστε ή ενημερώστε το σύμπλεγμα. Η δεύτερη παράμετρος είναι autoscaling
, αυτή η παράμετρος σάς επιτρέπει να επιλέξετε τον μηχανισμό αυτόματης κλιμάκωσης, είτε Ξυλουργός or εγγενές Kubernetes Cluster Autoscaler. Σε αυτό το ιστολόγιο θα χρησιμοποιήσουμε το Karpenter και προτείνουμε τη χρήση του λόγω ταχύτερης αυτόματης κλιμάκωσης, απλοποιημένης διαχείρισης κόμβων και παροχής. Τώρα είστε έτοιμοι να ορίσετε την υπολογιστική χωρητικότητα.
Ένας τρόπος για να ορίσετε τους κόμβους εργαζομένων στο Amazon EKS είναι να χρησιμοποιήσετε διαχειριζόμενες ομάδες κόμβων. Χρησιμοποιούμε μια ομάδα κόμβων που ονομάζεται tooling
, που φιλοξενεί το coredns, ελεγκτής εισόδου, διαχειριστής πιστοποιητικών, Ξυλουργός και οποιοδήποτε άλλο pod που είναι απαραίτητο για την εκτέλεση EMR σε εργασίες EKS ή ManagedEndpoint. Ορίζουμε επίσης προεπιλογή Karpenter
Προμηθευτές που ορίζουν την ικανότητα που θα χρησιμοποιηθεί για θέσεις εργασίας που υποβάλλονται από το EMR στο EKS. Αυτοί οι προμηθευτές είναι βελτιστοποιημένοι για διαφορετικές περιπτώσεις χρήσης Spark (κρίσιμες εργασίες, μη κρίσιμες εργασίες, πειραματισμοί και διαδραστικές συνεδρίες). Η κατασκευή σάς επιτρέπει επίσης να υποβάλετε τον δικό σας προμηθευτή που ορίζεται από ένα μανιφέστο Kubernetes μέσω μιας μεθόδου που ονομάζεται addKarpenterProvisioner
. Ας συζητήσουμε τους προκαθορισμένους Προμηθευτές.
Προεπιλεγμένες διαμορφώσεις παρόχων
Οι προεπιλεγμένοι προμηθευτές έχουν ρυθμιστεί για γρήγορο πειραματισμό και είναι δημιουργείται πάντα από προεπιλογή. Ωστόσο, εάν δεν θέλετε να τα χρησιμοποιήσετε, μπορείτε να ορίσετε το defaultNodeGroups
παράμετρος για την false
στο EmrEksCluster
ιδιότητες κατά τη δημιουργία. Οι Προμηθευτές ορίζονται ως εξής και δημιουργούνται σε καθένα από τα υποδίκτυα που χρησιμοποιούνται από το Amazon EKS:
- Κρίσιμος προμηθευτής – Είναι αφιερωμένο στην υποστήριξη θέσεων εργασίας με επιθετικά SLA και είναι ευαίσθητα στο χρόνο. Ο πάροχος χρησιμοποιεί Παρουσίες κατ' απαίτηση, οι οποίες δεν διακόπτονται, σε αντίθεση με τις Spot Instances, και ο κύκλος ζωής τους ακολουθεί μια από τις εργασίες. Οι κόμβοι χρησιμοποιούν χώρους αποθήκευσης, οι οποίοι είναι δίσκοι NVMe φυσικά συνδεδεμένοι στον κεντρικό υπολογιστή, οι οποίοι προσφέρουν υψηλή απόδοση I/O που επιτρέπει καλύτερη απόδοση του Spark, επειδή χρησιμοποιείται ως προσωρινός χώρος αποθήκευσης για διαρροή και ανακατεύθυνση δίσκου. Οι τύποι παρουσιών που χρησιμοποιούνται στον κόμβο είναι της οικογένειας m6gd. Οι περιπτώσεις χρησιμοποιούν το AWS Graviton επεξεργαστή, που προσφέρει καλύτερη τιμή/απόδοση από τους επεξεργαστές x86. Για να χρησιμοποιήσετε αυτόν τον προμηθευτή στις εργασίες σας, μπορείτε να χρησιμοποιήσετε τα ακόλουθα διαμόρφωση δείγματος, η οποία αναφέρεται στο παράκαμψη διαμόρφωσης του EMR σχετικά με την υποβολή θέσης εργασίας EKS.
- Μη κρίσιμος προμηθευτής – Αυτός ο Προμηθευτής αξιοποιεί Spot Instances για εξοικονόμηση κόστους για εργασίες που δεν είναι ευαίσθητες στο χρόνο ή εργασίες που χρησιμοποιούνται για πειράματα. Αυτός ο κόμβος χρησιμοποιεί Spot Instances επειδή οι εργασίες δεν είναι κρίσιμες και μπορούν να διακοπούν. Αυτές οι περιπτώσεις μπορούν να διακοπούν εάν το στιγμιότυπο επανακτηθεί. Οι τύποι παρουσιών που χρησιμοποιούνται στον κόμβο είναι της οικογένειας m6gd, το πρόγραμμα οδήγησης είναι On-Demand και οι εκτελεστές βρίσκονται σε επί τόπου στιγμιότυπα.
- Προμηθευτής φορητών υπολογιστών – Ο Προμηθευτής προορίζεται για την εκτέλεση διαχειριζόμενων τελικών σημείων που χρησιμοποιούνται από το Amazon EMR Studio για εξερεύνηση δεδομένων χρησιμοποιώντας το Amazon EMR στο EKS. Τα στιγμιότυπα είναι της οικογένειας t3 και είναι On-Demand για οδηγό και Spot Instances για εκτελεστές για να διατηρηθεί το κόστος χαμηλό. Εάν διακοπούν οι περιπτώσεις εκτελεστών, ξεκινούν νέες από την Karpenter. Εάν οι παρουσίες του εκτελεστή διακόπτονται πολύ συχνά, μπορείτε να ορίσετε τις δικές σας που χρησιμοποιούν παρουσίες κατ' απαίτηση.
Ο ακόλουθος σύνδεσμος παρέχει περισσότερες λεπτομέρειες σχετικά με τον τρόπο ορισμού του καθενός από τους παρόχους. Μία ιδιότητα εισαγωγής που ορίζεται στους προεπιλεγμένους προμηθευτές είναι ότι υπάρχει μία για κάθε AZ. Αυτό είναι σημαντικό γιατί σας επιτρέπει να μειώσετε το κόστος μεταφοράς δικτύου μεταξύ AZ όταν το Spark εκτελεί ανακατεύθυνση.
Για αυτήν την ανάρτηση, χρησιμοποιούμε τους προεπιλεγμένους προμηθευτές, επομένως δεν χρειάζεται να προσθέσετε γραμμές κώδικα για αυτήν την ενότητα. Εάν θέλετε να προσθέσετε τους δικούς σας Προμηθευτές, μπορείτε να αξιοποιήσετε τη μέθοδο addKarpenterProvisioner
για να εφαρμόσετε τις δικές σας δηλώσεις. Μπορείτε να χρησιμοποιήσετε βοηθητικές μεθόδους σε Utils
τάξη σαν readYamlDocument
για να διαβάσετε το έγγραφο YAML και loadYaml
φορτώστε αρχεία YAML και περάστε τα ως ορίσματα σε addKarpenterProvisioner
μέθοδος.
Αναπτύξτε το εικονικό σύμπλεγμα και έναν ρόλο εκτέλεσης
Ένα εικονικό σύμπλεγμα είναι ένας χώρος ονομάτων Kubernetes στον οποίο είναι καταχωρημένο το Amazon EMR. όταν υποβάλλετε μια εργασία, οι ομάδες προγραμμάτων οδήγησης και εκτελεστής εκτελούνται στον συσχετισμένο χώρο ονομάτων. ο EmrEksCluster
Η κατασκευή προσφέρει μια μέθοδο που ονομάζεται addEmrVirtualCluster
, το οποίο δημιουργεί το εικονικό σύμπλεγμα για εσάς. Η μέθοδος παίρνει EmrVirtualClusterOptions
ως παράμετρος, η οποία έχει τα ακόλουθα χαρακτηριστικά:
- όνομα – Το όνομα του εικονικού σας συμπλέγματος.
- δημιουργία χώρου ονομάτων – Ένα προαιρετικό πεδίο που δημιουργεί τον χώρο ονομάτων EKS. Αυτό είναι τύπου Boolean και από προεπιλογή δεν δημιουργεί ξεχωριστό χώρο ονομάτων EKS, επομένως το εικονικό σας σύμπλεγμα δημιουργείται στον προεπιλεγμένο χώρο ονομάτων.
- eksNamespace – Το όνομα του χώρου ονομάτων EKS που θα συνδεθεί με το εικονικό σύμπλεγμα EMR. Εάν δεν παρέχεται χώρος ονομάτων, η κατασκευή χρησιμοποιεί τον προεπιλεγμένο χώρο ονομάτων.
- In
lib/emr-eks-app.ts
, προσθέστε την ακόλουθη γραμμή για να δημιουργήσετε το εικονικό σας σύμπλεγμα:Τώρα δημιουργούμε τον ρόλο εκτέλεσης, ο οποίος είναι ένας ρόλος IAM που χρησιμοποιείται από το πρόγραμμα οδήγησης και τον εκτελεστή για την αλληλεπίδραση με τις υπηρεσίες AWS. Προτού μπορέσουμε να δημιουργήσουμε τον ρόλο εκτέλεσης για το Amazon EMR, πρέπει πρώτα να δημιουργήσουμε το
ManagedPolicy
. Λάβετε υπόψη ότι στον παρακάτω κώδικα, δημιουργούμε μια πολιτική που επιτρέπει την πρόσβαση στον κάδο της υπηρεσίας απλής αποθήκευσης Amazon (Amazon S3) και στα αρχεία καταγραφής Amazon CloudWatch. - In
lib/emr-eks-app.ts
, προσθέστε την ακόλουθη γραμμή για να δημιουργήσετε την πολιτική:Εάν θέλετε να χρησιμοποιήσετε τον Κατάλογο δεδομένων κόλλας AWS, προσθέστε την άδειά του στην προηγούμενη πολιτική.
Τώρα δημιουργούμε τον ρόλο εκτέλεσης για το Amazon EMR στο EKS χρησιμοποιώντας την πολιτική που ορίστηκε στο προηγούμενο βήμα χρησιμοποιώντας το
createExecutionRole
μέθοδος παραδείγματος. Στη συνέχεια, οι ομάδες προγραμμάτων οδήγησης και εκτελεστής μπορούν να αναλάβουν αυτόν τον ρόλο για πρόσβαση και επεξεργασία δεδομένων. Το εύρος του ρόλου έχει τέτοιο τρόπο ώστε μόνο οι ομάδες στον χώρο ονομάτων του εικονικού συμπλέγματος μπορούν να τον υποθέσουν. Για να μάθετε περισσότερα σχετικά με τη συνθήκη που εφαρμόζεται από αυτήν τη μέθοδο για περιορισμό της πρόσβασης στο ρόλο μόνο σε ομάδες διαφημίσεων που δημιουργούνται από το Amazon EMR στο EKS στον χώρο ονομάτων του εικονικού συμπλέγματος, ανατρέξτε στην ενότητα Χρήση ρόλων εκτέλεσης εργασιών με το Amazon EMR στο EKS. - In
lib/emr-eks-app.ts
, προσθέστε την ακόλουθη γραμμή για να δημιουργήσετε τον ρόλο εκτέλεσης:Ο προηγούμενος κώδικας παράγει έναν ρόλο IAM που ονομάζεται
execRoleJob
με την πολιτική IAM που ορίζεται στοemrekspolicy
και εύρος στον χώρο ονομάτωνdataanalysis
. - Τέλος, εξάγουμε παραμέτρους που είναι σημαντικές για την εκτέλεση της εργασίας:
Αναπτύξτε το Amazon EMR Studio και τους χρήστες παροχής
Για να αναπτύξετε ένα EMR Studio για εξερεύνηση δεδομένων και δημιουργία εργασιών, η βιβλιοθήκη ARA έχει μια κατασκευή που ονομάζεται NotebookPlatform
. Αυτή η κατασκευή σάς επιτρέπει να αναπτύξετε όσα EMR Studios χρειάζεστε (εντός του ορίου λογαριασμού) και να τα ρυθμίσετε με τη λειτουργία ελέγχου ταυτότητας που είναι κατάλληλη για εσάς και να τους εκχωρήσετε χρήστες. Για να μάθετε περισσότερα σχετικά με τις λειτουργίες ελέγχου ταυτότητας που είναι διαθέσιμες στο Amazon EMR Studio, ανατρέξτε στο Επιλέξτε μια λειτουργία ελέγχου ταυτότητας για το Amazon EMR Studio.
Η κατασκευή δημιουργεί όλους τους απαραίτητους ρόλους και πολιτικές IAM που απαιτούνται από το Amazon EMR Studio. Δημιουργεί επίσης έναν κάδο S3 όπου όλα τα notebook αποθηκεύονται από το Amazon EMR Studio. Ο κάδος είναι κρυπτογραφημένος με α κλειδί διαχείρισης πελατών (CMK) που δημιουργείται από τη στοίβα CDK AWS. Τα παρακάτω βήματα σάς δείχνουν πώς να δημιουργήσετε το δικό σας EMR Studio με την κατασκευή.
Η κατασκευή της πλατφόρμας του σημειωματάριου παίρνει NotebookPlatformProps
ως ιδιότητα, η οποία σας επιτρέπει να ορίσετε το EMR Studio, έναν χώρο ονομάτων, το όνομα του EMR Studio και τη λειτουργία ελέγχου ταυτότητας.
- In
lib/emr-eks-app.ts
, προσθέστε την ακόλουθη γραμμή:Για αυτήν την ανάρτηση, χρησιμοποιούμε χρήστες IAM, ώστε να μπορείτε να την αναπαράγετε εύκολα στον δικό σας λογαριασμό. Ωστόσο, εάν έχετε ήδη την ομοσπονδία IAM ή την ενιαία σύνδεση (SSO), μπορείτε να τις χρησιμοποιήσετε αντί για τους χρήστες IAM. Για να μάθετε περισσότερα σχετικά με τις παραμέτρους του
NotebookPlatformProps
, αναφέρομαι σε NotebookPlatformProps.Στη συνέχεια, πρέπει να δημιουργήσουμε και να εκχωρήσουμε χρήστες στο Amazon EMR Studio. Για αυτό, η κατασκευή έχει μια μέθοδο που ονομάζεται
addUser
που λαμβάνει μια λίστα χρηστών και είτε τους εκχωρεί στο Amazon EMR Studio σε περίπτωση SSO είτε ενημερώνει την πολιτική IAM ώστε να επιτρέπει την πρόσβαση στο Amazon EMR Studio για τους παρεχόμενους χρήστες IAM. Ο χρήστης μπορεί επίσης να έχει πολλαπλά διαχειριζόμενα τελικά σημεία και κάθε χρήστης μπορεί να ορίσει την έκδοση EMR του Amazon. Μπορούν να χρησιμοποιήσουν ένα διαφορετικό σύνολο παρουσιών Amazon Elastic Compute Cloud (Amazon EC2) και διαφορετικά δικαιώματα χρησιμοποιώντας ρόλους εκτέλεσης εργασιών. - In
lib/emr-eks-app.ts
, προσθέστε την ακόλουθη γραμμή:Στον προηγούμενο κώδικα, για λόγους συντομίας, χρησιμοποιούμε ξανά την ίδια πολιτική IAM που δημιουργήσαμε στον ρόλο εκτέλεσης.
Σημειώστε ότι η κατασκευή βελτιστοποιεί τον αριθμό των διαχειριζόμενων τελικών σημείων που δημιουργούνται. Εάν δύο τελικά σημεία έχουν το ίδιο όνομα, τότε δημιουργείται μόνο ένα.
- Τώρα που έχουμε ορίσει την ανάπτυξή μας, μπορούμε να την αναπτύξουμε:
Μπορείτε να βρείτε ένα δείγμα έργου που περιέχει όλα τα βήματα της διαδρομής στο παρακάτω GitHub Αποθήκη.
Όταν ολοκληρωθεί η ανάπτυξη, η έξοδος περιέχει τον κάδο S3 που περιέχει τα στοιχεία για podTemplate
, ο σύνδεσμος για το EMR Studio και το αναγνωριστικό εικονικού συμπλέγματος EMR Studio. Το ακόλουθο στιγμιότυπο οθόνης δείχνει την έξοδο του AWS CDK μετά την ολοκλήρωση της ανάπτυξης.
Υποβολή εργασιών
Επειδή χρησιμοποιούμε τους προεπιλεγμένους προμηθευτές, θα χρησιμοποιήσουμε το podTemplate
που ορίζεται από την κατασκευή που είναι διαθέσιμη στο Αποθετήριο ARA GitHub. Αυτά φορτώνονται για εσάς από την κατασκευή σε έναν κάδο S3 που ονομάζεται <clustername>-emr-eks-assets
; χρειάζεται μόνο να αναφερθείτε σε αυτά στην εργασία σας στο Spark. Σε αυτήν την εργασία, χρησιμοποιείτε επίσης τις παραμέτρους εργασίας στην έξοδο στο τέλος της ανάπτυξης του AWS CDK. Αυτές οι παράμετροι σάς επιτρέπουν να χρησιμοποιήσετε τον Κατάλογο δεδομένων κόλλας AWS και να εφαρμόσετε βέλτιστες πρακτικές Spark στο Kubernetes, όπως dynamicAllocation
και συνεγκατάσταση λοβών. Στο τέλος του cdk deploy
Το ARA θα παράγει διαμορφώσεις δειγμάτων εργασιών με τις βέλτιστες πρακτικές που αναφέρονται πριν τις οποίες μπορείτε να χρησιμοποιήσετε για να υποβάλετε μια εργασία. Μπορείτε να υποβάλετε μια θέση εργασίας ως εξής.
Μια εκτέλεση εργασίας είναι μια μονάδα εργασίας, όπως ένα αρχείο Spark JAR που υποβάλλεται στο EMR στο σύμπλεγμα EKS. Ξεκινάμε μια δουλειά χρησιμοποιώντας το start-job-run
εντολή. Σημείωση μπορείτε να χρησιμοποιήσετε SparkSubmitParameters
για να καθορίσετε τη διαδρομή Amazon S3 προς το πρότυπο pod, όπως φαίνεται στην ακόλουθη εντολή:
Ο κώδικας παίρνει τις ακόλουθες τιμές:
- – Το αναγνωριστικό εικονικού συμπλέγματος EMR
- – Το όνομα της εργασίας σας στο Spark
- – Ο ρόλος εκτέλεσης που δημιουργήσατε
- – Το Amazon S3 URI της εργασίας σας στο Spark
- – Το Amazon S3 URI του προτύπου προγράμματος οδήγησης, το οποίο λαμβάνετε από την έξοδο AWS CDK
- – Το Amazon S3 URI του προτύπου executor pod
- – Το όνομα της ομάδας καταγραφής CloudWatch
- – Το πρόθεμά σας ροής καταγραφής CloudWatch
Μπορείτε να μεταβείτε στην κονσόλα Amazon EMR για να ελέγξετε την κατάσταση της εργασίας σας και να προβάλετε αρχεία καταγραφής. Μπορείτε επίσης να ελέγξετε την κατάσταση εκτελώντας το describe-job-run
εντολή:
Εξερευνήστε δεδομένα χρησιμοποιώντας το Amazon EMR Studio
Σε αυτήν την ενότητα, δείχνουμε πώς μπορείτε να δημιουργήσετε έναν χώρο εργασίας στο Amazon EMR Studio και να συνδεθείτε στο διαχειριζόμενο τελικό σημείο του Amazon EKS από τον χώρο εργασίας. Από την έξοδο, χρησιμοποιήστε τη σύνδεση στο Amazon EMR Studio για να πλοηγηθείτε στην ανάπτυξη του EMR Studio. Πρέπει να συνδεθείτε με το IAM όνομα χρήστη παρείχατε στο addUser
μέθοδος.
Δημιουργήστε ένα χώρο εργασίας
Για να δημιουργήσετε έναν χώρο εργασίας, ολοκληρώστε τα παρακάτω βήματα:
- Συνδεθείτε στο EMR Studio που δημιουργήθηκε από το AWS CDK.
- Επιλέξτε Δημιουργία χώρου εργασίας.
- Εισαγάγετε ένα όνομα χώρου εργασίας και μια προαιρετική περιγραφή.
- Αγορά Επιτρέψτε Συνεργασία χώρου εργασίας εάν θέλετε να εργαστείτε με άλλους χρήστες του Studio σε αυτόν τον χώρο εργασίας σε πραγματικό χρόνο.
- Επιλέξτε Δημιουργία χώρου εργασίας.
Αφού δημιουργήσετε τον χώρο εργασίας, επιλέξτε τον από τη λίστα των χώρων εργασίας για να ανοίξετε το περιβάλλον JupyterLab.
Το παρακάτω στιγμιότυπο οθόνης δείχνει πώς φαίνεται το τερματικό. Για περισσότερες πληροφορίες σχετικά με τη διεπαφή χρήστη, ανατρέξτε στο Κατανοήστε τη διεπαφή χρήστη του Workspace.
Συνδεθείτε σε ένα EMR στο διαχειριζόμενο τελικό σημείο EKS
Μπορείτε εύκολα να συνδεθείτε στο EMR στο διαχειριζόμενο τελικό σημείο EKS από το Workspace.
- Στο παράθυρο πλοήγησης, στο Συστοιχίες μενού, επιλέξτε Το σύμπλεγμα EMR στο EKS for Τύπος συμπλέγματος.
Τα εικονικά συμπλέγματα εμφανίζονται στο αναπτυσσόμενο μενού EMR Cluster on EKS και το τελικό σημείο εμφανίζεται στο αναπτυσσόμενο μενού Endpoint. Εάν υπάρχουν πολλά τελικά σημεία, εμφανίζονται εδώ και μπορείτε εύκολα να κάνετε εναλλαγή μεταξύ των τελικών σημείων από τον χώρο εργασίας. - Επιλέξτε το κατάλληλο τελικό σημείο και επιλέξτε Επισύναψη.
Εργαστείτε με ένα σημειωματάριο
Τώρα μπορείτε να ανοίξετε ένα σημειωματάριο και να συνδεθείτε σε έναν προτιμώμενο πυρήνα για να κάνετε τις εργασίες σας. Για παράδειγμα, μπορείτε να επιλέξετε έναν πυρήνα PySpark, όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης.
Εξερευνήστε τα δεδομένα σας
Το πρώτο βήμα της άσκησης εξερεύνησης δεδομένων είναι να δημιουργήσουμε μια περίοδο λειτουργίας Spark και στη συνέχεια να φορτώσουμε το σύνολο δεδομένων ταξί της Νέας Υόρκης από τον κάδο S3 σε ένα πλαίσιο δεδομένων. Χρησιμοποιήστε το ακόλουθο μπλοκ κώδικα για να φορτώσετε τα δεδομένα σε ένα πλαίσιο δεδομένων. Αντιγράψτε το Amazon S3 URI για την τοποθεσία όπου βρίσκεται το σύνολο δεδομένων στο Amazon S3.
Αφού φορτώσουμε τα δεδομένα σε ένα πλαίσιο δεδομένων, αντικαθιστούμε τα δεδομένα του current_date
στήλη με την πραγματική τρέχουσα ημερομηνία, μετρήστε τον αριθμό των σειρών και αποθηκεύστε τα δεδομένα σε ένα αρχείο Parquet:
Το παρακάτω στιγμιότυπο οθόνης δείχνει το αποτέλεσμα του φορητού υπολογιστή μας που εκτελείται στο Amazon EMR Studio και του PySpark που εκτελείται στο Amazon EMR στο EKS.
εκκαθάριση
Για να καθαρίσετε μετά από αυτήν την ανάρτηση, τρέξτε cdk destroy
.
Συμπέρασμα
Σε αυτήν την ανάρτηση, δείξαμε πώς μπορείτε να χρησιμοποιήσετε το ARA για να αναπτύξετε γρήγορα μια υποδομή ανάλυσης δεδομένων και να αρχίσετε να πειραματίζεστε με τα δεδομένα σας. Μπορείτε να βρείτε το πλήρες παράδειγμα που αναφέρεται σε αυτήν την ανάρτηση στο Αποθετήριο GitHub. Η Αρχιτεκτονική αναφοράς του AWS Analytics εφαρμόζει κοινό μοτίβο Analytics και βέλτιστες πρακτικές AWS για να σας προσφέρει έτοιμες προς χρήση κατασκευές για τα πειράματά σας. Ένα από τα μοτίβα είναι το πλέγμα δεδομένων, το οποίο μπορείτε να συμβουλευτείτε πώς να το χρησιμοποιήσετε σε αυτό ανάρτηση.
Μπορείτε επίσης να εξερευνήσετε άλλα κατασκευές που προσφέρονται σε αυτή τη βιβλιοθήκη να πειραματιστείτε με τις υπηρεσίες AWS Analytics πριν μεταφέρετε τον φόρτο εργασίας σας για παραγωγή.
Σχετικά με τους Συγγραφείς
Lotfi Mouhib είναι Senior Solutions Architect που εργάζεται για την ομάδα του Δημόσιου Τομέα με τις Υπηρεσίες Web της Amazon. Βοηθά τους πελάτες του δημόσιου τομέα σε όλη την EMEA να πραγματοποιήσουν τις ιδέες τους, να δημιουργήσουν νέες υπηρεσίες και να καινοτομήσουν για τους πολίτες. Στον ελεύθερο χρόνο του, ο Λότφι απολαμβάνει το ποδήλατο και το τρέξιμο.
Sandipan Bhaumik είναι Senior Analytics Specialist Solutions Architect με έδρα το Λονδίνο. Έχει συνεργαστεί με πελάτες σε διαφορετικούς κλάδους όπως Τραπεζικές και Χρηματοοικονομικές Υπηρεσίες, Υγειονομική περίθαλψη, Ισχύς και Υπηρεσίες κοινής ωφέλειας, Βιομηχανία και Λιανικό εμπόριο βοηθώντας τους να λύσουν περίπλοκες προκλήσεις με πλατφόρμες δεδομένων μεγάλης κλίμακας. Στην AWS εστιάζει σε στρατηγικούς λογαριασμούς στο Ηνωμένο Βασίλειο και την Ιρλανδία και βοηθά τους πελάτες να επιταχύνουν το ταξίδι τους στο cloud και να καινοτομήσουν χρησιμοποιώντας υπηρεσίες ανάλυσης AWS και μηχανικής μάθησης. Του αρέσει να παίζει μπάντμιντον και να διαβάζει βιβλία.
- SEO Powered Content & PR Distribution. Ενισχύστε σήμερα.
- Platoblockchain. Web3 Metaverse Intelligence. Ενισχύθηκε η γνώση. Πρόσβαση εδώ.
- πηγή: https://aws.amazon.com/blogs/big-data/accelerate-your-data-exploration-and-experimentation-with-the-aws-analytics-reference-architecture-library/
- 1
- 10
- 100
- 11
- 6G
- 7
- 9
- a
- Σχετικά
- επιταχύνουν
- πρόσβαση
- Διαχείριση Πρόσβασης
- Λογαριασμός
- Λογαριασμοί
- απέναντι
- ενεργειών
- Προσθέτει
- διοικητικός
- Μετά το
- επιθετικός
- Όλα
- κατανομή
- επιτρέπει
- ήδη
- Αν και
- Amazon
- Amazon EC2
- EMR Αμαζονίου
- Amazon υπηρεσίες Web
- ανάλυση
- analytics
- και
- Apache
- app
- εμφανίζομαι
- Εφαρμογή
- κατάλληλος
- αρχιτεκτονική
- επιχειρήματα
- Ενεργητικό
- συσχετισμένη
- αποδίδουν
- γνωρίσματα
- Πιστοποίηση
- συγγραφικός
- αυτόματη
- διαθέσιμος
- AWS
- Κόλλα AWS
- Διαχείριση ταυτότητας και πρόσβασης AWS (IAM)
- Τράπεζες
- βασίζονται
- επειδή
- πριν
- παρακάτω
- ΚΑΛΎΤΕΡΟΣ
- βέλτιστες πρακτικές
- Καλύτερα
- μεταξύ
- Αποκλεισμός
- Blog
- Βιβλία
- χτίζω
- Builder
- που ονομάζεται
- κλήσεις
- Χωρητικότητα
- περίπτωση
- περιπτώσεις
- κατάλογος
- προσεκτικός
- CD
- πιστοποιητικό
- προκλήσεις
- έλεγχος
- Επιλέξτε
- Οι πολίτες
- τάξη
- ταξινόμηση
- πελάτης
- Backup
- συστάδα
- κωδικός
- Στήλη
- COM
- Κοινός
- πλήρης
- συγκρότημα
- Υπολογίστε
- κατάσταση
- Connect
- πρόξενος
- κατασκευάσει
- Περιέχει
- έλεγχος
- ελεγκτής
- Κόστος
- Δικαστικά έξοδα
- δημιουργία
- δημιουργήθηκε
- δημιουργεί
- δημιουργία
- δημιουργία
- κρίσιμης
- Ρεύμα
- Πελάτες
- προσαρμόσετε
- ημερομηνία
- ανάλυση δεδομένων
- Δεδομένα Analytics
- μηχανικός δεδομένων
- Ημερομηνία
- ημερομηνία
- αφιερωμένο
- Προεπιλογή
- Ορίζει
- παρατάσσω
- ανάπτυξη
- ανάπτυξη
- αναπτύσσεται
- περιγραφή
- καθέκαστα
- Ανάπτυξη
- διαφορετικές
- συζητήσουν
- έγγραφο
- Όχι
- Μην
- οδηγός
- κάθε
- εύκολα
- αποτέλεσμα
- είτε
- ΕΜΕΑ
- ενεργοποιημένη
- δίνει τη δυνατότητα
- ενεργοποίηση
- κρυπτογραφημένα
- Τελικό σημείο
- μηχανικός
- Περιβάλλον
- Αιθέρας (ΕΤΗ)
- παράδειγμα
- εκτέλεση
- Άσκηση
- πείραμα
- εμπειρογνώμονες
- εξερεύνηση
- Διερευνητική Ανάλυση Δεδομένων
- διερευνήσει
- εργοστάσιο
- οικογένεια
- γρηγορότερα
- Ομοσπονδία
- πεδίο
- Αρχεία
- Αρχεία
- οικονομικός
- των χρηματοπιστωτικών υπηρεσιών
- Εύρεση
- Όνομα
- εστιάζει
- ακολουθήστε
- Εξής
- εξής
- ΠΛΑΙΣΙΟ
- από
- πλήρη
- λειτουργίες
- περαιτέρω
- παράγεται
- παίρνω
- GitHub
- Go
- Group
- Ομάδα
- Hadoop
- υγειονομική περίθαλψη
- βοήθεια
- βοηθά
- εδώ
- Ψηλά
- Κυψέλη
- οικοδεσπότης
- Πως
- Πώς να
- Ωστόσο
- HTML
- HTTPS
- IAM
- ιδεών
- Ταυτότητα
- διαχείριση ταυτότητας και πρόσβασης
- Διαχείριση ταυτότητας και πρόσβασης (IAM)
- εφαρμογή
- εφαρμοστεί
- υλοποιεί
- εισαγωγή
- σημαντικό
- βελτιώνει
- in
- βιομηχανίες
- πληροφορίες
- Υποδομή
- νεωτερίζω
- εγκαθιστώ
- παράδειγμα
- αντί
- οδηγίες
- ενσωματωθεί
- αλληλεπιδρούν
- διαδραστικό
- περιβάλλον λειτουργίας
- διακόπτεται
- Ιρλανδία
- IT
- Δουλειά
- Θέσεις εργασίας
- ταξίδι
- json
- Διατήρηση
- Kubernetes
- large
- μεγάλης κλίμακας
- ΜΑΘΑΊΝΩ
- μάθηση
- Μόχλευση
- Βιβλιοθήκη
- LIMIT
- γραμμή
- γραμμές
- LINK
- συνδέονται
- Λίστα
- Εισηγμένες
- φορτίο
- τοποθεσία
- Λονδίνο
- ΦΑΊΝΕΤΑΙ
- Χαμηλός
- μηχανή
- μάθηση μηχανής
- διαχειρίζεται
- διαχείριση
- διευθυντής
- υποχρεωτικό
- κατασκευής
- πολοί
- μέσα
- μηχανισμός
- Μνήμη
- Μενού
- μέθοδος
- μέθοδοι
- Τρόπος
- χρήματα
- περισσότερο
- πολλαπλούς
- όνομα
- Ονομάστηκε
- Πλοηγηθείτε
- Πλοήγηση
- απαραίτητος
- Ανάγκη
- που απαιτούνται
- ανάγκες
- δίκτυο
- Νέα
- Νέα Υόρκη
- κόμβος
- κόμβων
- σημειωματάριο
- φορητούς υπολογιστές
- αριθμός
- προσφορά
- προσφέρονται
- προσφορές
- ONE
- ανοίξτε
- βελτιστοποιημένη
- Βελτιστοποιεί
- επιχειρήσεις
- οργανώσεις
- ΑΛΛΑ
- δική
- παράθυρο
- παράμετρος
- παράμετροι
- μονοπάτι
- πρότυπο
- πρότυπα
- επίδοση
- άδεια
- δικαιώματα
- Φυσικώς
- Μέρος
- πλατφόρμες
- Πλατφόρμες
- Πλάτων
- Πληροφορία δεδομένων Plato
- Πλάτωνα δεδομένα
- παιχνίδι
- λοβό
- Πολιτικές
- πολιτική
- Θέση
- δύναμη
- πρακτικές
- προτιμάται
- προηγούμενος
- προβλήματα
- διαδικασια μας
- Επεξεργαστής
- παραγωγή
- προφίλ
- σχέδιο
- έργα
- ιδιότητες
- περιουσία
- παρέχεται
- παρέχει
- πρόβλεψη
- δημόσιο
- γρήγορα
- γρήγορα
- Διάβασε
- Ανάγνωση
- έτοιμος
- πραγματικός
- σε πραγματικό χρόνο
- συνειδητοποιήσουν
- συνιστώ
- αρχεία
- μείωση
- μειώνει
- καταχωρηθεί
- αντικαθιστώ
- εκπροσωπώ
- ζητήσει
- Απαιτεί
- Υποστηρικτικό υλικό
- περιορίζω
- αποτέλεσμα
- λιανική πώληση
- Ρόλος
- ρόλους
- τρέξιμο
- τρέξιμο
- χάρη
- ίδιο
- Αποθήκευση
- οικονομία
- Δεύτερος
- Τμήμα
- τομέας
- ασφάλεια
- αρχαιότερος
- ευαίσθητος
- υπηρεσία
- Υπηρεσίες
- Συνεδρίαση
- σειρά
- δείχνουν
- παρουσιάζεται
- Δείχνει
- Shuffle
- υπογράψουν
- Απλούς
- απλοποιημένη
- ενιαίας
- Μέγεθος
- small
- So
- λύση
- Λύσεις
- SOLVE
- Σπινθήρας
- ειδικός
- δαπανήσει
- πέρασε
- Spot
- SQL
- σωρός
- Εκκίνηση
- ξεκίνησε
- Ξεκινήστε
- δηλώσεις
- Κατάσταση
- Βήμα
- Βήματα
- σταμάτησε
- χώρος στο δίσκο
- αποθηκεύονται
- καταστήματα
- Στρατηγική
- μετάδοση
- στούντιο
- στούντιο
- υποβολή
- υποβάλουν
- υποβάλλονται
- υποδίκτυα
- τέτοιος
- κατάλληλος
- παρέχεται
- Στήριξη
- διακόπτης
- παίρνει
- εργασίες
- πρότυπο
- προσωρινή
- τερματικό
- Η
- το Ηνωμένο Βασίλειο
- τους
- Μέσω
- διακίνηση
- ώρα
- προς την
- πολύ
- Σύνολο
- μεταφορά
- Μεταμόρφωση
- μετάβαση
- αληθής
- φροντιστήριο
- τύποι
- Typescript
- Uk
- υποκείμενες
- μονάδα
- Ενημέρωση
- ενημερώσεις
- Φορτώθηκε
- URI
- χρήση
- Χρήστες
- Διεπαφής χρήστη
- Χρήστες
- επιχειρήσεις κοινής ωφέλειας
- αξία
- Αξίες
- εκδοχή
- Έλεγχος έκδοσης
- Δες
- Πραγματικός
- τόμος
- περιμένετε
- ιστός
- διαδικτυακές υπηρεσίες
- Τι
- Ποιό
- θα
- εντός
- Εργασία
- εργάστηκαν
- εργάτης
- ροές εργασίας
- εργαζόμενος
- γράφω
- γιαμ
- Σας
- zephyrnet