Data Vault
As the founder of Data Vault Dan Linstedt says, benefits of using Data Vault is:
-
Near-real-time loads
-
Traditional batch loads
-
In database data mining
-
Terabytes to petabytes of information (big data)
-
Incremental build out
-
Seamless integration of unstructured data (nosql)
-
Dynamic model adaptation – self healing
-
Business rule changes (with ease)
If you want to go for a well-structured data warehouse architecture in an agil manner Data Vault is a good candidate.
Data Vault is a cross between an Inmon and Kimball approach creating data warehouses. Where in my experience the Kimball and Inmon approach is more made for Waterfall projects with a big bang release. Data Vault is modular and fits exceptionally good in to a more Agil project forms. Data vault also offers possibilities to scale out which makes it very flexible.
​
If you for instance add a new customer relationship manager (CRM) system to your organisation. I predict that you probably are going to have two CRM system running over a period. The new System will probably have some new objects as well as object attributes. With data vault this is not a big deal because you could add a new HUB and have control over your customer object via a link table. This is also genuinely nice when looking at historical data.
If you are used to Kimball star schemas, you can see the similarity. Data Vault is based on Hub, Link and Satellite entity types.
​
HUB Entities The purpose of a hub entity is to store the business key of business objects along with some other information, which is called metadata. A business key is a unique identifier of an object which is known by the organization. Sometimes it is a combination of more than one key to create a unique value.
​
Satellites stores all data that describes a business object, relationship, or transaction. They add context at a given time or over a time period to Hubs and Links. A Satellite is attached to only one Hub or Link. This makes the satellite conformed and helps the agile process. You can in a later faze add new satellites without any problem just ad the business key from the Hub or Link to it. Like in the sample above.
​
Link Entities Creates a many to many relationships between hubs or satellites. Links greatly improve the flexibility of the data vault model. Its easy to add links or modify the relationship type of existing links and it take less time to respond to changes in the business.