데이터 흐름 매핑의 파생된 열 변환

적용 대상: Azure Data Factory Azure Synapse Analytics

데이터 흐름은 Azure Data Factory 및 Azure Synapse Pipelines에서 모두 사용할 수 있습니다. 이 문서는 매핑 데이터 흐름에 적용됩니다. 변환을 처음 사용하는 경우 매핑 데이터 흐름을 사용하여 데이터 변환 소개 문서를 참조하세요.

파생 열 변환을 사용하여 데이터 흐름에 새 열을 생성하거나 기존 필드를 수정합니다.

열 만들기 및 업데이트

파생 열을 만드는 경우 새 열을 생성하거나 기존 열을 업데이트할 수 있습니다. 텍스트 상자에 만들려는 열을 입력합니다. 스키마의 기존 열을 재정의하려면 열 드롭다운을 사용할 수 있습니다. 파생 열의 식을 작성하려면 식 입력 텍스트 상자를 클릭합니다. 식 입력을 시작하거나 식 작성기를 열어 논리를 생성할 수 있습니다.

Derived column settings

파생 열을 더 추가하려면 열 목록 위의 추가를 클릭하거나 기존 파생 열 옆에 있는 더하기 아이콘을 클릭합니다. 열 추가 또는 열 패턴 추가를 선택합니다.

New derived column selection

열 패턴

스키마가 명시적으로 정의되지 않았거나 열 집합을 대량으로 업데이트하려는 경우 열 패턴을 만드는 것이 좋습니다. 열 패턴을 사용하면 열 메타데이터에 따라 규칙을 통해 열을 일치시키고 일치하는 각 열의 파생 열을 만들 수 있습니다. 자세한 내용은 파생 열 변환에서 열 패턴을 작성하는 방법을 참조하세요.

Column patterns

식 작성기를 사용하여 스키마 작성

매핑 데이터 흐름 식 작성기를 사용하는 경우 파생 열 섹션에서 파생 열을 만들고 편집하고 관리할 수 있습니다. 변환에서 생성 또는 변경된 모든 열이 나열됩니다. 열 이름을 클릭하여 편집할 열이나 패턴을 대화형으로 선택합니다. 열을 더 추가하려면 새로 만들기를 선택한 다음, 단일 열 또는 패턴을 추가할지를 선택합니다.

Create new column

복합 열로 작업하는 경우 하위 열을 만들 수 있습니다. 이렇게 하려면 아무 열이나 옆에 있는 더하기 아이콘을 클릭하고 하위 열 추가를 선택합니다. 데이터 흐름의 복합 형식을 처리하는 방법에 대한 자세한 내용은 매핑 데이터 흐름의 JSON 처리를 참조하세요.

Add subcolumn

데이터 흐름의 복합 형식을 처리하는 방법에 대한 자세한 내용은 매핑 데이터 흐름의 JSON 처리를 참조하세요.

Add complex column

데이터 흐름 스크립트

구문

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

예제

아래 예제는 들어오는 스트림 MoviesYear를 사용하고 두 개의 파생 열을 만드는 CleanData라는 파생 열입니다. 첫 번째 파생 열은 Rating 열을 정수 형식의 등급 값으로 바꿉니다. 두 번째 파생 열은 이름이 'movies'로 시작하는 각 열과 일치하는 패턴입니다. 일치하는 각 열에 대해 일치하는 열의 값에 'movie_' 접두사를 붙인 값과 같은 movie 열을 만듭니다.

UI에서 이 변환은 아래 이미지와 같습니다.

Derive example

이 변환에 대한 데이터 흐름 스크립트는 아래 코드 조각에 있습니다.

MoviesYear derive(
                Rating = toInteger(Rating),
		        each(
                    match(startsWith(name,'movies')),
                    'movie' = 'movie_' + toString($$)
                )
            ) ~> CleanData

다음 단계