Παράμετροι για το Data Factory στο Microsoft Fabric

Αυτό το άρθρο σάς δείχνει πώς μπορείτε να χρησιμοποιήσετε παραμέτρους στις διοχετεύσεις Data Factory στο Fabric, ώστε να μπορείτε να δημιουργήσετε ευέλικτες, επαναχρησιμοποιήσιμες ροές εργασίας.

Χρήση παραμέτρων, παραστάσεων και συναρτήσεων σε διοχετεύσεις Data Factory

Αυτή η ενότητα σας καθοδηγεί στα βασικά στοιχεία της δημιουργίας παραμετροποιημένων αγωγών στο Data Factory for Fabric, χρησιμοποιώντας σαφή παραδείγματα στην πορεία. Οι παράμετροι και οι δυναμικές εκφράσεις εξοικονομούν χρόνο και σας επιτρέπουν να δημιουργήσετε ευέλικτες λύσεις Εξαγωγής, Μετασχηματισμού, Φόρτωσης (ETL) ή Εξαγωγής, Φόρτωσης, Μετασχηματισμού (ELT). Μειώνουν τη σκληρή κωδικοποίηση και σας επιτρέπουν να επαναχρησιμοποιείτε αντικείμενα και διαδικασίες, γεγονός που διευκολύνει τη συντήρηση των αγωγών και σας επιτρέπει να αποστέλλετε νέες δυνατότητες πιο γρήγορα.

Έννοιες παραμέτρου και παράστασης

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

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

Τιμή παραμέτρου Result
"parameters" Επιστρέφονται οι χαρακτήρες "παράμετροι".
"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 στην καρτέλα Source των σελίδων ιδιοτήτων μιας Copy activity.

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

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

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

Παραμετροποίηση συνδέσεων

Για να παραμετροποιήσετε τις συνδέσεις σε διοχετεύσεις, χρησιμοποιήστε το καθολικά μοναδικό αναγνωριστικό (GUID) της σύνδεσης που θέλετε να αντικαταστήσετε δυναμικά.

  1. Πριν τροποποιήσετε δυναμικά τη σύνδεση στη διοχέτευσή σας, λάβετε το GUID της σύνδεσης που θέλετε να ορίσετε.
  2. Μεταβείτε στις Ρυθμίσεις>Διαχείριση συνδέσεων και πυλών.
  3. Βρείτε το όνομα της σύνδεσης και επιλέξτε τα αποσιωπητικά (...) δίπλα του.
  4. Επιλέξτε Ρυθμίσεις και αντιγράψτε το αναγνωριστικό σύνδεσης.
  5. Επικολλήστε το GUID σε μια παράμετρο συμβολοσειράς και αναφέρετε αυτήν την παράμετρο στη δυναμική σας παράσταση.

Παράδειγμα σύνθετης παράστασης

Η ακόλουθη έκφραση αναφέρεται σε ένα βαθύ υποπεδίο εξόδου δραστηριότητας. Για να αναφέρετε μια παράμετρο διοχέτευσης που αποτιμάται σε ένα υποπεδίο, χρησιμοποιήστε [] σύνταξη αντί για τον τελεστή τελεία (.), όπως με subfield1 και subfield2.

@activity('*activityName*').output.*subfield1*.*subfield2*[pipeline().parameters.*subfield3*].*subfield4*

Πρόγραμμα επεξεργασίας δυναμικού περιεχομένου

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

@{toUpper('myData')}

Το πρόγραμμα επεξεργασίας δυναμικού περιεχομένου μετατρέπει το προηγούμενο περιεχόμενο στην ακόλουθη παράσταση:

MYDATA

Χρήση συναρτήσεων και μεταβλητών σε παραστάσεις

Μπορείτε να καλέσετε συναρτήσεις και να χρησιμοποιήσετε μεταβλητές μέσα σε παραστάσεις. Οι παρακάτω ενότητες παρέχουν πληροφορίες σχετικά με τις συναρτήσεις που μπορούν να χρησιμοποιηθούν σε μια παράσταση.

