Ακολουθία Generator Μεταμόρφωση στην Πληροφορική

⚡ Έξυπνη Σύνοψη

Ακολουθία Generator Ο μετασχηματισμός στην Informatica είναι το παθητικό, συνδεδεμένο αντικείμενο που παράγει αριθμητικές ακολουθίες για στήλες υποκατάστατου και πρωτεύοντος κλειδιού, δίνοντας σε κάθε γραμμή μια τιμή μέσω δύο σταθερών θυρών εξόδου που ονομάζονται NEXTVAL και CURRVAL.

  • 🔢 Δύο σταθερές θύρες: Η συνάρτηση NEXTVAL μεταφέρει τους παραγόμενους αριθμούς και η συνάρτηση CURRVAL επιστρέφει τη συνάρτηση NEXTVAL συν την τιμή Increment By.
  • ⚙️ Τέσσερις βασικές ιδιότητες: Η Αρχική Τιμή, η Αύξηση κατά, η Τελική Τιμή και ο Κύκλος καθορίζουν το σχήμα κάθε ακολουθίας που παράγεται.
  • 🧪 Λειτουργικό παράδειγμα: Οκτώ Χάρτηςping Τα βήματα του σχεδιαστή φορτώνουν τους δημιουργημένους αριθμούς στη στήλη SNO ενός στόχου EMP_SEQUENCE.
  • ♻️ Επαναχρησιμοποιήσιμη επιλογή: Μια επαναχρησιμοποιήσιμη ακολουθία Generator είναι κοινόχρηστο από αρκετούς χάρτεςpings και αποθηκεύει προσωρινά 1,000 τιμές από προεπιλογή.
  • 🔒 Οι θύρες διορθώνονται: Δεν είναι δυνατή η προσθήκη, η επεξεργασία ή η διαγραφή θυρών, επομένως όλη η συμπεριφορά ελέγχεται από την καρτέλα Ιδιότητες.
  • 🗝️ Υποκατάστατα κλειδιά: Οι πίνακες διαστάσεων αποθήκης χρησιμοποιούν δημιουργημένα κλειδιά αντί για φυσικά κλειδιά από το σύστημα προέλευσης.

Ακολουθία Generator Μεταμόρφωση στην Πληροφορική

Τι είναι η Ακολουθία Generator Μεταμόρφωση?

Ακολουθία Generator Ο μετασχηματισμός είναι παθητικός, επομένως δεν επηρεάζει τον αριθμό των γραμμών εισόδου. Η Ακολουθία Generator Χρησιμοποιείται για τη δημιουργία τιμών πρωτεύοντος κλειδιού και χρησιμοποιείται για τη δημιουργία τιμών αριθμητικής ακολουθίας όπως 1, 2, 3, 4, 5 κ.λπ.

Για παράδειγμα, αν θέλετε να αντιστοιχίσετε τιμές ακολουθίας στις εγγραφές προέλευσης, τότε μπορείτε να χρησιμοποιήσετε τη συνάρτηση Ακολουθία GeneratorΟι τιμές ακολουθίας που δημιουργούνται μπορούν να είναι όπως 5, 10, 15, 20, 25 κ.λπ. ή 10, 20, 30, 40, 50 κ.λπ., ανάλογα με τις διαμορφωμένες ιδιότητες του μετασχηματισμού.

Σε αντίθεση με τους περισσότερους μετασχηματισμούς, αυτός δεν έχει καθόλου θύρες εισόδου. Δεν διαβάζει τις εισερχόμενες γραμμές, απλώς παραδίδει τον επόμενο αριθμό σε όποια θύρα είναι συνδεδεμένη, γι' αυτό και είναι ασφαλές να τοποθετηθεί δίπλα σε οποιαδήποτε διοχέτευση σε ένα χαρτης.

Θύρες σε μια ακολουθία Generator Μεταμόρφωση

Ακολουθία Generator έχει δύο θύρες εξόδου

  • ΚΑΜΠΥΛΗΣΗ
  • NEXTVAL

