SlideShare ist ein Scribd-Unternehmen logo
1 von 10
SCD Wizard w SSIS
To nie do końca dobry pomysł
103. Spotkanie PLSSUG Warszawa, 09.02.2017.
Bartosz Ratajczyk
Konsultant SQL Server
Programista baz danych i aplikacji
Prelegent
MCSE: Data Platform, MCT
http://bartekr.net | b.ratajczyk@gmail.com
SCD – Slowly Changing Dimension
• Mechanizm używany do wolno-zmiennych tabel, głównie wymiarów
• Kilka typów, z czego najbardziej popularne:
• SCD 0 == nie interesują nas zmiany, pierwsza wersja zawsze najlepsza
• SCD 1 == interesuje nas zawsze ostatnia wersja, najlepsze są tylko aktualne
dane
• SCD2 == interesuje nas każda zmiana – na tyle, że odkładamy każdą zmianę w
oddzielnym rekordzie
• SCD3 == interesuje nas każda zmiana, ale trzymamy tylko obecną i ostatnią
wersję – do tego każda kolumna ma swoją siostrzaną kolumnę z poprzednią
wartością
Główny aktor wieczoru
Standardy nazewnictwa
http://sqlblog.com/blogs/jamie_thomson/archive/2012/01/29/suggested-
best-practises-and-naming-conventions.aspx
http://microsoft-ssis.blogspot.com/2016/12/ssis-naming-conventions.html
SCD Wizard
SCD 1
SCD2
Główna wada komponentu SCD
https://connect.microsoft.com/SQLServer/feedback/details/632052/ssis-slowly-changing-dimension-scd-component-performance-unusably-slow
Alternatywy
• Własna logika zasilania oparta o tabelę pomocniczą
• MERGE do obsługi SCD
• SCD Wizard pomaga utworzyć polecenia MERGE dla SCD0 – SCD3
• http://scdmergewizard.codeplex.com/

Weitere ähnliche Inhalte

Mehr von Bartosz Ratajczyk (9)

Podstawy ETL z SSIS
Podstawy ETL z SSISPodstawy ETL z SSIS
Podstawy ETL z SSIS
 
XML w SQL Server w praktyce
XML w SQL Server w praktyceXML w SQL Server w praktyce
XML w SQL Server w praktyce
 
Jak szybko przetwarzasz hurtowe ilości XML?
Jak szybko przetwarzasz hurtowe ilości XML?Jak szybko przetwarzasz hurtowe ilości XML?
Jak szybko przetwarzasz hurtowe ilości XML?
 
Operacje minimalnie logowane
Operacje minimalnie logowaneOperacje minimalnie logowane
Operacje minimalnie logowane
 
Po co mi Temporal Tables?
Po co mi Temporal Tables?Po co mi Temporal Tables?
Po co mi Temporal Tables?
 
Co to te CTE?
Co to te CTE?Co to te CTE?
Co to te CTE?
 
O co chodzi z FILESTREAM?
O co chodzi z FILESTREAM?O co chodzi z FILESTREAM?
O co chodzi z FILESTREAM?
 
Alerty WMI
Alerty WMIAlerty WMI
Alerty WMI
 
Czy mi się przyda hierarchyid?
Czy mi się przyda hierarchyid?Czy mi się przyda hierarchyid?
Czy mi się przyda hierarchyid?
 

SCD Wizard w SSIS to nie do końca dobry pomysł