Μεταβλητές εμβέλειας διοχέτευσης

Μπορείτε να αναφέρετε αυτές τις μεταβλητές συστήματος οπουδήποτε στη διοχέτευση JSON.

Όνομα μεταβλητής Description
@pipeline().DataFactory Όνομα του χώρου εργασίας όπου εκτελείται η εκτέλεση της διοχέτευσης
@pipeline().Pipeline Το όνομα της διοχέτευσης
@pipeline().RunId Το αναγνωριστικό της συγκεκριμένης εκτέλεσης διοχέτευσης
@pipeline().TriggerId Αναγνωριστικό του εναύσματος που κάλεσε τη διοχέτευση
@pipeline().TriggerName Το όνομα του εναύσματος που κάλεσε τη διοχέτευση
@pipeline().TriggerTime Η ώρα εκτέλεσης του εναύσματος που κάλεσε τη διοχέτευση. Αυτή η τιμή είναι ο χρόνος που ενεργοποιήθηκε πραγματικά το έναυσμα για να καλέσει την εκτέλεση της διοχέτευσης και μπορεί να διαφέρει ελαφρώς από την προγραμματισμένη ώρα του εναύσματος.
@pipeline().GroupId Αναγνωριστικό της ομάδας στην οποία ανήκει η εκτέλεση του αγωγού. Στο Microsoft Fabric, μια ομάδα είναι μια συλλογή σχετικών πόρων που διαχειρίζεστε μαζί. Οι ομάδες οργανώνουν και ελέγχουν την πρόσβαση σε πόρους, γεγονός που διευκολύνει τη διαχείριση των δικαιωμάτων και την παρακολούθηση των δραστηριοτήτων σε πολλούς αγωγούς.
@pipeline()?. TriggeredByPipelineName Το όνομα της διοχέτευσης που ενεργοποιεί την εκτέλεση της διοχέτευσης. Εφαρμόζεται όταν μια δραστηριότητα διοχέτευσης εκτέλεσης ενεργοποιεί την εκτέλεση της διοχέτευσης. Αξιολογείται σε Null σε άλλες περιπτώσεις. Σημειώστε το ερωτηματικό μετά @pipeline()το .
@pipeline()?. TriggeredByPipelineRunId Εκτελέστε το αναγνωριστικό της διοχέτευσης που ενεργοποιεί την εκτέλεση της διοχέτευσης. Εφαρμόζεται όταν μια δραστηριότητα διοχέτευσης εκτέλεσης ενεργοποιεί την εκτέλεση της διοχέτευσης. Αξιολογείται σε Null σε άλλες περιπτώσεις. Σημειώστε το ερωτηματικό μετά @pipeline()το .

Note

Οι μεταβλητές συστήματος ημερομηνίας/ώρας που σχετίζονται με το έναυσμα (τόσο στο πεδίο διοχέτευσης όσο και στο πεδίο εναύσματος) επιστρέφουν ημερομηνίες συντονισμένης παγκόσμιας ώρας (UTC) σε μορφή ISO 8601, για παράδειγμα, 2017-06-01T22:20:00.4061448Z.

Συναρτήσεις συμβολοσειρών

Για να εργαστείτε με συμβολοσειρές, χρησιμοποιήστε αυτές τις συναρτήσεις συμβολοσειράς καθώς και ορισμένες συναρτήσεις συλλογής. Οι συναρτήσεις συμβολοσειράς λειτουργούν μόνο σε συμβολοσειρές.

