Przekształcanie kolumn pochodnych w przepływie danych mapowania

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 danych są dostępne zarówno w usłudze Azure Data Factory, jak i w potokach usługi Azure Synapse. Ten artykuł dotyczy przepływów danych mapowania. Jeśli dopiero zaczynasz transformacje, zapoznaj się z artykułem wprowadzającym Przekształcanie danych przy użyciu przepływu danych mapowania.

Użyj przekształcenia kolumny pochodnej, aby wygenerować nowe kolumny w przepływie danych lub zmodyfikować istniejące pola.

Tworzenie i aktualizowanie kolumn

Podczas tworzenia kolumny pochodnej można wygenerować nową kolumnę lub zaktualizować istniejącą kolumnę. W polu tekstowym Kolumna wprowadź w tworzonej kolumnie. Aby zastąpić istniejącą kolumnę w schemacie, możesz użyć listy rozwijanej kolumny. Aby skompilować wyrażenie kolumny pochodnej, kliknij pole tekstowe Enter expression (Wprowadź wyrażenie ). Możesz rozpocząć wpisywanie wyrażenia lub otworzyć konstruktora wyrażeń, aby utworzyć logikę.

Derived column settings

Aby dodać więcej kolumn pochodnych, kliknij pozycję Dodaj nad listą kolumn lub ikoną znaku plus obok istniejącej kolumny pochodnej. Wybierz pozycję Dodaj kolumnę lub Dodaj wzorzec kolumny.

New derived column selection

Wzorce kolumn

W przypadkach, gdy schemat nie jest jawnie zdefiniowany lub jeśli chcesz zbiorczo zaktualizować zestaw kolumn, należy utworzyć wzorce kolumn. Wzorce kolumn umożliwiają dopasowywanie kolumn przy użyciu reguł opartych na metadanych kolumn i tworzenie kolumn pochodnych dla każdej dopasowanej kolumny. Aby uzyskać więcej informacji, dowiedz się , jak tworzyć wzorce kolumn w transformacji kolumn pochodnych.

Column patterns

Kompilowanie schematów przy użyciu konstruktora wyrażeń

Korzystając z konstruktora wyrażeń przepływu mapowania danych, możesz tworzyć, edytować i zarządzać kolumnami pochodnymi w sekcji Kolumny pochodne. Zostaną wyświetlone wszystkie kolumny utworzone lub zmienione w transformacji. Interaktywnie wybierz edytowaną kolumnę lub wzorzec, klikając nazwę kolumny. Aby dodać dodatkową kolumnę, wybierz pozycję Utwórz nową i wybierz, czy chcesz dodać pojedynczą kolumnę, czy wzorzec.

Create new column

Podczas pracy z kolumnami złożonymi można tworzyć podkolumny. Aby to zrobić, kliknij ikonę znaku plus obok dowolnej kolumny i wybierz pozycję Dodaj kolumnę podrzędną. Aby uzyskać więcej informacji na temat obsługi złożonych typów w przepływie danych, zobacz Obsługa kodu JSON w przepływie danych mapowania.

Add subcolumn

Aby uzyskać więcej informacji na temat obsługi złożonych typów w przepływie danych, zobacz Obsługa kodu JSON w przepływie danych mapowania.

Add complex column

Skrypt przepływu danych

Składnia

<incomingStream>
    derive(
           <columnName1> = <expression1>,
           <columnName2> = <expression2>,
           each(
                match(matchExpression),
                <metadataColumn1> = <metadataExpression1>,
                <metadataColumn2> = <metadataExpression2>
               )
          ) ~> <deriveTransformationName>

Przykład

Poniższy przykład to kolumna pochodna o nazwie CleanData , która pobiera strumień MoviesYear przychodzący i tworzy dwie kolumny pochodne. Pierwsza kolumna pochodna zastępuje kolumnę Rating wartością Rating jako typ całkowity. Druga kolumna pochodna jest wzorcem zgodnym z każdą kolumną, której nazwa zaczyna się od "filmów". Dla każdej dopasowanej kolumny tworzy kolumnę movie , która jest równa wartości dopasowanej kolumny poprzedzonej prefiksem "movie_".

W interfejsie użytkownika ta transformacja wygląda jak na poniższej ilustracji:

Derive example

Skrypt przepływu danych dla tej transformacji znajduje się w poniższym fragmencie kodu:

MoviesYear derive(
                Rating = toInteger(Rating),
		        each(
                    match(startsWith(name,'movies')),
                    'movie' = 'movie_' + toString($$)
                )
            ) ~> CleanData
  • Dowiedz się więcej o języku wyrażeń mapowania Przepływ danych.