다음을 통해 공유


Slowly Changing Dimension Transformation

적용 대상: SQL Server Azure Data Factory의 SSIS Integration Runtime

느린 변경 차원의 변환은 데이터 웨어하우스 차원 테이블의 기록 업데이트 및 삽입을 조정합니다. 예를 들어 이 변환을 사용하면 AdventureWorks OLTP 데이터베이스의 Production.Products 테이블의 데이터로 AdventureWorksDW2022 데이터베이스의 DimProduct 테이블의 레코드를 삽입 및 업데이트하는 변환 출력을 구성할 수 있습니다.

Important

느린 변경 차원 마법사는 구조적 쿼리 언어 서버에 대한 연결만 지원합니다.

느린 변경 차원 변환은 느린 변경 차원을 관리하기 위한 다음과 같은 기능을 제공합니다:

  • 들어오는 행을 조회 테이블의 행과 일치시켜 새 행과의 기존 행을 식별해 주세요.

  • 변경이 허용되지 않는 경우 변경 내용이 포함된 들어오는 행을 식별합니다.

  • 업데이트가 필요한 유추 멤버 레코드를 식별합니다.

  • 새로운 레코드 삽입 및 기존 레코드 업데이트가 필요한 기록 변경 내용이 포함된 들어오는 행을 식별합니다.

  • 만료된 기록을 포함하여 기존 기록을 업데이트해야 하는 변경 내용이 포함된 들어오는 행을 감지합니다.

느린 변경 차원 변환은 네 가지 유형의 변경인 변경 특성, 기록 특성, 고정 특성 및 유추 멤버를 지원합니다.

  • 속성 변경 사항을 변경하면 기존 기록을 덮어쓰는 것입니다. 이러한 종류의 변경 내용은 유형 1의 변경 내용과 동일합니다. 느린 변경 차원 변환은 이러한 행을 변경 특성 업데이트 출력이라는 출력으로 전송해 줍니다.

  • 기록 속성 변경은 기존 기록을 업데이트하는 대신에 새로운 기록을 만듭니다. 기존 레코드에서 허용되는 유일한 변경 내용은 레코드가 현재 상태 또는 만료된 상태인지 여부를 나타내는 열에 대한 업데이트입니다. 이러한 종류의 변경 내용은 Type 2 변경 내용과 동일합니다. 느린 변경 차원 변환은 이러한 행을 기록 특성 삽입 내용 출력새 출력이라는 출력으로 보냅니다.

  • 고정 특성 변경 내용은 열 값이 변경되지 않도록 지정합니다. 느린 변경 차원 변환은 변경 내용을 감지하며 변경 내용이 있는 행을 고정 특성 출력이라는 출력으로 전송해 줄 수 있습니다.

  • 유추 구성원은 행이 차원 테이블의 유추 구성원의 기록임을 나타냅니다. 유추 구성원은 팩트 테이블이 아직 로드되어 있지 않은 차원의 구성원을 참고할 경우에 존재하게 됩니다. 이후에 차원 데이터를 로드할 때 제공되어지는 관련된 차원의 데이터를 예상하여 최소한의 유추 구성원 기록이 만들어 지게 되는 것입니다. 느린 변경 차원 변환은 이러한 행을 유추 멤버 업데이트 내용 출력이라는 출력으로 보냅니다. 추론된 구성원에 대한 데이터가 로드되면 새로운 기록을 만들어내는 대신에 기존 기록을 업데이트할 수 있습니다.

참고 항목

느린 변경 차원 변환은 차원 테이블을 변경해야 하는 형식 3 변경 내용을 지원하지 않습니다. 고정 특성 업데이트 형식의 열을 식별하면 형식 3 변경 후보인 데이터 값을 캡처할 수 있습니다.

실행시에 느린 변경 차원 변환은 먼저 들어오는 행을 조회 테이블의 기록과 일치시키기 위해 시도합니다. 일치하는 항목이 없는 경우에는 들어오는 행은 새로운 기록인 것입니다. 따라서 느린 변경 차원 변환은 추가 작업을 실행하지 않고 행을 새로운 출력으로 전송합니다.

일치 항목이 있으면 느린 변경 차원 변환은 행에 변경 내용이 들어 있는지 검색합니다. 행에 변경 내용이 포함된 경우에는 느린 변경 차원 변환은 각 열의 업데이트 유형을 식별하며 행을 특성 업데이트 출력, 고정 특성 출력, 기록 특성 삽입 출력 혹은 유추 구성원 업데이트 출력으로 행을 전송합니다. 행이 변경되지 않은 경우에는 느린 변경 차원 변환은 행을 변경하지 않은 출력으로 전송합니다.

느린 변경 차원 변환 출력

느린 변경 차원 변환에는 1개의 입력과 최대 6개의 출력을 가지고 있습니다. 출력은 행의 업데이트 및 삽입 요구 사항과 일치하는 데이터 흐름의 하위 집합으로 행을 보냅니다. 이 변환은 오류 출력을 지원하고 있지 않습니다.

다음 표에서는 변환 출력 및 후속 데이터 흐름의 요구 사항을 설명해 드립니다. 요구 사항은 느린 변경 차원 마법사에서 만들고 있는 데이터 흐름을 설명해 드립니다.