Συνάρτηση συμβολοσειράς Task
concat Συνδυάστε δύο ή περισσότερες συμβολοσειρές και επιστρέψτε τη συνδυασμένη συμβολοσειρά.
endsWith Ελέγξτε εάν μια συμβολοσειρά τελειώνει με την καθορισμένη δευτερεύουσα συμβολοσειρά.
guid Δημιουργήστε ένα καθολικά μοναδικό αναγνωριστικό (GUID) ως συμβολοσειρά.
indexOf Επιστρέψτε τη θέση εκκίνησης για μια δευτερεύουσα συμβολοσειρά.
lastIndexOf Επιστρέφει τη θέση εκκίνησης για την τελευταία εμφάνιση μιας δευτερεύουσας συμβολοσειράς.
replace Αντικαταστήστε μια δευτερεύουσα συμβολοσειρά με την καθορισμένη συμβολοσειρά και επιστρέψτε την ενημερωμένη συμβολοσειρά.
split Επιστρέφει έναν πίνακα που περιέχει δευτερεύουσες συμβολοσειρές, οι οποίες διαχωρίζονται με κόμματα, από μια μεγαλύτερη συμβολοσειρά που βασίζεται σε έναν καθορισμένο χαρακτήρα οριοθέτη στην αρχική συμβολοσειρά.
startsWith Ελέγξτε εάν μια συμβολοσειρά ξεκινά με μια συγκεκριμένη δευτερεύουσα συμβολοσειρά.
substring Επιστρέφει χαρακτήρες από μια συμβολοσειρά, ξεκινώντας από την καθορισμένη θέση.
toLower Επιστρέφει μια συμβολοσειρά σε πεζή μορφή.
toUpper Επιστρέφει μια συμβολοσειρά σε μορφή κεφαλαίων.
trim Καταργήστε τα αρχικά και τελικά κενά διαστήματα από μια συμβολοσειρά και επιστρέψτε την ενημερωμένη συμβολοσειρά.

Λειτουργίες συλλογής

Για να εργαστείτε με συλλογές όπως πίνακες, συμβολοσειρές και λεξικά, χρησιμοποιήστε αυτές τις συναρτήσεις συλλογής.

Λειτουργία συλλογής Task
contains Ελέγξτε εάν μια συλλογή έχει ένα συγκεκριμένο στοιχείο.
empty Ελέγξτε εάν μια συλλογή είναι κενή.
first Επιστρέψτε το πρώτο στοιχείο από μια συλλογή.
intersection Επιστρέψτε μια συλλογή που έχει μόνο τα κοινά στοιχεία σε όλες τις καθορισμένες συλλογές.
join Επιστρέψτε μια συμβολοσειρά που έχει όλες τα στοιχεία από έναν πίνακα, τα οποία διαχωρίζονται με τον καθορισμένο χαρακτήρα.
last Επιστρέψτε το τελευταίο στοιχείο από μια συλλογή.
length Επιστρέφει τον αριθμό των στοιχείων σε μια συμβολοσειρά ή πίνακα.
skip Καταργήστε στοιχεία από το μπροστινό μέρος μιας συλλογής και επιστρέψτε όλα τα άλλα στοιχεία.
take Επιστρέψτε στοιχεία από το μπροστινό μέρος μιας συλλογής.
union Επιστρέφει μια συλλογή που έχει όλες τα στοιχεία από τις καθορισμένες συλλογές.

Λογικές συναρτήσεις

Χρησιμοποιήστε αυτές τις συναρτήσεις μέσα σε συνθήκες για να αξιολογήσετε κάθε τύπο λογικής.

Συνάρτηση λογικής σύγκρισης Task
and Ελέγξτε εάν όλες οι παραστάσεις είναι true.
equals Ελέγξτε εάν και οι δύο τιμές είναι ισοδύναμες.
greater Ελέγξτε εάν η πρώτη τιμή είναι μεγαλύτερη από τη δεύτερη τιμή.
greaterOrEquals Ελέγξτε εάν η πρώτη τιμή είναι μεγαλύτερη ή ίση με τη δεύτερη τιμή.
if Ελέγξτε εάν μια παράσταση είναι true ή false. Με βάση το αποτέλεσμα, επιστρέψτε μια καθορισμένη τιμή.
less Ελέγξτε εάν η πρώτη τιμή είναι μικρότερη από τη δεύτερη τιμή.
lessOrEquals Ελέγξτε εάν η πρώτη τιμή είναι μικρότερη ή ίση από τη δεύτερη τιμή.
not Ελέγξτε εάν μια παράσταση είναι false.
or Ελέγξτε εάν τουλάχιστον μία παράσταση είναι true.