Η τιμή της θύρας CURRVAL είναι πάντα NEXTVAL συν την τιμή Increment By, επομένως διαβάζεται μόνο ως NEXTVAL+1 ενώ η τιμή Increment By παραμένει στην προεπιλεγμένη τιμή 1.

Για να δημιουργήσουμε τους αριθμούς ακολουθίας, χρησιμοποιούμε πάντα τη στήλη NEXTVAL. Ο παρακάτω πίνακας συνοψίζει τον τρόπο συμπεριφοράς των δύο θυρών.

Λιμάνι Τι επιστρέφει Πότε να το συνδέσετε
NEXTVAL Ο επόμενος αριθμός στην ακολουθία για κάθε γραμμή που διέρχεται από τον αγωγό. Σχεδόν πάντα. Αυτή είναι η θύρα που τροφοδοτεί μια βασική στήλη στον στόχο.
ΚΑΜΠΥΛΗΣΗ NEXTVAL συν την τιμή Increment By. Μόνο παράλληλα με το NEXTVAL. Συνδεδεμένο μόνο του, μεταδίδει την ίδια σταθερή τιμή για κάθε γραμμή.

Καμία θύρα δεν μπορεί να μετονομαστεί ή να αφαιρεθεί και δεν μπορεί να προστεθεί τρίτη θύρα, επομένως κάθε αλλαγή στους αριθμούς που δημιουργούνται γίνεται στην καρτέλα Ιδιότητες και όχι στις θύρες.

Ιδιότητες ακολουθίας Generator Μεταμόρφωση

  • Τιμή έναρξης – Είναι η πρώτη τιμή που θα δημιουργηθεί από τον μετασχηματισμό, η προεπιλεγμένη τιμή είναι 0.
  • Αύξηση κατά – Αυτός είναι ο αριθμός με τον οποίο θέλετε να αυξήσετε τις τιμές. Η προεπιλεγμένη τιμή είναι 1.
  • Τελική τιμή – Είναι η μέγιστη τιμή που πρέπει να δημιουργήσει ο μετασχηματισμός.
  • Κύκλος – εάν έχει οριστεί αυτή η επιλογή, μετά την επίτευξη του τέλους της τιμής, ο μετασχηματισμός ξεκινά ξανά από την αρχική τιμή.

Τρεις επιπλέον ρυθμίσεις εμφανίζονται στην ίδια καρτέλα και έχουν σημασία μόλις γίνει κοινή χρήση του μετασχηματισμού ή επαναληφθεί μια συνεδρία.

Ιδιοκτησία Τι ελέγχει Προεπιλογή
Τρέχουσα τιμή Η τιμή από την οποία ξεκινά η επόμενη συνεδρία. Η Υπηρεσία Ενοποίησης την ενημερώνει στο αποθετήριο καθώς δημιουργούνται γραμμές. 1
Αριθμός τιμών που αποθηκεύονται στην προσωρινή μνήμη Πόσες τιμές δεσμεύονται στη μνήμη κάθε φορά, ώστε οι ταυτόχρονες συνεδρίες να μην εκδίδουν ποτέ τον ίδιο αριθμό δύο φορές. 0 για μη επαναχρησιμοποιήσιμα, 1000 για επαναχρησιμοποιήσιμα
Επαναφορά Ξεκινά κάθε συνεδρία από την αρχική τρέχουσα τιμή αντί να συνεχίζεται. Δεν είναι διαθέσιμο σε επαναχρησιμοποιήσιμη ακολουθία. Generators. ανάπηρος
TracΕπίπεδο ing Ποσότητα λεπτομερειών που εγγράφονται στο αρχείο καταγραφής περιόδου λειτουργίας: Συνοπτική, Κανονική, Λεπτομερής Αρχικοποίηση ή Λεπτομερή Δεδομένα. Κανονικός

Πώς να χρησιμοποιήσετε την ακολουθία Generator Μεταμόρφωση στην Πληροφορική

Σε αυτό το παράδειγμα, θα δημιουργήσουμε αριθμούς ακολουθίας και θα τους αποθηκεύσουμε στον στόχο. Επεξεργαστείτε τα οκτώ βήματα παρακάτω στον Χάρτηping Σχεδιαστής.

