How to query Slowly Changing Dimensions Type 2

How to query Slowly Changing Dimensions Type 2

Data warehouses use timestamps to keep track of data that is changing over time. A common term that is used to describe implementations of historically changing data is slowly changing dimensions. There are several types of slowly changing dimensions, explained in various sources (examples here and here). In this post I will focus on how to query slowly changing dimensions type 2 or SCD2 for short. The reason I decided to write this post is that there is very little information out there on how to query SCD2. When I Google it, I get tons of links explaining how to insert data into SCD2 tables. But there is hardly any information on how to query it. In my experience, developers who are working on ETL are usually well versed in using the ETL tools and the built-in functionalities for inserting SCD2 type data. But querying data from SCD2 tables is often misunderstood or not understood at all. To many developers and business...
Read More
Agile delivery of data models

Agile delivery of data models

Agile methodologies typically focus on software development. It may appear as if writing code is the only aspect of agile delivery. But we know that most applications use data and this data must be stored somewhere, preferably in a database. This is an integral part of any application. The question then becomes: how do we develop the data model for the database in an agile manner? The book The Nimble Elephant: Agile Delivery of Data Models using a Pattern-based Approach by John Giles addresses this question and gives in-depth advice on how to make it work. Choose a data model pattern How do we come up with a data model quickly in order to allow iterative development to start? The author of the book John Giles suggests to use industry-standard data models or data model patterns as a starting point and customize them as you go. He says that off-the-shelf proven data model patterns may go a long way towards bridging the speed versus quality...
Read More
Is data modeling still required in NoSQL databases?

Is data modeling still required in NoSQL databases?

Relational databases introduced data modeling concepts where we represent a data model with tables, fields and relationships. A new generation of NoSQL databases which are more suitable for big data environments no longer rely on relational data models. We have to think about data modeling in a different way, primarily to ensure that data is written quickly while sometimes sacrificing consistency. -- Article published in MonitorPro magazine, V. 2015, p. 24-25...
Read More
A different way of data warehouse data modeling: Data Vault

A different way of data warehouse data modeling: Data Vault

In data warehousing and business intelligence implementations we usually start by choosing between two most popular approaches. One of them is the enterprise normalized data warehouse approach as defined by Bill Inmon, the father of data warehousing. The second approach is a collection of dimensional data marts based on a common bus architecture as popularized by Ralph Kimball. In addition to these two we can always choose other approaches, such as a combination of the above or something completely different. An example of a different approach is the Data Vault. -- Article published in MonitorPro magazine, IV. 2015, p. 28-29...
Read More