Transaction Control Transformation in Informatica (Παράδειγμα)
⚡ Έξυπνη Σύνοψη
Ο μετασχηματισμός ελέγχου συναλλαγών στην Informatica είναι ένα ενεργό, συνδεδεμένο αντικείμενο που δεσμεύει ή κυλάει προς τα πίσω γραμμές ενώ ένας χάρτηςping εκτελείται, χρησιμοποιώντας πέντε ενσωματωμένες μεταβλητές μέσα σε μια συνθήκη που αξιολογείται μία φορά για κάθε γραμμή.

Τι είναι ο Μετασχηματισμός Ελέγχου Συναλλαγών;
Ο Έλεγχος Συναλλαγών είναι ένας ενεργός και συνδεδεμένος μετασχηματισμός που μας επιτρέπει να ολοκληρώσουμε ή να αναιρέσουμε συναλλαγές κατά την εκτέλεση του χάρτη.pingΟι λειτουργίες ολοκλήρωσης και επαναφοράς είναι σημαντικής σημασίας επειδή εγγυώνται τη διαθεσιμότητα των δεδομένων.
Κατά την επεξεργασία μεγάλου όγκου δεδομένων, μπορεί να προκύψει μια κατάσταση κατά την οποία θα πρέπει να γίνει δέσμευση (commit) των δεδομένων στον στόχο. Εάν μια δέσμευση (commit) εκτελείται πολύ συχνά, τότε θα υπάρξει επιβάρυνση για το σύστημα. Εάν μια δέσμευση (commit) εκτελεστεί πολύ αργά, τότε σε περίπτωση αποτυχίας υπάρχουν πιθανότητες απώλειας δεδομένων.
Έτσι, για να παρέχεται ευελιξία, παρέχεται ο μετασχηματισμός Ελέγχου Συναλλαγής. Αντί να αφήνει το σημείο υποβολής στην προεπιλεγμένη συνεδρία, επιτρέπει μια συνθήκη μέσα στο χαρτης αποφασίζουν, σειρά προς σειρά, πού τελειώνει η μία συναλλαγή και πού ξεκινά η επόμενη.
Εντολές TCL Commit και Rollback
Υπάρχουν πέντε ενσωματωμένες μεταβλητές διαθέσιμες σε αυτόν τον μετασχηματισμό για τον χειρισμό της λειτουργίας. Η συνθήκη πρέπει να επιστρέψει μία από τις πέντε για κάθε γραμμή και μια τιμή εκτός αυτής της λίστας προκαλεί την αποτυχία της Υπηρεσίας Ενοποίησης στην περίοδο λειτουργίας.
TC_CONTINUE_TRANSACTION
Στο TC_CONTINUE_TRANSACTION δεν εκτελούνται λειτουργίες, η διαδικασία φόρτωσης δεδομένων συνεχίζεται ως έχει. Αυτή είναι η προεπιλεγμένη τιμή της παράστασης.
TC_COMMIT_BEFORE
Στο TC_COMMIT_BEFORE, όταν βρεθεί ότι αυτή η σημαία έχει οριστεί, εκτελείται μια υποβολή πριν από την επεξεργασία της τρέχουσας γραμμής. Στη συνέχεια, ξεκινά μια νέα συναλλαγή και η τρέχουσα γραμμή εγγράφεται στον προορισμό.
TC_COMMIT_AFTER
Στην TC_COMMIT_AFTER γίνεται επεξεργασία της τρέχουσας γραμμής, στη συνέχεια εκτελείται μια υποβολή και ξεκινά η επόμενη συναλλαγή.
TC_ROLLBACK_BEFORE
Στο TC_ROLLBACK_BEFORE, πρώτα εκτελείται η επαναφορά και στη συνέχεια τα δεδομένα υποβάλλονται σε επεξεργασία για εγγραφή.
TC_ROLLBACK_AFTER
Στο TC_ROLLBACK_AFTER τα δεδομένα υποβάλλονται σε επεξεργασία και στη συνέχεια εκτελείται η επαναφορά.
Ιδιότητες μετασχηματισμού ελέγχου συναλλαγής
Το αντικείμενο διαμορφώνεται από το παράθυρο Επεξεργασία Μετασχηματισμών, το οποίο φέρει τις ίδιες τέσσερις καρτέλες με τους άλλους μετασχηματισμούς PowerCenter. Γνωρίζοντας ποια καρτέλα κατέχει ποια ρύθμιση, εξοικονομείτε πολύ χρόνο για να ψάξετε κατά την παρακάτω αναλυτική παρουσίαση.
| Tab | Τι έχει ρυθμιστεί εκεί |
| Μεταμόρφωση | Όνομα του μετασχηματισμού, περιγραφή του και εάν το αντικείμενο είναι επαναχρησιμοποιήσιμο. |
| λιμάνια | Οι θύρες εισόδου και εξόδου, που συνήθως δημιουργούνται σύροντας τις στήλες από τον ανοδικό μετασχηματισμό. |
| Ιδιοκτησίες | Η Συνθήκη Ελέγχου Συναλλαγής, που ανοίγει με το μικρό βέλος δίπλα στο πεδίο, και η TracΤο Επίπεδο ing εγγράφηκε στο αρχείο καταγραφής συνεδρίας. |
| Επεκτάσεις μεταδεδομένων | Μεταδεδομένα που ορίζονται από τον χρήστη και διατηρούνται με τον μετασχηματισμό στο αποθετήριο. |
Δύο ρυθμίσεις κάνουν την πραγματική δουλειά. Συνθήκη Ελέγχου Συναλλαγής περιέχει την έκφραση, η οποία είναι συνήθως μια δοκιμή IIF() που επιστρέφει μία από τις πέντε μεταβλητές. Η TracΕπίπεδο ing αποφασίζει πόσες λεπτομέρειες σχετικά με τον μετασχηματισμό εμφανίζονται στο αρχείο καταγραφής περιόδου λειτουργίας όταν διερευνάται η εκτέλεση.
Μία ρύθμιση βρίσκεται έξω από τον μετασχηματισμό. Όταν ένας χάρτηςping περιέχει έναν αποτελεσματικό μετασχηματισμό Ελέγχου Συναλλαγών, η συνεδρία εκτελείται με το Τύπος Υποβολής ορίστε την τιμή σε Ορισμός από τον χρήστη στην καρτέλα Ιδιότητες του Συνεδρίαση, αντί για το Target ή τύποι υποβολής πηγής που χρησιμοποιούν ένα σταθερό διάστημα υποβολής.
Πώς να χρησιμοποιήσετε τον μετασχηματισμό ελέγχου συναλλαγών στην Informatica
Σε αυτό το παράδειγμα, θα υποβάλουμε δεδομένα στον στόχο όταν η συνθήκη dept no = 20 βρεθεί αληθής.
Βήμα 1) Δημιουργήστε έναν χάρτηping με EMP ως πηγή και EMP_TARGET ως στόχο. Ο Χάρτηςping Ο καμβάς σχεδιαστή περιέχει στη συνέχεια την πηγή, τον προσδιοριστή πηγής της και τον ορισμό στόχου.
Βήμα 2) Δημιουργήστε έναν νέο μετασχηματισμό χρησιμοποιώντας το μενού Μετασχηματισμός και, στη συνέχεια, στο παράθυρο Δημιουργία μετασχηματισμού:
- Επιλέξτε ένα στοιχείο ελέγχου συναλλαγής ως νέο μετασχηματισμό
- Εισαγάγετε το όνομα μετασχηματισμού "tc_commit_dept20"
- Επιλέξτε την επιλογή δημιουργίας
Βήμα 3) Ο μετασχηματισμός "Έλεγχος συναλλαγής" θα δημιουργηθεί, επιλέξτε το κουμπί "Ολοκληρώθηκε". Το νέο αντικείμενο εμφανίζεται πλέον στον καμβά δίπλα στον Προσδιοριστή Πηγής.
Βήμα 4) Σύρετε και αποθέστε όλες τις στήλες από τον Προσδιοριστή Πηγής στον μετασχηματισμό Ελέγχου Συναλλαγών και, στη συνέχεια, συνδέστε όλες τις στήλες από τον μετασχηματισμό Ελέγχου Συναλλαγών στον πίνακα προορισμού. Η διοχέτευση εκτελεί τώρα τον πηγαίου κώδικα → Προσδιοριστή Πηγής → tc_commit_dept20 → EMP_TARGET.
Βήμα 5) Double κάντε κλικ στον μετασχηματισμό Transaction Control και, στη συνέχεια, στο παράθυρο ιδιοτήτων επεξεργασίας:
- Επιλέξτε την καρτέλα ιδιοκτησία
- Κάντε κλικ στο εικονίδιο του επεξεργαστή ελέγχου συναλλαγών
Βήμα 6) Στον επεξεργαστή εκφράσεων, εισαγάγετε την έκφραση –
iif(deptno=20,tc_commit_before,tc_continue_transaction)
και επιλέξτε OK. Αυτό σημαίνει ότι εάν βρεθεί το τμήμα 20, τότε ολοκληρώστε τη συναλλαγή στον προορισμό, διαφορετικά συνεχίστε την τρέχουσα επεξεργασία.
Βήμα 7) Επιλέξτε OK στο προηγούμενο παράθυρο. Η συνθήκη αποθηκεύεται πλέον στην καρτέλα Ιδιότητες του μετασχηματισμού.
Τώρα αποθηκεύστε τον χάρτηping και εκτελέστε το μετά τη δημιουργία της συνεδρίας και των ροών εργασίας. Αυτός ο χάρτηςping θα δεσμεύσει τα δεδομένα στον στόχο κάθε φορά που θα βρεθεί ο αριθμός τμήματος 20 στα δεδομένα.
Αποτελεσματικοί και αναποτελεσματικοί μετασχηματισμοί ελέγχου συναλλαγών
Ο μετασχηματισμός είναι μια γεννήτρια συναλλαγών. Απορρίπτει οποιοδήποτε όριο συναλλαγής προέρχεται από την ανοδική ροή και ορίζει νέα δικά του όρια για όλα τα κατάντη, γι' αυτό και η θέση του στον αγωγό έχει τόση σημασία όσο και η κατάστασή του.
Ονομάζεται για έναν στόχο όταν τα όρια που δημιουργεί εξακολουθούν να φτάνουν σε αυτόν τον στόχο, και ατελέσφορος όταν ένας μεταγενέστερος μετασχηματισμός καταργεί αυτά τα όρια. Σύμφωνα με τον Οδηγό Μετασχηματισμού Informatica PowerCenter, τα ακόλουθα αντικείμενα παραλείπουν τα όρια των εισερχόμενων συναλλαγών:
- Ένας Συγκεντρωτής, Ξυλουργός, Τάξη, Ταξινόμηση ή Προσαρμοσμένος μετασχηματισμός του οποίου το Πεδίο Μετασχηματισμού είναι Όλες οι Εισαγωγές
- Ένας προσαρμοσμένος μετασχηματισμός που έχει ρυθμιστεί για τη δημιουργία συναλλαγών
- Ένας άλλος μετασχηματισμός ελέγχου συναλλαγών
- Ένας μετασχηματισμός πολλαπλών ομάδων εισόδου συνδεδεμένος με περισσότερα από ένα σημεία ελέγχου συναλλαγής προς τα πάνω
Το γεγονός ότι το αντικείμενο δεν είναι αναποτελεσματικό για τον στόχο δεν το καθιστά άχρηστο. Ένας μετασχηματισμός κατάντη του οποίου το Εμβέλεια Μετασχηματισμού είναι Συναλλαγή εξακολουθεί να χρησιμοποιεί τα όρια που ορίζονται κατάντη, επομένως ο ίδιος μετασχηματισμός μπορεί να είναι αποτελεσματικός για έναν Ταξινομητή και αναποτελεσματικός για τον πίνακα πίσω από αυτόν.
Σε έναν χάρτηping με πολλούς στόχους, το αντικείμενο μπορεί να είναι αποτελεσματικό για έναν στόχο και αναποτελεσματικό για έναν άλλο. Ο χάρτηςping παραμένει έγκυρο όσο κάθε στόχος είναι συνδεδεμένος με έναν αποτελεσματικό μετασχηματισμό Ελέγχου Συναλλαγών και καθίσταται άκυρο μόλις ένας στόχος δεν συνδεθεί. Ο Σχεδιαστής αναφέρει ποιοι μετασχηματισμοί είναι αναποτελεσματικοί για στόχους όταν η αντιστοίχισηping αποθηκεύεται ή επικυρώνεται.
Κανόνες και κατευθυντήριες γραμμές για τον μετασχηματισμό του ελέγχου συναλλαγών
Τα περισσότερα προβλήματα με αυτόν τον μετασχηματισμό εμφανίζονται κατά τον χρόνο εκτέλεσης και όχι κατά τον χρόνο σχεδιασμού, επομένως τα παρακάτω σημεία αξίζει να ελεγχθούν πριν από τη δημιουργία της συνεδρίας.
- Η τιμή επιστροφής είναι αυστηρή. Εάν η συνθήκη αποτιμηθεί σε κάτι διαφορετικό από την ολοκλήρωση, την επαναφορά ή τη συνέχεια, η Υπηρεσία Ενοποίησης αποτυγχάνει στην περίοδο λειτουργίας.
- Το TC_CONTINUE_TRANSACTION είναι η εφεδρική συνάρτηση. Κάθε κλάδος της IIF() πρέπει να τελειώνει κάπου και η τιμή continue είναι αυτή που αφήνει την τρέχουσα συναλλαγή ανέπαφη.
- Ο τύπος του στόχου έχει σημασία. Ένας μετασχηματισμός Ελέγχου Συναλλαγών που συνδέεται με οποιονδήποτε στόχο εκτός από έναν σχεσιακό, XML ή δυναμικό στόχο MQSeries δεν είναι αποτελεσματικός για αυτόν τον στόχο.
- Η συνθήκη μπορεί να χρησιμοποιήσει μόνο ό,τι της φτάνει. Μόνο οι θύρες που είναι συνδεδεμένες στον μετασχηματισμό, οι θύρες μεταβλητών του και οι ενσωματωμένες μεταβλητές είναι διαθέσιμες μέσα στον επεξεργαστή ελέγχου συναλλαγών.
- Η συχνότητα υποβολής είναι ένα συμβιβασμός. Μια συνθήκη που επιβεβαιώνεται σχεδόν σε κάθε γραμμή καταργεί το πλεονέκτημα της προσωρινής αποθήκευσης, ενώ μια συνθήκη που σχεδόν ποτέ δεν ενεργοποιείται επανεισάγει το παράθυρο απώλειας δεδομένων για το κλείσιμο του οποίου προστέθηκε ο μετασχηματισμός.
- Ελέγξτε το αρχείο καταγραφής συνεδρίας. Το αρχείο καταγραφής καταγράφει τα σημεία ολοκλήρωσης που λήφθηκαν στην πραγματικότητα, που είναι ο πιο γρήγορος τρόπος για να επιβεβαιώσετε ότι η συνθήκη συμπεριφέρθηκε όπως προβλεπόταν κατά τη διάρκεια. συντονισμός απόδοσης.







