Σημείωση
Η πρόσβαση σε αυτή τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να συνδεθείτε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτή τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
Σημείωμα
Αυτό το άρθρο εστιάζει σε μια αρχιτεκτονική λύσης από τις αρχιτεκτονικές λύσεων CI/CD και ALM (Application Lifecycle Management) για το Dataflow Gen2 που βασίζεται στη δυνατότητα λειτουργίας δημόσιων παραμέτρων και ισχύει μόνο για το Dataflow Gen2 με υποστήριξη CI/CD.
Οι παράμετροι στο Fabric Dataflow Gen2 σάς επιτρέπουν να ορίζετε επαναχρησιμοποιήσιμες εισόδους που διαμορφώνουν τον τρόπο σχεδίασης μιας ροής δεδομένων και με τη λειτουργία δημόσιων παραμέτρων αυτές οι είσοδοι μπορούν να οριστούν κατά τον χρόνο εκτέλεσης μέσω διοχετεύσεων ή API. Καθιστά μια μεμονωμένη ροή δεδομένων εξαιρετικά ευέλικτη και ευέλικτη, καθώς μπορείτε να χρησιμοποιήσετε ξανά την ίδια λογική σε πολλά σενάρια απλώς περνώντας διαφορετικές τιμές, επιτρέποντας δυναμικές, αυτοματοποιημένες ροές εργασιών χωρίς να χρειάζεται ποτέ να ξαναγράψετε ή να αντιγράψετε τους μετασχηματισμούς.
Αυτό το εκπαιδευτικό βοήθημα σας καθοδηγεί σε ένα παράδειγμα που σας δείχνει πώς μπορείτε να κάνετε τα εξής:
- Παραμετροποίηση προέλευσης: Χρήση ενός Lakehouse με το δείγμα συνόλου δεδομένων WideWorldImpoters ως προέλευση
- Λογική παραμετροποίησης: Χρήση των γραφικών στοιχείων εισόδου που είναι διαθέσιμα σε όλη την εμπειρία ροής δεδομένων
- Παραμετροποίηση προορισμού: Χρήση αποθήκης ως προορισμού
- Υποβολή αιτήματος εκτέλεσης με τιμές παραμέτρων: διαβίβαση τιμών παραμέτρων μέσω της εμπειρίας δραστηριότητας ροής δεδομένων εντός μιας διοχέτευσης Fabric
Σημείωμα
Οι έννοιες που παρουσιάζονται σε αυτό το άρθρο είναι καθολικές για το Dataflow Gen2 και ισχύουν για άλλες προελεύσεις και προορισμούς πέρα από αυτούς που εμφανίζονται εδώ.
Το σενάριο
Η ροή δεδομένων που χρησιμοποιείται σε αυτό το σενάριο είναι απλή, αλλά οι βασικές αρχές που περιγράφονται ισχύουν για όλους τους τύπους ροών δεδομένων. Συνδέεται με τον πίνακα με το όνομα dimension_city από το δείγμα συνόλου δεδομένων Wide World Importers που είναι αποθηκευμένο σε ένα Lakehouse. Φιλτράρει τις γραμμές όπου η στήλη SalesTerritory ισούται με Νοτιοανατολικά και φορτώνει το αποτέλεσμα σε έναν νέο πίνακα που ονομάζεται Πόλη σε μια αποθήκη. Όλα τα στοιχεία—το Lakehouse, η Αποθήκη και η Ροή δεδομένων—βρίσκονται στον ίδιο χώρο εργασίας. Για να κάνετε τη ροή δεδομένων δυναμική, παραμετροποιείτε τον πίνακα προέλευσης, την τιμή φίλτρου και τον πίνακα προορισμού. Αυτές οι αλλαγές επιτρέπουν στη ροή δεδομένων να εκτελείται με συγκεκριμένες τιμές αντί για ενσωματωμένες στον κώδικα.
Πριν συνεχίσετε, ενεργοποιήστε τη λειτουργία δημόσιων παραμέτρων μεταβαίνοντας στην Αρχική καρτέλα, επιλέγοντας Επιλογές και στην ενότητα Παράμετροι , επιλέγοντας το πλαίσιο με την ετικέτα Ενεργοποίηση παραμέτρων για εντοπισμό και παράκαμψη παραμέτρων για εκτέλεση και επιτρέψτε στη ροή δεδομένων σας να δέχεται παραμέτρους κατά την εκτέλεση.
Παραμετροποίηση πηγής
Όταν χρησιμοποιείτε οποιαδήποτε από τις συνδέσεις Fabric, όπως Lakehouse, Warehouse ή Fabric SQL, όλες ακολουθούν την ίδια δομή περιήγησης και χρησιμοποιούν την ίδια μορφή εισόδου. Σε αυτό το σενάριο, καμία από τις υποδοχές δεν απαιτεί μη αυτόματη εισαγωγή για τη δημιουργία σύνδεσης. Ωστόσο, κάθε μία εμφανίζει τον χώρο εργασίας και το στοιχείο με τα οποία συνδέεται μέσω των βημάτων περιήγησης στο ερώτημά σας. Για παράδειγμα, το πρώτο βήμα περιήγησης περιλαμβάνει το workspaceId με το οποίο συνδέεται το ερώτημα.
Ο στόχος είναι να αντικαταστήσετε τις ενσωματωμένες τιμές στη γραμμή τύπων με παραμέτρους. Συγκεκριμένα, πρέπει να δημιουργήσετε μία παράμετρο για το WorkspaceId και μια άλλη για το LakehouseId. Για να δημιουργήσετε παραμέτρους, μεταβείτε στην Αρχική καρτέλα στην κορδέλα, επιλέξτε Διαχείριση παραμέτρων και, στη συνέχεια, επιλέξτε Νέα παράμετρος από το αναπτυσσόμενο μενού.
Καθώς δημιουργείτε τις παραμέτρους, βεβαιωθείτε ότι και οι δύο έχουν επισημανθεί ως απαιτούμενες και έχουν οριστεί στον τύπο κειμένου . Για τις τρέχουσες τιμές τους, χρησιμοποιήστε αυτές που ταιριάζουν με τις αντίστοιχες τιμές από το συγκεκριμένο περιβάλλον σας.
Μόλις δημιουργηθούν και οι δύο παράμετροι, μπορείτε να ενημερώσετε τη δέσμη ενεργειών ερωτήματος για να τις χρησιμοποιήσετε αντί για τιμές με ενσωματωμένο κώδικα. Αυτό περιλαμβάνει τη μη αυτόματη αντικατάσταση των αρχικών τιμών στη γραμμή τύπων με αναφορές στις παραμέτρους Αναγνωριστικό χώρου εργασίας και Αναγνωριστικό λίμνης. Το αρχικό σενάριο ερωτήματος μοιάζει με αυτό:
let
Source = Lakehouse.Contents([]),
#"Navigation 1" = Source{[workspaceId = "8b325b2b-ad69-4103-93ae-d6880d9f87c6"]}[Data],
#"Navigation 2" = #"Navigation 1"{[lakehouseId = "2455f240-7345-4c8b-8524-c1abbf107d07"]}[Data],
#"Navigation 3" = #"Navigation 2"{[Id = "dimension_city", ItemKind = "Table"]}[Data],
#"Filtered rows" = Table.SelectRows(#"Navigation 3", each ([SalesTerritory] = "Southeast")),
#"Removed columns" = Table.RemoveColumns(#"Filtered rows", {"ValidFrom", "ValidTo", "LineageKey"})
in
#"Removed columns"
Αφού ενημερώσετε τις αναφορές στα βήματα περιήγησης, το νέο ενημερωμένο σενάριο μπορεί να μοιάζει με αυτό:
let
Source = Lakehouse.Contents([]),
#"Navigation 1" = Source{[workspaceId = WorkspaceId]}[Data],
#"Navigation 2" = #"Navigation 1"{[lakehouseId = LakehouseId]}[Data],
#"Navigation 3" = #"Navigation 2"{[Id = "dimension_city", ItemKind = "Table"]}[Data],
#"Filtered rows" = Table.SelectRows(#"Navigation 3", each ([SalesTerritory] = "Southeast")),
#"Removed columns" = Table.RemoveColumns(#"Filtered rows", {"ValidFrom", "ValidTo", "LineageKey"})
in
#"Removed columns"
Και παρατηρείτε ότι εξακολουθεί να αξιολογεί σωστά την προεπισκόπηση δεδομένων στο πρόγραμμα επεξεργασίας ροής δεδομένων.
Παραμετροποίηση λογικής
Τώρα που η προέλευση χρησιμοποιεί παραμέτρους, μπορείτε να εστιάσετε στην παραμετροποίηση της λογικής μετασχηματισμού της ροής δεδομένων. Σε αυτό το σενάριο, το βήμα φίλτρου είναι το σημείο όπου εφαρμόζεται η λογική και η τιμή που φιλτράρεται, επί του παρόντος κωδικοποιημένη ως Νοτιοανατολική, θα πρέπει να αντικατασταθεί με μια παράμετρο. Για να το κάνετε αυτό, δημιουργήστε μια νέα παράμετρο με το όνομα Territory, ορίστε τον τύπο δεδομένων της σε κείμενο, σημειώστε την ως μη απαιτούμενη και ορίστε την τρέχουσα τιμή της σε Mideast.
Δεδομένου ότι το βήμα φίλτρου δημιουργήθηκε χρησιμοποιώντας τη διεπαφή χρήστη, μπορείτε να μεταβείτε στο βήμα Φιλτραρισμένες σειρές, να το επιλέξετε δύο φορές και να λάβετε το παράθυρο διαλόγου ρυθμίσεων για το βήμα φίλτρου. Αυτός ο διάλογος σας επιτρέπει να επιλέξετε, μέσω του μικροεργαλείου εισαγωγής, εάν θέλετε να χρησιμοποιήσετε μια παράμετρο αντί για μια στατική τιμή:
Αφού ορίσετε την επιλογή Επιλογή παραμέτρου, θα εμφανιστεί ένα αναπτυσσόμενο μενού που θα εμφανίζει όλες τις διαθέσιμες παραμέτρους που ταιριάζουν με τον απαιτούμενο τύπο δεδομένων. Από αυτήν τη λίστα, μπορείτε να επιλέξετε την παράμετρο Territory που μόλις δημιουργήσατε.
Αφού επιλέξετε OK, παρατηρήστε ότι η προβολή διαγράμματος έχει ήδη δημιουργήσει τη σύνδεση μεταξύ της παραμέτρου που μόλις δημιουργήσατε και του ερωτήματος που χρησιμοποιείται. Όχι μόνο αυτό, αλλά η προεπισκόπηση δεδομένων σάς δείχνει τώρα πληροφορίες για την επικράτεια της Μέσης Ανατολής .
Παραμετροποίηση προορισμού
Σημείωμα
Συνιστάται να εξοικειωθείτε με την έννοια των προορισμών δεδομένων στο Dataflow Gen2 και τον τρόπο δημιουργίας της δέσμης ενεργειών συνδυασμού δεδομένων από το άρθρο σχετικά με τους προορισμούς δεδομένων και τις διαχειριζόμενες ρυθμίσεις
Το τελευταίο στοιχείο που πρέπει να παραμετροποιηθεί σε αυτό το σενάριο είναι ο προορισμός. Ενώ οι πληροφορίες σχετικά με το ποιος είναι ο προορισμός δεδομένων μπορούν να βρεθούν στο πρόγραμμα επεξεργασίας ροής δεδομένων, για να παραμετροποιήσετε αυτό το τμήμα της ροής δεδομένων πρέπει να χρησιμοποιήσετε το Git ή το REST API.
Αυτό το εκπαιδευτικό βοήθημα μας δείχνει πώς να κάνουμε τις αλλαγές μέσω του Git. Για να μπορέσουμε να κάνουμε αλλαγές μέσω του git, βεβαιωθείτε ότι:
- Δημιουργήστε μια παράμετρο με το όνομα WarehouseId: βεβαιωθείτε ότι χρησιμοποιείτε το αντίστοιχο αναγνωριστικό της Αποθήκης σας ως τρέχουσα τιμή, ορίστε το όπως απαιτείται και του τύπου δεδομένων κειμένου.
- Αποθήκευση της ροής δεδομένων: χρησιμοποιήστε το κουμπί Αποθήκευση στην αρχική καρτέλα της κορδέλας.
Μόλις αποθηκευτεί η ροή δεδομένων σας, βεβαιωθείτε ότι έχετε πραγματοποιήσει τις αλλαγές στο αποθετήριο Git και μεταβείτε στο αποθετήριο για να δείτε το αρχείο mashup.pq της ροής δεδομένων σας. Όταν εξετάζετε το αρχείο mashup.pq , αναζητήστε το ερώτημα με το οποίο συσχετίσατε τον προορισμό δεδομένων. Σε αυτό το σενάριο, το όνομα αυτού του ερωτήματος είναι dimension_city. Βλέπετε ένα χαρακτηριστικό καρτέλας πάνω από αυτό το όνομα ερωτήματος:
[DataDestinations = {[Definition = [Kind = "Reference", QueryName = "dimension_city_DataDestination", IsNewTarget = true], Settings = [Kind = "Manual", AllowCreation = true, ColumnSettings = [Mappings = {[SourceColumnName = "CityKey", DestinationColumnName = "CityKey"], [SourceColumnName = "WWICityID", DestinationColumnName = "WWICityID"], [SourceColumnName = "City", DestinationColumnName = "City"], [SourceColumnName = "StateProvince", DestinationColumnName = "StateProvince"], [SourceColumnName = "Country", DestinationColumnName = "Country"], [SourceColumnName = "Continent", DestinationColumnName = "Continent"], [SourceColumnName = "SalesTerritory", DestinationColumnName = "SalesTerritory"], [SourceColumnName = "Region", DestinationColumnName = "Region"], [SourceColumnName = "Subregion", DestinationColumnName = "Subregion"], [SourceColumnName = "Location", DestinationColumnName = "Location"], [SourceColumnName = "LatestRecordedPopulation", DestinationColumnName = "LatestRecordedPopulation"]}], DynamicSchema = false, UpdateMethod = [Kind = "Replace"], TypeSettings = [Kind = "Table"]]]}]
shared dimension_city = let
Αυτή η καρτέλα χαρακτηριστικού έχει ένα πεδίο με το όνομα QueryName, το οποίο περιέχει το όνομα του ερωτήματος που έχει όλη τη λογική προορισμού δεδομένων που σχετίζεται με αυτό το ερώτημα. Αυτό το ερώτημα έχει την εξής μορφή:
shared dimension_city_DataDestination = let
Pattern = Fabric.Warehouse([HierarchicalNavigation = null, CreateNavigationProperties = false]),
Navigation_1 = Pattern{[workspaceId = "8b325b2b-ad69-4103-93ae-d6880d9f87c6"]}[Data],
Navigation_2 = Navigation_1{[warehouseId = "527ba9c1-4077-433f-a491-9ef370e9230a"]}[Data],
TableNavigation = Navigation_2{[Item = "City", Schema = "dbo"]}?[Data]?
in
TableNavigation
Παρατηρείτε ότι, παρόμοια με το σενάριο της πηγής για το Lakehouse, αυτό το σενάριο για τον προορισμό έχει ένα παρόμοιο μοτίβο όπου κωδικοποιεί το workspaceid που πρέπει να χρησιμοποιηθεί και επίσης το warehouseId. Αντικαταστήστε αυτές τις σταθερές τιμές με τα αναγνωριστικά των παραμέτρων και το σενάριό σας θα έχει την εξής μορφή:
shared dimension_city_DataDestination = let
Pattern = Fabric.Warehouse([HierarchicalNavigation = null, CreateNavigationProperties = false]),
Navigation_1 = Pattern{[workspaceId = WorkspaceId]}[Data],
Navigation_2 = Navigation_1{[warehouseId = WarehouseId]}[Data],
TableNavigation = Navigation_2{[Item = "City", Schema = "dbo"]}?[Data]?
in
TableNavigation
Τώρα μπορείτε να πραγματοποιήσετε αυτήν την αλλαγή και να ενημερώσετε τη ροή δεδομένων σας χρησιμοποιώντας τις αλλαγές από τη ροή δεδομένων σας μέσω της δυνατότητας ελέγχου προέλευσης στον χώρο εργασίας σας. Μπορείτε να επαληθεύσετε ότι όλες οι αλλαγές είναι στη θέση τους, ανοίγοντας τη ροή δεδομένων και εξετάζοντας τον προορισμό δεδομένων και τυχόν προηγούμενες αναφορές παραμέτρων που προστέθηκαν. Αυτό οριστικοποιεί όλη την παραμετροποίηση της ροής δεδομένων σας και τώρα μπορείτε να προχωρήσετε στην εκτέλεση της ροής δεδομένων σας μεταβιβάζοντας τιμές παραμέτρων για εκτέλεση.
Εκτέλεση αιτήματος με τιμές παραμέτρων
Μπορείτε να χρησιμοποιήσετε το Fabric REST API για να στείλετε μια αίτηση εκτέλεσης με ένα προσαρμοσμένο ωφέλιμο φορτίο που περιέχει τις τιμές παραμέτρων σας για τη συγκεκριμένη λειτουργία εκτέλεσης και μπορείτε επίσης να χρησιμοποιήσετε το REST API για να ανακαλύψετε παραμέτρους ροής δεδομένων και να κατανοήσετε τι αναμένει η ροή δεδομένων, ώστε να μπορεί να ενεργοποιήσει μια εκτέλεση. Σε αυτό το εκπαιδευτικό βοήθημα, θα χρησιμοποιήσετε την εμπειρία που βρίσκεται στη δραστηριότητα ροής δεδομένων για διοχετεύσεις Fabric. Ξεκινήστε δημιουργώντας μια διοχέτευση και προσθέστε μια νέα δραστηριότητα ροής δεδομένων στον καμβά. Στις ρυθμίσεις της δραστηριότητας, βρείτε τον χώρο εργασίας όπου βρίσκεται η ροή δεδομένων σας και, στη συνέχεια, επιλέξτε τη ροή δεδομένων από την αναπτυσσόμενη λίστα.
Μια ενότητα Παράμετροι ροής δεδομένων μπορεί να αναπτυχθεί για να σας δείξει όλες τις διαθέσιμες παραμέτρους στη ροή δεδομένων και τις προεπιλεγμένες τιμές τους. Μπορείτε να αντικαταστήσετε οποιεσδήποτε τιμές εδώ και οι τιμές που μεταβιβάζονται θα χρησιμοποιηθούν για τον καθορισμό των προελεύσεων, της λογικής και του προορισμού που θα πρέπει να χρησιμοποιηθούν για την αξιολόγηση της εκτέλεσης της ροής δεδομένων σας. Μπορείτε επίσης να δοκιμάσετε νέα σενάρια δημιουργώντας μια νέα αποθήκη και αλλάζοντας το WarehouseId για την αξιολόγηση ή χρησιμοποιώντας αυτό το μοτίβο σε μια διοχέτευση ανάπτυξης όπου το WorkspaceId και άλλες παράμετροι πρέπει να μεταβιβαστούν για να παραπέμψουν στα σωστά στοιχεία στο αντίστοιχο περιβάλλον.