출력 설명 데이터 흐름 요구 사항
변경 특성 업데이트 내용 출력 조회 테이블의 레코드가 업데이트됩니다. 이 출력은 특성 행을 변경하기 위해 사용됩니다. OLE DB 명령 변환은 UPDATE 문을 사용하여 기록을 업데이이트 하는 것입니다.
고정 특성 출력 변경해서는 안 되는 행의 값은 조회 테이블의 값과 일치하지 않습니다. 이 출력은 고정 특성 행에 사용되게 됩니다. 기본 데이터 흐름이 만들어지지 않았습니다. 고정 특성 열의 변경 내용이 발견되어도 계속되도록 변환이 구성된 경우에는 이러한 행을 캡처하는 데이터 흐름을 만들어야 합니다.
기록 특성 삽입 출력 조회 테이블에 일치하는 행이 적어도 한 개 이상 있습니다. "현재"로 표시된 행은 이제 "만료됨"으로 표시해야 합니다. 이 출력은 새로운 행을 위해서 사용되며 기록 특성 행으로 변경됩니다. 파생 열 변환은 만료된 행 및 현재 행 표시를 위한 열을 만듭니다. OLE DB 명령 변환은 이제 "만료됨"으로 표시해야 하는 기록을 업데이트합니다. 새 열 값을 가지고 있는 행은 새 출력으로 이동하게 되며, 여기에서 행은 삽입되게 되는 것이며 “현재”로 표시됩니다.
유추 구성원 업데이트 출력 유추된 차원의 구성원에 대한 행이 삽입됩니다. 이 출력은 유추 멤버 행에 대해 사용됩니다. OLE DB 명령 변환은 SQL UPDATE 문을 사용하게 되고 기록을 업데이트하게 됩니다.
새로운 출력 조회 테이블에 일치하는 행을 가지고 잇지 않습니다. 행이 차원 테이블에 추가됩니다. 이 출력은 새 행에 대해 사용되며 기록 특성 행으로 변경됩니다. 파생 열 변환은 현재 행 표시기를 설정하며 OLE DB 대상은 행을 삽입하게 되는 것입니다.
변경되지 않은 출력 조회 테이블의 값이 행 값과 일치합니다. 이 출력은 변경되지 않은 행에 사용되게 되는 것입니다. 느린 변경 차원 변환에서 아무 작업도 실행되지 않기 때문에 기본 데이터 흐름이 생성되지 않습니다. 이러한 행을 캡처하고 싶은 경우에는 이 출력에 대한 데이터 흐름을 만들어 주어야 합니다.

업무 키

느린 변경 차원 변환에는 1개 이상의 업무 키 열이 필요합니다.

느린 변경 차원 변환은 null 업무 키를 지원해 드리고 있지 않습니다. 데이터에 비즈니스 키가 Null인 행이 있으면 해당 행을 데이터 흐름에서 제거해야 합니다. 조건부 분할 변환을 사용하여 업무 키 열에 null 값이 포함된 행을 필터링할 수 있습니다. 자세한 내용은 Conditional Split Transformation을 참조하세요.

느린 변경 차원 변환의 성능 최적화

느린 변경 차원 변환의 성능을 향상하는 방법은 데이터 흐름 성능 기능을 참조하세요.

느린 변경 차원 변환의 문제 해결

느린 변경 차원 변환이 외부 데이터 공급자에 대해 실행하고 있는 호출을 로깅할 수 있습니다. 이 로깅 기능을 사용하여 느린 변경 차원 변환이 실행하는 외부 데이터 소스에 대한 연결, 명령 및 쿼리 문제를 해결할 수 있습니다. 느린 변경 차원 변환이 외부 데이터 공급자를 위해 실행하는 호출을 기록하기 위해 패키지 로깅을 활성화하고 패키지 수준에서 진단 이벤트를 선택합니다. 자세한 정보는 패키지 실행을 위한 문제 해결 도구를 참고해 주세요.

느린 변경 차원 변환 구성

SSIS 디자이너를 사용하거나 프로그래밍 방식으로 속성을 설정할 수 있습니다.

고급 편집기 대화 상자를 사용하거나 프로그래밍 방식으로 설정할 수 있는 속성에 대한 자세한 내용을 보려면 다음 항목 중 하나를 클릭하세요:

속성을 설정하는 방법에 대한 자세한 내용은 데이터 흐름 구성 요소의 속성 설정을 참조하세요.

느린 변경 차원 변환 출력 구성

차원 테이블에서 기록 업데이트 및 삽입을 조정하는 것은 복잡한 작업이 될 수 있으며, 특히 유형 1과 유형 2 변경이 모두 사용되는 경우에는 더욱 복잡한 작업이 될 수 있는 것입니다. 구조적 쿼리 언어 서버 통합 서비스의 디자이너는 느린 변경 차원에 대한 지원을 구성하는 두 가지 방법을 제공해 드리고 있습니다:

  • 연결을 선택하여, 공통 및 사용자 구성 요소 속성을 설정하고, 입력 열을 선택한 이후에, 6개 출력에 대한 열 속성을 설정할 수 있는 고급 편집기 대화 상자입니다. 느린 변경 차원에 대한 지원을 구성하는 작업을 완료하기 위한 느린 변경 차원 변환에서 사용하는 출력에 대한 데이터 흐름을 수동으로 만들어 주어야 합니다. 자세한 내용은 Data Flow을 참조하세요.

  • 느린 변경 차원 변환을 구성하고 변환 출력을 위한 데이터 흐름을 작성하는 단계를 안내해 드리는 차원의 로드 마법사입니다. 느린 차원 변경에 대한 구성을 변경하기 위해 차원 로드 마법사를 다시 실행해 주세요. 자세한 정보는 느린 변경 차원 마법사를 사용하여 출력 구성을 참고해 주세요.

데이터 흐름 구성 요소의 속성 설정