Βήμα 1) Δημιουργήστε έναν πίνακα προορισμού με το ακόλουθο σενάριο.

Κατεβάστε το παραπάνω Αρχείο emp_sequence.sql

Βήμα 2) Εισαγάγετε τον πίνακα στο Informatica ως πίνακα προορισμού.

Βήμα 3) Δημιουργήστε ένα νέο χάρτηping και εισαγάγετε τον πηγαίο κώδικα EMP και τον πίνακα προορισμού EMP_SEQUENCE. Και οι δύο ορισμοί βρίσκονται πλέον στον καμβά, όπως φαίνεται παρακάτω.

Χάρτηςping Σχεδιαστής με την πηγή EMP και τον ορισμό στόχου EMP_SEQUENCE που εισήχθη

Βήμα 4) Δημιουργήστε έναν νέο μετασχηματισμό στον χάρτηping

  1. Επιλέξτε τον μετασχηματισμό ακολουθίας ως τύπο
  2. Εισαγάγετε το όνομα μετασχηματισμού "seq_emp"
  3. Επιλέξτε Δημιουργία

Δημιουργία παραθύρου μετασχηματισμού με ακολουθία Generator επιλεγμένο και εισαχθεί το όνομα seq_emp

Βήμα 5) Ακολουθία Generator Όταν δημιουργηθεί ο μετασχηματισμός, επιλέξτε την επιλογή "ολοκληρώθηκε". Το αντικείμενο seq_emp εμφανίζεται τώρα στον καμβά με τις δύο θύρες του.

Ακολουθία Generator μετασχηματισμός seq_emp που δημιουργήθηκε στον χάρτηping καμβάς

Βήμα 6) Σύνδεση της στήλης NEXTVAL της Ακολουθίας Generator στη στήλη SNO στον στόχο.

Η θύρα NEXTVAL του seq_emp συνδέεται με τη στήλη SNO του στόχου EMP_SEQUENCE

Βήμα 7) Συνδέστε τις άλλες στήλες από προσδιοριστής πηγής μετασχηματισμός στον πίνακα προορισμού.

Υπόλοιπες στήλες προσδιοριστή προέλευσης που συνδέονται με τον πίνακα προορισμού EMP_SEQUENCE

Βήμα 8) Double κάντε κλικ στην Ακολουθία Generator για να ανοίξετε το παράθυρο ιδιοτήτων και, στη συνέχεια,

  1. Επιλέξτε την καρτέλα ιδιότητες
  2. Εισαγάγετε τις ιδιότητες με τιμή έναρξης =1, αφήστε τις υπόλοιπες ιδιότητες ως προεπιλογή
  3. Επιλέξτε το κουμπί ΟΚ

Καρτέλα Ιδιότητες της Ακολουθίας Generator μετασχηματισμός με την αρχική τιμή ορισμένη σε 1

Τώρα αποθηκεύστε τον χάρτηping και εκτελέστε το αφού δημιουργήσετε το Συνεδρίαση και ροής εργασίας.

Η στήλη sno στον στόχο θα περιέχει τους αριθμούς ακολουθίας που δημιουργούνται από την Ακολουθία Generator μετασχηματισμού.

Στο παράδειγμά μας, οι ακολουθίες θα είναι όπως 1 – Scott, 2 – King, 3 – Adam, 4 – Miller, κ.λπ.

Επαναχρησιμοποιήσιμη και μη επαναχρησιμοποιήσιμη ακολουθία Generators

Ο μετασχηματισμός που δημιουργήθηκε παραπάνω ζει μέσα σε έναν χάρτηpingΗ δημιουργία του στο Transformation Developer το καθιστά επαναχρησιμοποιήσιμο και τα δύο συμπεριφέρονται διαφορετικά όταν εμπλέκονται περισσότερες από μία συνεδρίες.

