Παράμετροι για το Data Factory στο Microsoft Fabric
Αυτό το έγγραφο περιγράφει τον τρόπο χρήσης παραμέτρων στις διοχετεύσεις σας για το Data Factory στο Fabric.
Τρόπος χρήσης παραμέτρων, παραστάσεων και συναρτήσεων σε διοχετεύσεις για το Data Factory στο Fabric
Σε αυτό το έγγραφο, εστιάζουμε στην εκμάθηση βασικών εννοιών με διάφορα παραδείγματα για να εξερευνήσουμε τη δυνατότητα δημιουργίας παραμετροποιημένων διοχετεύσεων δεδομένων εντός του Data Factory στο Fabric. Η παραμετροποίηση και οι δυναμικές παραστάσεις μπορούν να εξοικονομήσουν τεράστιο χρόνο και να επιτρέψουν μια πολύ πιο ευέλικτη λύση Εξαγωγή, Μετασχηματισμός, Φόρτωση (ETL) ή Εξαγωγή, Φόρτωση, Μετασχηματισμός (ELT), η οποία θα μειώσει δραματικά το κόστος συντήρησης λύσης και θα επιταχύνει την υλοποίηση νέων δυνατοτήτων σε υπάρχουσες διοχετεύσεις. Αυτά τα κέρδη οφείλονται στο ότι η παραμετροποίηση ελαχιστοποιεί την ποσότητα της σκληρής κωδικοποίησης και αυξάνει τον αριθμό των επαναχρησιμοποιήσιμων αντικειμένων και διαδικασιών σε μια λύση.
Μπορείτε να χρησιμοποιήσετε παραμέτρους για να διαβιβάσετε εξωτερικές τιμές σε διοχετεύσεις. Όταν η παράμετρος μεταβιβαστεί στον πόρο, δεν μπορεί να αλλάξει. Με την παραμετροποίηση των πόρων, μπορείτε να τους χρησιμοποιείτε ξανά με διαφορετικές τιμές κάθε φορά. Οι παράμετροι μπορούν να χρησιμοποιηθούν μεμονωμένα ή ως μέρος παραστάσεων. Οι τιμές παραμέτρων στον ορισμό μπορεί να είναι λεκτικές σταθερές ή παραστάσεις που αξιολογούνται κατά τον χρόνο εκτέλεσης.
Οι παραστάσεις μπορούν να εμφανίζονται οπουδήποτε σε μια τιμή συμβολοσειράς και να δημιουργούν πάντα μια άλλη τιμή συμβολοσειράς. Εδώ, ο κωδικός πρόσβασης είναι μια παράμετρος διοχέτευσης στην παράσταση. Εάν μια τιμή παραμέτρου είναι μια παράσταση, το σώμα της παράστασης εξάγεται καταργώντας το σύμβολο (@). Εάν απαιτείται μια συμβολοσειρά λεκτικής σταθεράς που ξεκινά με @, πρέπει να εκτελείται διαφυγή χρησιμοποιώντας @@. Τα παρακάτω παραδείγματα δείχνουν τον τρόπο αξιολόγησης των παραστάσεων.
Τιμή παραμέτρου | Result |
---|---|
"παράμετροι" | Επιστρέφονται οι χαρακτήρες "παράμετροι". |
"parameters[1]" | Επιστρέφονται οι χαρακτήρες 'παράμετροι[1]'. |
"@@" | Επιστρέφεται μια συμβολοσειρά 1 χαρακτήρα που περιέχει "@". |
" @" | Επιστρέφεται μια συμβολοσειρά 2 χαρακτήρων που περιέχει το ' @'. |
Οι παραστάσεις μπορούν επίσης να εμφανίζονται μέσα σε συμβολοσειρές, χρησιμοποιώντας μια δυνατότητα που ονομάζεται παρεμβολή συμβολοσειράς όπου οι παραστάσεις περιτυλίγονται σε @{ ... }
. Για παράδειγμα, η ακόλουθη συμβολοσειρά περιλαμβάνει τιμές παραμέτρων και τιμές συμβολοσειράς λεκτικής σταθεράς:
"Όνομα: @{pipeline().parameters.firstName} Επώνυμο: @{pipeline().parameters.lastName}"
Με τη χρήση παρεμβολής συμβολοσειράς, το αποτέλεσμα είναι πάντα μια συμβολοσειρά. Για παράδειγμα, εάν ορίσατε myNumber
ως 42
και myString
:foo
Τιμή παραμέτρου | Result |
---|---|
"@pipeline().parameters.myString" | Επιστρέφει foo ως συμβολοσειρά. |
"@{pipeline().parameters.myString}" | Επιστρέφει foo ως συμβολοσειρά. |
"@pipeline().parameters.myNumber" | Επιστρέφει 42 ως αριθμό. |
"@{pipeline().parameters.myNumber}" | Επιστρέφει 42 ως συμβολοσειρά. |
"Η απάντηση είναι: @{pipeline().parameters.myNumber}" | Επιστρέφει τη συμβολοσειρά Answer is: 42 . |
"@concat('Η απάντηση είναι: ', string(pipeline().parameters.myNumber))" | Επιστρέφει τη συμβολοσειρά Answer is: 42 |
"Η απάντηση είναι: @@{pipeline().parameters.myNumber}" | Επιστρέφει τη συμβολοσειρά Answer is: @{pipeline().parameters.myNumber} . |
Για να δημιουργήσετε παραμέτρους, επιλέξτε το φόντο του καμβά του προγράμματος επεξεργασίας διοχέτευσης και, στη συνέχεια, την καρτέλα Παράμετροι του παραθύρου ιδιοτήτων στο κάτω μέρος. Επιλέξτε το κουμπί + Νέο για να προσθέσετε μια νέα παράμετρο στη διοχέτευση, δώστε του ένα όνομα, έναν τύπο δεδομένων και μια προεπιλεγμένη τιμή:
Στη συνέχεια, μπορείτε να χρησιμοποιήσετε την παράμετρο οπουδήποτε στη διοχέτευση όπου υποστηρίζεται δυναμικό περιεχόμενο. Σε αυτό το παράδειγμα, η παράμετρος χρησιμοποιείται για τη δυναμική παροχή του ονόματος ενός χώρου αποθήκευσης δεδομένων Lakehouse στην καρτέλα Προέλευση των σελίδων ιδιοτήτων μιας δραστηριότητας αντιγραφής.
Εμφανίζεται το παράθυρο Προσθήκη δυναμικού περιεχομένου , το οποίο σας επιτρέπει να καθορίσετε οποιοδήποτε είδος δυναμικού περιεχομένου, όπως παραμέτρους, μεταβλητές συστήματος, συναρτήσεις ή μεταβλητές διοχέτευσης. Σε αυτό το παράδειγμα, επιλέγεται η παράμετρος που έχει οριστεί προηγουμένως και το παράθυρο δυναμικού περιεχομένου συμπληρώνεται αυτόματα με τη σωστή παράσταση για αναφορά στην παράμετρο.
Το παρακάτω παράδειγμα εμφανίζει ένα σύνθετο παράδειγμα που αναφέρεται σε ένα δευτερεύον πεδίο με εσωτερικές πληροφορίες εξόδου δραστηριότητας. Για να αναφέρετε μια παράμετρο διοχέτευσης που έχει ως αποτέλεσμα ένα δευτερεύον πεδίο, χρησιμοποιήστε σύνταξη αντί για τελεστή dot(.) (όπως στην περίπτωση του subfield1 και του subfield2)
@activity('*activityName*').output.*subfield1*.*subfield2*[pipeline().parameters.*subfield3*].*subfield4*
Το πρόγραμμα επεξεργασίας δυναμικού περιεχομένου ξεφεύγει αυτόματα από τους χαρακτήρες στο περιεχόμενό σας όταν ολοκληρώσετε την επεξεργασία. Για παράδειγμα, το παρακάτω περιεχόμενο στο πρόγραμμα επεξεργασίας περιεχομένου είναι μια παρεμβολή συμβολοσειράς με μια συνάρτηση παράστασης:
@{toUpper('myData')}
Το πρόγραμμα επεξεργασίας δυναμικού περιεχομένου μετατρέπει το παραπάνω περιεχόμενο στην ακόλουθη παράσταση:
MYDATA
Μπορείτε να καλέσετε συναρτήσεις και να χρησιμοποιήσετε μεταβλητές μέσα σε παραστάσεις. Οι παρακάτω ενότητες παρέχουν πληροφορίες σχετικά με τις συναρτήσεις που μπορούν να χρησιμοποιηθούν σε μια παράσταση.
Αυτές οι μεταβλητές συστήματος μπορούν να αναφέρονται οπουδήποτε στο JSON διοχέτευσης.
Όνομα μεταβλητής | Περιγραφή |
---|---|
@pipeline().DataFactory | Το όνομα των δεδομένων ή ο χώρος εργασίας Synapse στον οποίο εκτελείται η διοχέτευση |
@pipeline().Pipeline | Το όνομα της διοχέτευσης |
@pipeline().RunId | Το αναγνωριστικό της συγκεκριμένης εκτέλεσης διοχέτευσης |
@pipeline().TriggerId | Αναγνωριστικό του εναύσματος που κάλεσε τη διοχέτευση |
@pipeline().TriggerName | Το όνομα του εναύσματος που κάλεσε τη διοχέτευση |
@pipeline().TriggerTime | Η ώρα εκτέλεσης του εναύσματος που κάλεσε τη διοχέτευση. Αυτή είναι η στιγμή κατά την οποία το έναυσμα ενεργοποιείται στην πραγματικότητα για να καλέσει την εκτέλεση της διοχέτευσης και μπορεί να διαφέρει ελαφρώς από την προγραμματισμένη ώρα του εναύσματος. |
@pipeline().GroupId | Το αναγνωριστικό της ομάδας στην οποία ανήκει η εκτέλεση διοχέτευσης. |
@pipeline()?. TriggeredByPipelineName | Το όνομα της διοχέτευσης που ενεργοποιεί την εκτέλεση της διοχέτευσης. Ισχύει όταν η εκτέλεση διοχέτευσης ενεργοποιείται από μια δραστηριότητα ExecutePipeline. Αξιολογείται ως Null όταν χρησιμοποιείται σε άλλες περιπτώσεις. Σημειώστε το ερωτηματικό μετά @pipeline() |
@pipeline()?. TriggeredByPipelineRunId | Εκτελέστε το αναγνωριστικό της διοχέτευσης που ενεργοποιεί την εκτέλεση της διοχέτευσης. Ισχύει όταν η εκτέλεση διοχέτευσης ενεργοποιείται από μια δραστηριότητα ExecutePipeline. Αξιολογείται ως Null όταν χρησιμοποιείται σε άλλες περιπτώσεις. Σημειώστε το ερωτηματικό μετά @pipeline() |
Σημείωση
Οι μεταβλητές συστήματος ημερομηνίας/ώρας που σχετίζονται με εναύσματα (και στις δύο εμβέλειες διοχέτευσης και εναύσματος) επιστρέφουν ημερομηνίες UTC σε μορφή ISO 8601, για παράδειγμα, 2017-06-01T22:20:00.4061448Z
.
Για να εργαστείτε με συμβολοσειρές, μπορείτε να χρησιμοποιήσετε αυτές τις συναρτήσεις συμβολοσειράς καθώς και ορισμένες συναρτήσεις συλλογής. Οι συναρτήσεις συμβολοσειράς λειτουργούν μόνο σε συμβολοσειρές.
Συναρτήσεις συμβολοσειράς | Εργασία |
---|---|
Concat | Συνδυάστε δύο ή περισσότερες συμβολοσειρές και επιστρέψτε τη συνδυασμένη συμβολοσειρά. |
λήγειμε | Ελέγξτε εάν μια συμβολοσειρά τελειώνει με την καθορισμένη δευτερεύουσα συμβολοσειρά. |
Guid | Δημιουργήστε ένα καθολικά μοναδικό αναγνωριστικό (GUID) ως συμβολοσειρά. |
indexOf | Επιστρέψτε τη θέση εκκίνησης για μια δευτερεύουσα συμβολοσειρά. |
lastIndexOf | Επιστρέφει τη θέση εκκίνησης για την τελευταία εμφάνιση μιας δευτερεύουσας συμβολοσειράς. |
αντικατάσταση | Αντικαταστήστε μια δευτερεύουσα συμβολοσειρά με την καθορισμένη συμβολοσειρά και επιστρέψτε την ενημερωμένη συμβολοσειρά. |
διαχωρισμός | Επιστρέφει έναν πίνακα που περιέχει δευτερεύουσες συμβολοσειρές, οι οποίες διαχωρίζονται με κόμματα, από μια μεγαλύτερη συμβολοσειρά που βασίζεται σε έναν καθορισμένο χαρακτήρα οριοθέτη στην αρχική συμβολοσειρά. |
startsWith | Ελέγξτε εάν μια συμβολοσειρά ξεκινά με μια συγκεκριμένη δευτερεύουσα συμβολοσειρά. |
δευτερεύουσα συμβολοσειρά | Επιστρέφει χαρακτήρες από μια συμβολοσειρά, ξεκινώντας από την καθορισμένη θέση. |
toLower | Επιστρέφει μια συμβολοσειρά σε πεζή μορφή. |
toUpper | Επιστρέφει μια συμβολοσειρά σε μορφή κεφαλαίων. |
Τελειώματα | Καταργήστε τα αρχικά και τελικά κενά διαστήματα από μια συμβολοσειρά και επιστρέψτε την ενημερωμένη συμβολοσειρά. |
Για να εργαστείτε με συλλογές, γενικά πίνακες, συμβολοσειρές και ορισμένες φορές λεξικά, μπορείτε να χρησιμοποιήσετε αυτές τις συναρτήσεις συλλογής.
Συνάρτηση Collection | Εργασία |
---|---|
Περιέχει | Ελέγξτε εάν μια συλλογή έχει ένα συγκεκριμένο στοιχείο. |
empty | Ελέγξτε εάν μια συλλογή είναι κενή. |
Πρώτη | Επιστρέψτε το πρώτο στοιχείο από μια συλλογή. |
Διασταύρωση | Επιστρέφει μια συλλογή που διαθέτει μόνο τα κοινά στοιχεία σε όλες τις καθορισμένες συλλογές. |
Συμμετάσχετε | Επιστρέφει μια συμβολοσειρά που περιέχει όλα τα στοιχεία από έναν πίνακα, τα οποία διαχωρίζονται με τον καθορισμένο χαρακτήρα. |
Τελευταία | Επιστρέψτε το τελευταίο στοιχείο από μια συλλογή. |
Μήκος | Επιστρέφει τον αριθμό των στοιχείων σε μια συμβολοσειρά ή πίνακα. |
Παραλείψετε | Καταργήστε στοιχεία από το μπροστινό μέρος μιας συλλογής και επιστρέψτε όλα τα άλλα στοιχεία. |
Λάβει | Επιστρέψτε στοιχεία από το μπροστινό μέρος μιας συλλογής. |
Ένωσης | Επιστρέφει μια συλλογή που περιέχει όλα τα στοιχεία από τις καθορισμένες συλλογές. |
Αυτές οι συναρτήσεις είναι χρήσιμες μέσα σε συνθήκες, μπορούν να χρησιμοποιηθούν για την αξιολόγηση οποιουδήποτε τύπου λογικής.
Συνάρτηση λογικής σύγκρισης | Εργασία |
---|---|
and | Ελέγξτε εάν όλες οι παραστάσεις είναι true. |
Ίσον | Ελέγξτε εάν και οι δύο τιμές είναι ισοδύναμες. |
greater | Ελέγξτε εάν η πρώτη τιμή είναι μεγαλύτερη από τη δεύτερη τιμή. |
greaterOrEquals | Ελέγξτε εάν η πρώτη τιμή είναι μεγαλύτερη ή ίση με τη δεύτερη τιμή. |
Εάν | Ελέγξτε εάν μια παράσταση είναι true ή false. Με βάση το αποτέλεσμα, επιστρέψτε μια καθορισμένη τιμή. |
less | Ελέγξτε εάν η πρώτη τιμή είναι μικρότερη από τη δεύτερη τιμή. |
lessOrEquals | Ελέγξτε εάν η πρώτη τιμή είναι μικρότερη ή ίση από τη δεύτερη τιμή. |
Δεν | Ελέγξτε εάν μια παράσταση είναι false. |
or | Ελέγξτε εάν τουλάχιστον μία παράσταση είναι true. |
Αυτές οι συναρτήσεις χρησιμοποιούνται για τη μετατροπή μεταξύ καθενός εκ των εγγενών τύπων στη γλώσσα:
- συμβολοσειρά
- integer
- κινητή υποδιαστολή
- boolean
- Συστοιχίες
- Λεξικά
Συνάρτηση μετατροπής | Εργασία |
---|---|
Πίνακα | Επιστρέφει έναν πίνακα από μία καθορισμένη είσοδο. Για πολλές εισόδους, ανατρέξτε στο θέμα createArray. |
base64 | Επιστρέψτε την έκδοση με κωδικοποίηση base64 για μια συμβολοσειρά. |
base64ToBinary | Επιστρέψτε τη δυαδική έκδοση για μια συμβολοσειρά με κωδικοποίηση base64. |
base64ToString | Επιστρέψτε την έκδοση συμβολοσειράς για μια συμβολοσειρά με κωδικοποίηση base64. |
Δυαδική | Επιστρέφει τη δυαδική έκδοση για μια τιμή εισόδου. |
Bool | Επιστρέψτε τη δυαδική έκδοση για μια τιμή εισόδου. |
coalesce | Επιστρέφει την πρώτη τιμή που δεν είναι null από μία ή περισσότερες παραμέτρους. |
createArray | Επιστρέφει έναν πίνακα από πολλές εισόδους. |
dataUri | Επιστρέφει το URI δεδομένων για μια τιμή εισόδου. |
dataUriToBinary | Επιστρέψτε τη δυαδική έκδοση για ένα URI δεδομένων. |
dataUriToString | Επιστρέψτε την έκδοση συμβολοσειράς για ένα URI δεδομένων. |
decodeBase64 | Επιστρέψτε την έκδοση συμβολοσειράς για μια συμβολοσειρά με κωδικοποίηση base64. |
decodeDataUri | Επιστρέψτε τη δυαδική έκδοση για ένα URI δεδομένων. |
decodeUriComponent | Επιστρέφει μια συμβολοσειρά που αντικαθιστά τους χαρακτήρες διαφυγής με αποκωδικοποιημένες εκδόσεις. |
encodeUriComponent | Επιστρέφει μια συμβολοσειρά που αντικαθιστά χαρακτήρες μη ασφαλούς διεύθυνσης URL με χαρακτήρες διαφυγής. |
Επιπλέουν | Επιστρέφει έναν αριθμό κινητής υποδιαστολής για μια τιμή εισόδου. |
Int | Επιστρέψτε την έκδοση ακέραιου για μια συμβολοσειρά. |
Json | Επιστρέφει την τιμή ή το αντικείμενο του τύπου Σημειογραφία αντικειμένου JavaScript (JSON) για μια συμβολοσειρά ή XML. |
Συμβολοσειρά | Επιστρέψτε την έκδοση συμβολοσειράς για μια τιμή εισόδου. |
uriComponent | Επιστρέψτε την έκδοση με κωδικοποίηση URI για μια τιμή εισόδου, αντικαθιστώντας τους μη ασφαλείς χαρακτήρες URL με χαρακτήρες διαφυγής. |
uriComponentToBinary | Επιστρέψτε τη δυαδική έκδοση για μια συμβολοσειρά με κωδικοποίηση URI. |
uriComponentToString | Επιστρέψτε την έκδοση συμβολοσειράς για μια συμβολοσειρά με κωδικοποίηση URI. |
Xml | Επιστρέφει την έκδοση XML για μια συμβολοσειρά. |
Xpath | Ελέγξτε το XML για κόμβους ή τιμές που αντιστοιχούν σε μια παράσταση XPath (γλώσσα διαδρομής XML) και επιστρέψτε τους αντίστοιχους κόμβους ή τιμές. |
Αυτές οι συναρτήσεις μπορούν να χρησιμοποιηθούν για οποιονδήποτε τύπο αριθμών: ακέραιους αριθμούς και κινητής υποδιαστολής.
Μαθηματική συνάρτηση | Εργασία |
---|---|
Προσθέσετε | Επιστρέψτε το αποτέλεσμα από την προσθήκη δύο αριθμών. |
Div | Επιστρέφει το αποτέλεσμα από τη διαίρεση δύο αριθμών. |
Μέγιστο | Επιστρέφει την υψηλότερη τιμή από ένα σύνολο αριθμών ή έναν πίνακα. |
Μίνιμουμ | Επιστρέφει τη χαμηλότερη τιμή από ένα σύνολο αριθμών ή έναν πίνακα. |
Mod | Επιστρέφει το υπόλοιπο της διαίρεσης δύο αριθμών. |
Mul | Επιστρέφει το προϊόν από τον πολλαπλασιασμό δύο αριθμών. |
Rand | Επιστρέφει έναν τυχαίο ακέραιο από μια καθορισμένη περιοχή. |
εύρος | Επιστρέφει έναν ακέραιο πίνακα που ξεκινά από έναν καθορισμένο ακέραιο. |
Δευτερεύουσα | Επιστρέφει το αποτέλεσμα από την αφαίρεση του δεύτερου αριθμού από τον πρώτο αριθμό. |
Συνάρτηση ημερομηνίας ή ώρας | Εργασία |
---|---|
addDays | Προσθέστε έναν αριθμό ημερών σε μια χρονική σήμανση. |
addHours | Προσθέστε έναν αριθμό ωρών σε μια χρονική σήμανση. |
addMinutes | Προσθέστε έναν αριθμό λεπτών σε μια χρονική σήμανση. |
προσθήκη δευτερολέπτων | Προσθέστε έναν αριθμό δευτερολέπτων σε μια χρονική σήμανση. |
addToTime | Προσθέστε έναν αριθμό μονάδων ώρας σε μια χρονική σήμανση. Δείτε επίσης getFutureTime. |
convertFromUtc | Μετατρέψτε μια χρονική σήμανση από Συντονισμένη παγκόσμια ώρα (UTC) στη ζώνη ώρας προορισμού. |
convertTimeZone | Μετατρέψτε μια χρονική σήμανση από τη ζώνη ώρας προέλευσης στη ζώνη ώρας προορισμού. |
convertToUtc | Μετατρέψτε μια χρονική σήμανση από τη ζώνη ώρας προέλευσης σε Συντονισμένη παγκόσμια ώρα (UTC). |
dayOfMonth | Επιστρέφει την ημέρα του στοιχείου μήνα από μια χρονική σήμανση. |
dayOfWeek | Επιστρέφει το στοιχείο ημέρας της εβδομάδας από μια χρονική σήμανση. |
dayOfYear | Επιστρέφει το στοιχείο ημέρας του έτους από μια χρονική σήμανση. |
formatDateTime | Επιστρέφει τη χρονική σήμανση ως συμβολοσειρά σε προαιρετική μορφή. |
getFutureTime | Επιστρέφει την τρέχουσα χρονική σήμανση συν τις καθορισμένες χρονικές μονάδες. Δείτε επίσης addToTime. |
getPastTime | Επιστρέφει την τρέχουσα χρονική σήμανση μείον τις καθορισμένες χρονικές μονάδες. Ανατρέξτε επίσης στην ενότητα αφαίρεσηΑπό την ώρα. |
startOfDay | Επιστρέψτε την αρχή της ημέρας για μια χρονική σήμανση. |
startOfHour | Επιστρέψτε την αρχή της ώρας για μια χρονική σήμανση. |
startOfMonth | Επιστρέψτε την αρχή του μήνα για μια χρονική σήμανση. |
subtractFromTime | Αφαιρέστε έναν αριθμό μονάδων χρόνου από μια χρονική σήμανση. Δείτε επίσης getPastTime. |
Κρότωνες | Επιστρέφει την ticks τιμή ιδιότητας για μια καθορισμένη χρονική σήμανση. |
utcNow | Επιστρέφει την τρέχουσα χρονική σήμανση ως συμβολοσειρά. |