I have a situation here that I have not faced before.
I have multiple instances of the same ERP system, differing by satellite locale. Each locale is assigned their own ID.
Within each satellite location, the DB schema is the same as the others, same tables, same values.
When combining the tables, lets say Parts, from two or more of these locales, their Natural Operational Keys will be the same, but the additional attribute data may differ. And as I need to be able to link to a part, based upon which satellite locale it came from, I am thinking I need a composite key here - Part ID, and Satellite ID.
Now this would be fine for this single dimension, however, this Satellite ID is used in the same manner elsewhere in many other dimensions. It is also the prime slicer for many fact tables.
How should I treat this attribute? Put it in its own dimension, and snowflake? Or push the value into each dimension (duplication), but then have the fact table hold the sole FK to the Satellite Dimension?