내가, 내가 구조를 유형 II 치수는 다음과 같이
CREATE TABLE TransactionState
(
TransactionStateId INT IDENTITY (1, 1) NOT NULL,
TransactionStateName VarChar (100)
)
이 내 OLAP에 와서 OLTP
에서 다음 표 룩업 테이블을 변경 한 조인 기둥. 시간이 지남에 따라 OLAP에는 TransactionStateId 값이 중복 될 수 있지만 StartDateTime과 EndDateTime을 조합하면 고유합니다.OriginalTransactionStateId가 추가되고 들어오는 TransactionStateId가 매핑 된 Type-2 차원의 샘플을 보았습니다. 그리고 새로운 TransactionStateId IDENTITY 필드가 PK가되어 조인에 사용됩니다.
CREATE TABLE TransactionState
(
TransactionStateId INT IDENTITY (1, 1) NOT NULL,
OriginalTransactionStateId INT NOT NULL, /* not an IDENTITY column in OLAP */
TransactionStateName VarChar (100) NOT NULL,
StartDateTime DateTime NOT NULL,
EndDateTime NULL
)
bachellorete # 2 또는 bachellorete # 3과 함께해야할까요? 이 구절에 의해
@Quassnoi : 시간 구성 요소는 StartDateTime과 EndDateTime에서 모두 제거되며 하루 간격으로 분리됩니다. –
@Quassnio : 코드 샘플을 가져 주셔서 감사합니다. 2 명의 bachellorettes에 대한 나의 최초의 질문에 대한 당신의 견해는 무엇입니까? –
@Tapori : "bachelorettes"에 의해'SCD' 타입을 의미하는 경우,'Type 2'가 더 낫습니다. 각 상태의 버전이 2보다 많을 것입니다. 일반적으로 (게시물에 설명 된 이유로) 쿼리 속도가 느린 것으로 간주되지만 게시물의 기술을 사용하면 훌륭한 성능을 얻을 수 있습니다. – Quassnoi