2014-10-29 3 views
0

SCD 작업 마법사를 사용하여 UpdateChangingAttributeHistory 속성을 설정할 수 없으며 기본적으로 false로 설정됩니다. 고급 편집기를 사용하여 이것을 true로 설정할 수 있지만 생성 된 흐름을 업데이트하지 않으므로 동작이 변경되지 않았습니다. UpdateChangingAttributeHistory를 다시 false로 설정하는 마법사를 다시 실행하지 않고 SSIS가 흐름을 다시 생성하도록하려면 무엇을해야합니까?SSIS 2012 - 차원이 UpdateChangingAttributeHistory를 천천히 변경하도록 설정

제 목표는 변경이 발생할 때 사실 테이블을 업데이트하는 유형 2 scd를 갖는 것입니다.

+0

천천히 변화하는 차원 속성 창에서 'UpdateChangingAttributeHistory'속성을 갖고 있지 않습니까? 당신이 그것을 거짓에서 진정으로 바꾸지 못하게하는 것. 내가 당신 문제를 이해하지 못했을 수도 있습니다. –

+0

실제로 할 수 있고 할 수 있습니다! 그러나 이것은 ssis의 행동을 바꾸지 않는 것처럼 보입니다. 이 속성이하는 일을 오해 한 것일 수 있지만이 기능을 실행 한 후에 팩트 테이블을 변경 한 내용을 볼 수는 없습니다. –

+1

저는 항상 SSIS SCD 작업으로 어려움을 겪었습니다. 최근 SCD가 성능 측면에서 최악이라고 읽었습니다. 이제 우리는 LookUp 작업 세트 인 OLEDB 작업을 사용하여 SCD 기능을 얻습니다. 귀하의 문제에 대한 답변이 아니라 바로 추가하십시오. –

답변

1

마법사에서 UpdateChangingAttributeHistory 확인란이 회색으로 표시되는 이유를 설명 할 수 없습니다. 그러나 나는 그것이 무엇을하는지 말할 수 있습니다. 이 거짓 인 경우, 기본, 그것은을위한 OLE DB 명령의 WHERE 절을 변경됩니다 이런 식으로 "변경하면 업데이트 출력 속성"당신이 날짜를 사용하지 않는 경우

... WHERE [SomeKeyColumn] = ? AND [SCD_EndDate] IS NULL 

것은, 뭔가 될 것입니다 like [CurrentRowFlag] = 'Y'

속성을 true로 설정하면 WHERE 절의 해당 부분이 제거되어 유형 1 변경 사항이있는 모든 행이 갱신되고 현재 및 실행 기록이됩니다. 그리고 그게 다야. OLE DB 명령이 변경되지 않았기 때문에 구성 요소를 재생성하지 않으면 플래그가 아무런 영향을 미치지 않는 것입니다.

변경 속성 업데이트 출력에서 ​​수동으로 변경할 수 있지만 나중에 SCD 구성 요소가 재생성되면 이러한 변경 사항이 손실 될 수 있습니다.
의견에서 언급했듯이 성능이 뛰어나고 유지 관리가 용이하도록 다른 구성 요소와 함께이 기능을 만드는 것이 좋습니다. 특히 재미있는 부분이있는 경우 특히 유용합니다.

+0

나에게 합리적인 소리가 난다! 나는 결과가 어떻게 될지 오해했다라고 생각한다. :) –