Συναρτήσεις μετατροπής

Χρησιμοποιήστε αυτές τις συναρτήσεις για να μετατρέψετε μεταξύ καθενός από τους εγγενείς τύπους στη γλώσσα:

  • string
  • integer
  • float
  • boolean
  • arrays
  • dictionaries
Λειτουργία μετατροπής Task
array Επιστρέφει έναν πίνακα από μία καθορισμένη είσοδο. Για πολλές εισόδους, ανατρέξτε στο θέμα createArray.
base64 Επιστρέψτε την έκδοση με κωδικοποίηση base64 για μια συμβολοσειρά.
base64ToBinary Επιστρέψτε τη δυαδική έκδοση για μια συμβολοσειρά με κωδικοποίηση base64.
base64ToString Επιστρέψτε την έκδοση συμβολοσειράς για μια συμβολοσειρά με κωδικοποίηση base64.
binary Επιστρέφει τη δυαδική έκδοση για μια τιμή εισόδου.
bool Επιστρέψτε τη δυαδική έκδοση για μια τιμή εισόδου.
coalesce Επιστρέφει την πρώτη τιμή που δεν είναι null από μία ή περισσότερες παραμέτρους.
createArray Επιστρέφει έναν πίνακα από πολλές εισόδους.
dataUri Επιστρέφει το URI δεδομένων για μια τιμή εισόδου.
dataUriToBinary Επιστρέψτε τη δυαδική έκδοση για ένα URI δεδομένων.
dataUriToString Επιστρέψτε την έκδοση συμβολοσειράς για ένα URI δεδομένων.
decodeBase64 Επιστρέψτε την έκδοση συμβολοσειράς για μια συμβολοσειρά με κωδικοποίηση base64.
decodeDataUri Επιστρέψτε τη δυαδική έκδοση για ένα URI δεδομένων.
decodeUriComponent Επιστρέφει μια συμβολοσειρά που αντικαθιστά τους χαρακτήρες διαφυγής με αποκωδικοποιημένες εκδόσεις.
encodeUriComponent Επιστρέφει μια συμβολοσειρά που αντικαθιστά χαρακτήρες μη ασφαλούς διεύθυνσης URL με χαρακτήρες διαφυγής.
float Επιστρέφει έναν αριθμό κινητής υποδιαστολής για μια τιμή εισόδου.
int Επιστρέψτε την έκδοση ακέραιου για μια συμβολοσειρά.
json Επιστρέφει την τιμή ή το αντικείμενο του τύπου Σημειογραφία αντικειμένου JavaScript (JSON) για μια συμβολοσειρά ή XML.
string Επιστρέψτε την έκδοση συμβολοσειράς για μια τιμή εισόδου.
uriComponent Επιστρέψτε την έκδοση με κωδικοποίηση URI για μια τιμή εισόδου, αντικαθιστώντας τους μη ασφαλείς χαρακτήρες URL με χαρακτήρες διαφυγής.
uriComponentToBinary Επιστρέψτε τη δυαδική έκδοση για μια συμβολοσειρά με κωδικοποίηση URI.
uriComponentToString Επιστρέψτε την έκδοση συμβολοσειράς για μια συμβολοσειρά με κωδικοποίηση URI.
xml Επιστρέφει την έκδοση XML για μια συμβολοσειρά.
xpath Ελέγξτε το XML για κόμβους ή τιμές που αντιστοιχούν σε μια παράσταση XPath (γλώσσα διαδρομής XML) και επιστρέψτε τους αντίστοιχους κόμβους ή τιμές.

