SQL 2014 데이터베이스에서 느리게 변경되는 유형 1 테이블에 대해 ETL 프로세스를 구현하려고합니다. 로드는 서버에서 발생해야하며 링크 된 서버를 사용하지 않는 것이 좋습니다.SSIS를 사용하여 소스에서 삭제 된 행을 어떻게 처리합니까? 느린 변경 차원
SSIS에서이 작업을 수행 할 방법을 찾고 있었지만 비즈니스 키에 일치하는 행만 업데이트하거나 행을 업데이트 할 수 있다는 점을 제외하고는 천천히 변화하는 차원 마법사가 제대로 작동한다는 것을 발견했습니다. 레코드가 차원 테이블에 있지만 원본에서 삭제 된 경우 처리 할 수있는 위치를 찾지 못했습니다. 나는 이것들이 삭제되었는지 확인하고 싶다. 내가 놓친 게 있니? SSIS에서이 문제를 해결할 더 좋은 방법을 찾은 사람이 있습니까?
대상 서버의 다른 테이블에 모든 것을 덤프하고 TSQL 병합을 작성할 수 있다는 것을 알고 있지만 SSIS에서이 작업을 수행하는 간단한 방법이 있어야합니다.
링크 된 서버의 사용에는 어떤 문제가 있습니까? – Anton
SSIS를 오해 한 것입니다 ... 병합 프로세스에서 데이터를 테이블로 옮겨야합니다. SSIS에는 OUTPUT 자체가 없지만 "삭제 된"행을 표시하는 데 사용할 수있는 오류 처리 방법이 있습니다. 물론 단 하나의 단단한 TSQL MERGE도이를 수행 할 수 있지만 이종 테이블에 SSIS가 필요하다고 가정 할 수 있습니다 ... 삭제 된 행이 SSIS의 존재하지 않는 행이라는 것을 인식하십시오. 그러나 나쁜 행은 SSIS의 행입니다. –
정보를 제공해 주셔서 감사합니다. TSQl 병합을 준비하는 것이 최선의 선택이 될 것이라고 생각합니다. 내가 연결된 서버를 사용하지 않으려 고 생각하는 몇 가지 이유가 있습니다. 예를 들어, 다른 개발자는 설정 한 방식으로 뭔가를 할 수 없으며 인증을 위해 SA를 넣는 것을 끝냅니다.)뿐만 아니라이 프로세스가 여러 서버로 이동하여 새로운 서버로 쉽게 이동할 수 있어야하고 SSIS의 패키지 구성으로 연결 문자열을 변경하는 것이 매우 간단하기 때문입니다. 물론 연결된 서버와 약간의 동적 SQL을 사용하여 수행 할 수 있습니다. – schiznig