Parametryzacja przepływów mapowania danych

DOTYCZY: Azure Data Factory Azure Synapse Analytics

Napiwek

Wypróbuj usługę Data Factory w usłudze Microsoft Fabric — rozwiązanie analityczne typu all-in-one dla przedsiębiorstw. Usługa Microsoft Fabric obejmuje wszystko, od przenoszenia danych do nauki o danych, analizy w czasie rzeczywistym, analizy biznesowej i raportowania. Dowiedz się, jak bezpłatnie rozpocząć nową wersję próbną !

Przepływy mapowania danych w potokach usług Azure Data Factory i Synapse obsługują używanie parametrów. Zdefiniuj parametry wewnątrz definicji przepływu danych i użyj ich w wyrażeniach. Wartości parametrów są ustawiane przez potok wywołujący za pośrednictwem działania Wykonaj Przepływ danych. Dostępne są trzy opcje ustawiania wartości w wyrażeniach działań przepływu danych:

  • Użyj języka wyrażeń przepływu sterowania potokiem, aby ustawić wartość dynamiczną
  • Ustawianie wartości dynamicznej przy użyciu języka wyrażeń przepływu danych
  • Użyj dowolnego języka wyrażeń, aby ustawić wartość literału statycznego

Użyj tej funkcji, aby przepływy danych korzystały z ogólnego przeznaczenia, elastycznego i wielokrotnego użytku. Za pomocą tych parametrów można sparametryzować ustawienia i wyrażenia przepływu danych.

Tworzenie parametrów w przepływie danych mapowania

Aby dodać parametry do przepływu danych, kliknij pustą część kanwy przepływu danych, aby wyświetlić ogólne właściwości. W okienku ustawień zostanie wyświetlona karta o nazwie Parametr. Wybierz pozycję Nowy , aby wygenerować nowy parametr. Dla każdego parametru należy przypisać nazwę, wybrać typ i opcjonalnie ustawić wartość domyślną.

Zrzut ekranu przedstawiający tworzenie parametrów Przepływ danych.

Używanie parametrów w przepływie danych mapowania

Do parametrów można odwoływać się w dowolnym wyrażeniu przepływu danych. Parametry zaczynają się od $ i są niezmienne. Listę dostępnych parametrów znajdziesz w konstruktorze wyrażeń na karcie Parametry .

Zrzut ekranu przedstawia dostępne parametry na karcie Parametry.

Możesz szybko dodać dodatkowe parametry, wybierając pozycję Nowy parametr i określając nazwę i typ.

Zrzut ekranu przedstawia parametry na karcie Parametry z dodanymi nowymi parametrami.

Używanie sparametryzowanych połączonych usług w przepływie danych mapowania

Sparametryzowane połączone usługi mogą być używane w przepływie danych mapowania (w przypadku zestawu danych lub wbudowanych typów źródłowych).

W przypadku wbudowanego typu źródła parametry połączonej usługi są uwidocznione w ustawieniach działania przepływu danych w potoku, jak pokazano poniżej.

Zrzut ekranu przedstawiający użycie połączonych parametrów usługi w przepływie danych.

W przypadku typu źródła zestawu danych parametry połączonej usługi są widoczne bezpośrednio w konfiguracji zestawu danych.

Przypisywanie wartości parametrów z potoku

Po utworzeniu przepływu danych z parametrami można go wykonać z potoku za pomocą działania Wykonaj Przepływ danych. Po dodaniu działania do kanwy potoku zostaną wyświetlone parametry przepływu danych dostępne na karcie Parametry działania.

Podczas przypisywania wartości parametrów można użyć języka wyrażeń potoku lub języka wyrażeń przepływu danych na podstawie typów platformy Spark. Każdy przepływ danych mapowania może mieć dowolną kombinację parametrów wyrażenia potoku i przepływu danych.

Zrzut ekranu przedstawia kartę Parametry z wyrażeniem Przepływ danych wybranym dla wartości myparam.

Parametry wyrażenia potoku

Parametry wyrażenia potoku umożliwiają odwołowanie się do zmiennych systemowych, funkcji, parametrów potoku i zmiennych podobnych do innych działań potoku. Po kliknięciu przycisku Wyrażenie potoku zostanie otwarte okienko nawigacji bocznej, co umożliwi wprowadzenie wyrażenia przy użyciu konstruktora wyrażeń.

Zrzut ekranu przedstawiający okienko konstruktora wyrażeń.

