I've been given the unenviable task documenting the catalogue ingest process of our data warehouse. All was going well until the end where I came across the use of a conditional split inside of an SSIS data flow task.
The data flow task is relatively simple, loading the empty live catalogue table from the staging table, however there's a conditional split that takes the input from the staging table and splits it into four separate outputs using a modulo expression based on the unique record number.
- Catalogue_Key % 4 < 1 (Output 1)
- Catalogue_Key % 4 < 2 (Output 2)
- Catalogue_Key % 4 < 3 (Output 3)
- Catalogue_Key % 4 < 4 (Output 4)
(Catalogue_Key is a auto incrementing integer field)
All four paths out of the conditional split are then loaded into the same destination table with no additional processing.
Can anyone offer any wisdom for why this conditional split might have been implemented given that all the records get loaded into the same destination table.
I've tried searching Google and Stack Overflow for an answer but I've been unable to find anything related, however now knowing the reason, it's hard to know what to even search for.
BACKUP
andRESTORE
.