0

I am currently reading up on Data Vault 2.0 in the book "Building a Scalable Data Warehouse with Data Vault 2.0".

I have a question about Links which I find a little hard to wrap my head around. In the book, the author states that Links do not capture time-lines like "valid from" and "valid to" or "begin date" and "end date".

The direct quote on why this is, goes like this:

"Adding temporality to link structures, for example by adding a Begin and End Date, bounds the relationship to a single timeline and forces the data warehouse to start and stop this relationship only once."

From my understanding, the reasoning in the quote can be translated to an example:

Lets imagine that we are a firm that sells gold, silver and cobber and we choose to hold all of these in separate hubs. We will have some kind of links from each of these hubs to other hubs. Now lets say that we stop selling cobber which would result in the death of the Link from the cobber hub.

2 years goes by, and we now choose to sell cobber again so our Link fires back up and is live once again.

In this example, we have 2 periods where the Link is active:

  1. from beginning of the Link to when we stop selling cobber
  2. and again from when we start selling cobber once again and until we do anything further

This would seem to be two time lines, so why is this a bad idea to store in the link? From what I gather, this does not change the fact that we can see which period is the latest, so I am missing something.

mbih
  • 5
  • 5

1 Answers1

0

The point of Links not containing times is that in that way we can maintain the structure of models, exactly as we can see under "flexibility of links" a few pages ago. This makes it easy to scale as we don't have to do anything other than add things to the existing setup. Links therefore only keeps track of business relationships between Hubs. The satellites instead contain the timed (start date, end date) as a satellite on the link.

An example of the following: Let's say we have a data vault model for car rental:

• Customer Hub – which may contain CPR for the customer

• Car Hub – which may contain a unique number for that car

• Rental Link – which connects them to the Hubs.

When a customer rents a car, we get a start date and when the customer returns it again, the relationship ends. This is instead registered in a Satellite on the Link, here you could call the satellite a Rental Satellite, as "start date" and "end date".

mbih
  • 5
  • 5