Σημείο σύγκρισης Μη επαναχρησιμοποιήσιμο Επαναχρησιμοποιούμενες
Πού δημιουργείται Μέσα σε έναν ενιαίο χάρτηping, στον Χάρτηping σχεδιαστής Στον Προγραμματιστή Μετασχηματισμού, και στη συνέχεια προστίθεται σε οποιονδήποτε αριθμό χαρτώνpings
Αριθμός τιμών που αποθηκεύονται στην προσωρινή μνήμη Η προεπιλεγμένη τιμή είναι 0, επομένως οι τιμές δεν δεσμεύονται εκ των προτέρων Η προεπιλεγμένη τιμή είναι 1000, επομένως κάθε συνεδρία διατηρεί το δικό της μπλοκ αριθμών
Επαναφορά ιδιότητας Διαθέσιμο και επανεκκινεί την ακολουθία από την αρχική τρέχουσα τιμή Δεν είναι διαθέσιμο, επειδή η επανεκκίνηση θα έδινε αριθμούς σε μια άλλη συνεδρία που έχει ήδη χρησιμοποιηθεί
Τυπική χρήση Μία βασική στήλη-στόχος σε έναν χάρτηping Ένα κοινόχρηστο υποκατάστατο κλειδί σε διάφορους χάρτεςpings φορτώνει την ίδια διάσταση

Η προσωρινή αποθήκευση είναι αυτό που κρατά τις ταυτόχρονες συνεδρίες μακριά. Κάθε συνεδρία λαμβάνει ένα μπλοκ αριθμών εκ των προτέρων, πράγμα που σημαίνει ότι οι αριθμοί παραμένουν μοναδικοί αλλά δεν παραμένουν συνεχόμενοι: τυχόν τιμές που παραμένουν αχρησιμοποίητες κατά το τέλος μιας συνεδρίας απορρίπτονται και το επόμενο μπλοκ ξεκινά μετά από αυτές.

Κανόνες και Περιορισμοί Ακολουθίας Generator Μεταμόρφωση

Μερικά από αυτά εμφανίζονται μόνο μετά τον χάρτηping έχει εκτελεστεί, επομένως είναι φθηνότερο να τα γνωρίζετε πριν συνδεθούν οι θύρες.

  • Οι θύρες είναι σταθερές. Τα NEXTVAL και CURRVAL δεν μπορούν να υποστούν επεξεργασία ή διαγραφή και δεν μπορεί να προστεθεί περαιτέρω μεταφορά στον μετασχηματισμό.
  • Η συνάρτηση CURRVAL από μόνη της επιστρέφει μια σταθερά. Συνδέστε το CURRVAL μόνο όταν το NEXTVAL είναι επίσης συνδεδεμένο κατάντη, διαφορετικά κάθε γραμμή λαμβάνει την ίδια τιμή.
  • Δύο στόχοι φορτώνονται ο ένας μετά τον άλλον. Όταν το NEXTVAL τροφοδοτεί δύο πίνακες στόχων, ο πρώτος στόχος φορτώνεται με τους αριθμούς του πριν ξεκινήσει ο δεύτερος στόχος, επομένως τα δύο σύνολα δεν παρεμβάλλονται.
  • Τα κενά είναι φυσιολογικά. Οι τιμές που είναι αποθηκευμένες στην προσωρινή μνήμη και δεν χρησιμοποιούνται από μια συνεδρία δεν επιστρέφονται ποτέ, επομένως μια αποτυχημένη ή σύντομη συνεδρία αφήνει κενά στην ακολουθία. Σχεδιάστε τη στήλη κλειδιού έτσι ώστε να ανέχεται κενά.
  • Το Cycle μπορεί να δημιουργήσει διπλότυπα. Μόλις επιτευχθεί η τελική τιμή με ενεργοποιημένο τον Κύκλο, η αρίθμηση επανεκκινείται από την αρχική τιμή, η οποία θα συγκρουστεί με τα υπάρχοντα κλειδιά, εκτός εάν το επιτρέψει ο στόχος.