Μαθηματικές συναρτήσεις

Χρησιμοποιήστε αυτές τις συναρτήσεις και με τους δύο τύπους αριθμών: ακέραιους και κινητούς.

Συνάρτηση μαθηματικών Task
add Επιστρέψτε το αποτέλεσμα από την προσθήκη δύο αριθμών.
div Επιστρέφει το αποτέλεσμα από τη διαίρεση δύο αριθμών.
max Επιστρέφει την υψηλότερη τιμή από ένα σύνολο αριθμών ή έναν πίνακα.
min Επιστρέφει τη χαμηλότερη τιμή από ένα σύνολο αριθμών ή έναν πίνακα.
mod Επιστρέφει το υπόλοιπο της διαίρεσης δύο αριθμών.
mul Επιστρέφει το προϊόν από τον πολλαπλασιασμό δύο αριθμών.
rand Επιστρέφει έναν τυχαίο ακέραιο από μια καθορισμένη περιοχή.
range Επιστρέφει έναν ακέραιο πίνακα που ξεκινά από έναν καθορισμένο ακέραιο.
sub Επιστρέφει το αποτέλεσμα από την αφαίρεση του δεύτερου αριθμού από τον πρώτο αριθμό.

Συναρτήσεις ημερομηνίας

Συνάρτηση ημερομηνίας ή ώρας Task
addDays Προσθέστε έναν αριθμό ημερών σε μια χρονική σήμανση.
addHours Προσθέστε έναν αριθμό ωρών σε μια χρονική σήμανση.
addMinutes Προσθέστε έναν αριθμό λεπτών σε μια χρονική σήμανση.
addSeconds Προσθέστε έναν αριθμό δευτερολέπτων σε μια χρονική σήμανση.
addToTime Προσθέστε έναν αριθμό μονάδων ώρας σε μια χρονική σήμανση. Δείτε επίσης getFutureTime.
convertFromUtc Μετατρέψτε μια χρονική σήμανση από Συντονισμένη Παγκόσμια Ώρα (UTC) στη ζώνη ώρας-στόχο.
convertTimeZone Μετατρέψτε μια χρονική σήμανση από τη ζώνη ώρας προέλευσης στη ζώνη ώρας προορισμού.
convertToUtc Μετατρέψτε μια χρονική σήμανση από τη ζώνη ώρας προέλευσης σε Συντονισμένη Παγκόσμια Ώρα (UTC).
dayOfMonth Επιστρέφει την ημέρα του στοιχείου μήνα από μια χρονική σήμανση.
dayOfWeek Επιστρέφει το στοιχείο ημέρας της εβδομάδας από μια χρονική σήμανση.
dayOfYear Επιστρέφει το στοιχείο ημέρας του έτους από μια χρονική σήμανση.
formatDateTime Επιστρέφει τη χρονική σήμανση ως συμβολοσειρά σε προαιρετική μορφή.
getFutureTime Επιστρέφει την τρέχουσα χρονική σήμανση συν τις καθορισμένες χρονικές μονάδες. Δείτε επίσης addToTime.
getPastTime Επιστρέφει την τρέχουσα χρονική σήμανση μείον τις καθορισμένες χρονικές μονάδες. Δείτε επίσης αφαίρεσηςFromTime.
startOfDay Επιστρέψτε την αρχή της ημέρας για μια χρονική σήμανση.
startOfHour Επιστρέψτε την αρχή της ώρας για μια χρονική σήμανση.
startOfMonth Επιστρέψτε την αρχή του μήνα για μια χρονική σήμανση.
subtractFromTime Αφαιρέστε έναν αριθμό μονάδων χρόνου από μια χρονική σήμανση. Δείτε επίσης getPastTime.
ticks Επιστρέφει την τιμή ιδιότητας ticks για μια καθορισμένη χρονική σήμανση.
utcNow Επιστρέφει την τρέχουσα χρονική σήμανση ως συμβολοσειρά.