settingsLogin | Registersettings
Scalefree
Show Menu

Is the Hub to multiple Sat relationship Async or Sync

0 votes
Is the Hub to multiple Sat relationship Async or Sync? Meaning if the Hub is a combination of the satellites business keys, then is it allowed for some satellites to get updated, when others do not? If so, then that implies that the business keys will be NULL so is that okay?

Let's take an example of I have four source systems of which have customer info, and workflow wise the customer info will come in initially to either Src1 or Src2, and then will always flow to Src3 & Src4. (Src3 is legacy and Src4 is new up and coming)

Src1
         \
           --> Src3 & Src4
         /
Src2

Option 1.) one Hub, with 4 satellites.
-- HubCustomer and each of the 4 satellites is a separate source.
-- Data will get updated at different intervals, but not all satellites will receive all customer info.
-- If the Hub's Business keys are made up of a combination of each satellite's Business keys, then what happens wen some satellites will not be updated? NULL Business keys

Option 2.) three hubs.
-- Align Hubs with Customer info that will be updated synchronously thus:
Prospect Customer System 1, it's own Hub & Sat
Prospect Customer System 2, it's own Hub & Sat
Fulfillment Customer System 3 & 4, it's own Hub & two Sats

Thank you in advance for any assistance.
asked Oct 22, 2017 in Modelling by radracer177 (140 points)

1 Answer

0 votes
Hi radracer177,

The first option looks like the correct one, besides the last bullet.

HUB_Customer can have (and it actually is very common) multiple satellites separated by source system.

The hub load should source the distinct customer BK from all 4 sources.

If SAT_SRC_1 data appears, you only load records in the SAT_SRC_1.

Other satellites are untouched, until their data is been provided.

You can load all of your satellites separately, as long as you also load the business key that does not exist yet, into the hub.

If you run the following statement, only the available data will show up for every business key in the HUB :
SELECT
       HUB_CUSTOMER.CUSTOMER_NUMBER_BK
     , SAT_SRC_1.ADDRES
     , SAT_SRC_2.PROSPECT_SINCE_DATE
     , SAT_SRC_3.ATTRIBUTE_3
     , SAT_SRC_4.ATTRIBUTE_4
FROM HUB_CUSTOMER
LEFT JOIN SAT_SRC_1
ON  SAT_SRC_1.HUB_CUSTOMER_KEY = HUB_CUSTOMER.HUB_CUSTOMER_KEY
LEFT JOIN SAT_SRC_2
ON  SAT_SRC_2.HUB_CUSTOMER_KEY = HUB_CUSTOMER.HUB_CUSTOMER_KEY
LEFT JOIN SAT_SRC_3
ON  SAT_SRC_3.HUB_CUSTOMER_KEY = HUB_CUSTOMER.HUB_CUSTOMER_KEY
LEFT JOIN SAT_SRC_4
ON  SAT_SRC_4.HUB_CUSTOMER_KEY = HUB_CUSTOMER.HUB_CUSTOMER_KEY
WHERE (FILTER ON ACTIVE RECORDS FROM SATELLITES)


To finalize : Satellites are and should be independend of each other, at least in the Raw Data Vault.

In the business vault, where you could apply dependent business logic, often there are dependencies, but this does not apply to raw source data.

Hope this helps,

Greets Jacob Siemaszko
answered Oct 24, 2017 by simco_admin (660 points)
Scalefree Scalefree

Upcoming Trainings

  • July 01 to 03 - Amsterdam (English) Data Vault 2.0 Boot Camp and Certification

  • August 05 to 07 - Berlin (German) Data Vault 2.0 Boot Camp and Certification

  • September 9 to 13 - Hanover WWDVC EU

  • September 16 to 18 - Brussels (English) Data Vault 2.0 Boot Camp and Certification

  • October 21 to 23 - Hanover (German) Data Vault 2.0 Boot Camp and Certification

  • November 18 to 20 - Amsterdam (English) Data Vault 2.0 Boot Camp and Certification

  • December 02 to 04 - Dusseldorf (German) Data Vault 2.0 Boot Camp and Certification

  • December 16 to 18 - Zurich (English) Data Vault 2.0 Boot Camp and Certification

  • Contact us for inhouse training engagements.
    Visual Data Vault: Logical Modelling for Data Vault - Free Download!
    Scalefree
    DataVault.guru is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 United States License.
    Permissions beyond the scope of this license are available in our license.

    DataVault.guru | DWH Wiki | Recent questions RSS feed | Imprint | Provided by Michael Olschimke
    ...