Επειδή δεν διαβάζει ποτέ μια γραμμή, ο μετασχηματισμός δεν προσθέτει σχεδόν τίποτα στον χρόνο εκτέλεσης της συνεδρίας, γι' αυτό και σπάνια εμφανίζεται ως σημείο συμφόρησης κατά τη διάρκεια της συντονισμός απόδοσηςΌπου ένα κλειδί πρέπει να εξαρτάται από τα ίδια τα δεδομένα και όχι από έναν μετρητή, ένα Συσσωρευτής or Μεταμόρφωση ξυλουργού είναι το αντικείμενο που κάνει αυτή τη δουλειά, όχι αυτό.

Συχνές Ερωτήσεις

Ένα υποκατάστατο κλειδί είναι ένας άνευ νοήματος αριθμός που προσδιορίζει μια σειρά αποθήκης αντί για το αναγνωριστικό συστήματος προέλευσης. Παραμένει σταθερό όταν η πηγή αλλάζει τους κωδικούς της και μια δημιουργημένη ακολουθία είναι ο απλούστερος τρόπος για να παραχθεί μια τέτοια σειρά.

Επειδή η αρίθμηση παραμένει στον χάρτηping αντί για μία βάση δεδομένων. Το επίπεδο αρχείο και άλλοι μη σχεσιακοί στόχοι λαμβάνουν κλειδιά με τον ίδιο τρόπο και το ίδιο επαναχρησιμοποιήσιμο αντικείμενο μπορεί να αριθμήσει πολλούς στόχους χωρίς ένα αντικείμενο βάσης δεδομένων ανά πίνακα.

Η Τελική Τιμή δέχεται έως 9,223,372,036,854,775,807, τον μεγαλύτερο υπογεγραμμένο ακέραιο 64-bit. Η επίτευξη αυτής της τιμής διακόπτει την περίοδο λειτουργίας με σφάλμα υπερχείλισης, εκτός εάν είναι ενεργοποιημένη η λειτουργία Cycle, οπότε η αρίθμηση επανεκκινείται από την αρχική τιμή.

Ναι. Το NEXTVAL συνδέεται με οποιονδήποτε μετασχηματισμό κατάντη, συνήθως με μια έκφραση που δημιουργεί ένα σύνθετο κλειδί ή μια αναζήτηση που ελέγχει εάν υπάρχει ήδη ένα κλειδί. Ο αριθμός που δημιουργείται στη συνέχεια ταξιδεύει μαζί με τη γραμμή.

Ναι, αλλά ελέγξτε πρώτα τον στόχο. Η επεξεργασία της Αρχικής Τιμής ή της Τρέχουσας Τιμής σε μια στήλη ενεργού κλειδιού μπορεί να δώσει αριθμούς που ήδη κατέχει ο στόχος, επομένως αυξήστε την τιμή πάνω από το υψηλότερο κλειδί αντί να τη μειώσετε.

Ελάχιστα. Δεν διαβάζει γραμμές και δεν δημιουργεί αρχεία προσωρινής μνήμης, επομένως το κόστος του είναι μια ενημέρωση μετρητή ανά γραμμή. Τα μεγάλα φορτία περιορίζονται από τον αναγνώστη και τον συγγραφέα πολύ πριν η αρίθμηση γίνει πρόβλημα.

Οι δημιουργοί προφίλ τεχνητής νοημοσύνης σαρώνουν τις στήλες πηγής για να υποδείξουν ποιος συνδυασμός είναι πραγματικά μοναδικός, επισημαίνουν τα υποψήφια κλειδιά με null ή διπλότυπα και ανιχνεύουν απόκλιση μεταξύ φορτώσεων. Η αντιστοίχιση που βασίζεται στη μηχανική μάθηση συνδέει επίσης εγγραφές που περιγράφουν την ίδια οντότητα με διαφορετικά αναγνωριστικά.

Ο Copilot γράφει το ισοδύναμο SQL ορισμός ακολουθίας ή ταυτότητας και τα ερωτήματα συμφωνίας που αποδεικνύουν ότι δεν υπήρξε διπλότυπο κλειδί. Δεν μπορεί να δει τις τιμές του αποθετηρίου σας, επομένως επαληθεύστε την τρέχουσα τιμή στον ίδιο τον μετασχηματισμό πριν από τη φόρτωση.

Συνοψίστε αυτήν την ανάρτηση με: