4

I'm a rookie in Data Vault, so please excuse my ignorance. I am currently ramping up and modeling Raw Data Vault in parallel using Data Vault 2.0. I have few assumptions and need help validating them.

1) Individual Hubs are modeled for:

a) Product(holds pk-Product_Hkey, BK,Metadata),

b) Customer(holds pk-Customer_Hkey,BK,Metadata),

c) Store(holds pk-Store_Hkey,BK,Metadata). Now a Sales Txn's that involves all the above Business Objects should be modeled as a Link Table

d) Link table- Sales_Link(holds pk-Sales_Hkey, Sales Txn ID, Product_Hkey(fk), Customer_Hkey(fk), Store_Hkey(fk), Metadata) and a Satellite needs to be associated to Link table holding some descriptive data about Link. Is the above approach valid ?

My rationale for the above Link Table is because I consider Sales Txn ID as a non-BK & hence Sales Txn's must be hosted in a Link as opposed to hub.

2) Operational data has different types of customers.(Retail, Professional). All customers (agnostic to types) should be modeled in one hub & this distinction of customer types should be made by modeling different Satellites(one for retail, one for Professional) tied to Customer hub. Is the above valid?

I have researched online technical forums, but got conflicting theories, so I'm posting it here.

There is no code applicable here

Fernando Echeverria
  • 7,706
  • 4
  • 17
  • 13
Ragi
  • 51
  • 1
  • 5
  • The Sales_Link table is a Transactional Link (non-historised Link) and as you said, there are conflicting opinions on how/when to use it. I find this article helps https://www.linkedin.com/pulse/what-transactional-links-hans-hultgren – imel96 Mar 14 '23 at 14:31

1 Answers1

2
    1. I would suggest to model sales as Hub if you are fine with below points else link is perfectly good design..

      • Sales transaction as a hub (Sales_Hub) :

      • Whats business key? Can you consider "Sales Txn ID"(unique number) as a BK.

      • Is this hub or the same BK used in another Link (except Sales_Link) i.e. link on link.
      • Are you ok with Sales_Link with no satellite, since all the descriptive exists in Sales_Hub.
      • Also it will store same BK+Audit metadata info in two places (Hub/Link) and addition joins to fetch data from Hub-satellite.
    1. Is valid when

      • Customer information (retail,professional..etc) stored in separate tables at source(s) system.

      • You should model a satellite if the data is coming thru single source table then you apply soft rules to bifurcate them into their type in Business data vault.