W przypadku przywołowania parametry potoku są oceniane, a następnie ich wartość jest używana w języku wyrażeń przepływu danych. Typ wyrażenia potoku nie musi być zgodny z typem parametru przepływu danych.

Literały ciągu a wyrażenia

Podczas przypisywania parametru wyrażenia potoku typu ciąg domyślnie cudzysłowy zostaną dodane, a wartość zostanie obliczona jako literał. Aby odczytać wartość parametru jako wyrażenie przepływu danych, zaznacz pole wyrażenia obok parametru.

Zrzut ekranu przedstawiający okienko Parametry przepływu danych Wyrażenie wybrane dla parametru.

Jeśli parametr stringParam przepływu danych odwołuje się do parametru potoku o wartości upper(column1).

  • Jeśli wyrażenie jest zaznaczone, $stringParam oblicza wartość kolumny column1 wszystkie wielkie litery.
  • Jeśli wyrażenie nie jest zaznaczone (zachowanie domyślne), $stringParam ocenia wartość 'upper(column1)'

Przekazywanie sygnatur czasowych

W języku wyrażeń potoku zmienne systemowe, takie jak i funkcje, takie jak pipeline().TriggerTime utcNow() znaczniki czasu powrotu jako ciągi w formacie "rrrr-MM-dd'T'HH:mm:ss. SSSSSSZ". Aby przekonwertować je na parametry przepływu danych sygnatury czasowej typu, użyj interpolacji ciągów, aby uwzględnić żądany znacznik czasu w toTimestamp() funkcji. Aby na przykład przekonwertować czas wyzwalacza potoku na parametr przepływu danych, możesz użyć polecenia toTimestamp(left('@{pipeline().TriggerTime}', 23), 'yyyy-MM-dd\'T\'HH:mm:ss.SSS').

Zrzut ekranu przedstawia kartę Parametry, na której można wprowadzić czas wyzwalacza.

Uwaga

Przepływ danych mogą obsługiwać maksymalnie 3 milisekundy. Funkcja left() jest używana przycinanie dodatkowych cyfr.

Przykład parametru potoku

Załóżmy, że masz parametr intParam całkowity, który odwołuje się do parametru potoku typu String, @pipeline.parameters.pipelineParam.

Zrzut ekranu przedstawia kartę Parametry z parametrami o nazwie stringParam i intParam.

@pipeline.parameters.pipelineParam jest przypisywana wartość abs(1) w czasie wykonywania.

Zrzut ekranu przedstawia kartę Parametry z wybraną wartością b s (1).

Jeśli $intParam odwołanie jest przywoływane w wyrażeniu, takim jak kolumna pochodna, zwróci abs(1) wartość .1

Zrzut ekranu przedstawia wartość kolumn.

Parametry wyrażenia przepływu danych

Wybranie pozycji Wyrażenie przepływu danych spowoduje otwarcie konstruktora wyrażeń przepływu danych. Będziesz mieć możliwość odwołowania się do funkcji, innych parametrów i dowolnej zdefiniowanej kolumny schematu w całym przepływie danych. To wyrażenie zostanie ocenione jako , gdy zostanie przywoływane.

Uwaga

Jeśli przekażesz nieprawidłowe wyrażenie lub odwołasz się do kolumny schematu, która nie istnieje w tej transformacji, parametr zwróci wartość null.

Przekazywanie nazwy kolumny jako parametru

Typowym wzorcem jest przekazanie nazwy kolumny jako wartości parametru. Jeśli kolumna jest zdefiniowana w schemacie przepływu danych, możesz odwoływać się do niej bezpośrednio jako wyrażenie ciągu. Jeśli kolumna nie jest zdefiniowana w schemacie, użyj byName() funkcji . Pamiętaj, aby rzutować kolumnę do odpowiedniego typu za pomocą funkcji rzutowania, takiej jak toString().

Jeśli na przykład chcesz zamapować kolumnę ciągu na podstawie parametru columnName, możesz dodać transformację kolumny pochodnej równą toString(byName($columnName))wartości .

Przekazywanie nazwy kolumny jako parametru

Uwaga

W wyrażeniach przepływu danych interpolacja ciągów (podstawianie zmiennych wewnątrz ciągu) nie jest obsługiwana. Zamiast tego połącz wyrażenie z wartościami ciągu. Na przykład 'string part 1' + $variable + 'string part 2'