Hello,
I'm designing my first SSIS packages for a small data warehouse I'm trying out as a first sample project. I've already designed my dimension packages, which are not so much of an issue.
Where I'm having trouble is in my fact table package. My fact table contains a number of FKs pointing to dimension tables, and I have to handle early arriving facts. The way I have to handle early arriving facts is to insert an empty row for the corresponding dimension entry, I know the data for the dimension will come, it's just that I can't assume the order of entries. So in order to determine whether I have what I need in my dimension table, I have a bunch of lookups in my fact package for each dimension.
I have lookup --> Error output Ole DB command to call Sp to insert empty dimension entry, then Lookup again and then Union to go back down the data flow. I have this for each dimension entry I have to lookup. I'm just wondering if this is an efficient way of doing things (I use caching in my lookups) and if people have other ways of achieving my goal that involves a less complicated data flow.
Many thanks,
Greg
I'm designing my first SSIS packages for a small data warehouse I'm trying out as a first sample project. I've already designed my dimension packages, which are not so much of an issue.
Where I'm having trouble is in my fact table package. My fact table contains a number of FKs pointing to dimension tables, and I have to handle early arriving facts. The way I have to handle early arriving facts is to insert an empty row for the corresponding dimension entry, I know the data for the dimension will come, it's just that I can't assume the order of entries. So in order to determine whether I have what I need in my dimension table, I have a bunch of lookups in my fact package for each dimension.
I have lookup --> Error output Ole DB command to call Sp to insert empty dimension entry, then Lookup again and then Union to go back down the data flow. I have this for each dimension entry I have to lookup. I'm just wondering if this is an efficient way of doing things (I use caching in my lookups) and if people have other ways of achieving my goal that involves a less complicated data flow.
Many thanks,
Greg