Académique Documents
Professionnel Documents
Culture Documents
Database
Data Modeling
Data Processing
Analysis
Login
Community
Discuss
METHOD OF LOADING
Generally speaking, incremental loading for Fact tables is relatively easier as, unlike
dimension tables, here you do not need to perform any look-up on your target table to find
out if the source record already exists in the target or not. All you need to do is to select
incremental records from source (as shown below for the case of "sales" table) and load them
as it is to target (you may need to perform lookup to dimensional tables to assign respective
surrogate keys - but that's a different story).
Like before we will assume we have a "sales" table in the source
Sales Table
where "batch" is a separate table maintained at target system having minimal structure and
data like below
However, things may get pretty complicated if your fact is a special type of fact called
"snapshot fact". Let's understand them below.
As you see, even if no sales was made to Ryan on 23-Mar, we still show him here with the
old data. Similarly for John, even if goods totaling to $4.00 was sold to him on 23-Mar, his
record shows the cumulative total of $10.50.
Now obviously the next logical question is how to load this fact using incremental loading?
Because incremental loading only brings in incremental data - that is on 23rd March, we will
only have Bakers' and John's records and that too with that day's sales figures. We won't
have Ryan record in the incremental set.
You can obviously opt-in for full load mechanism as that would solve this problem but that
would take the toll on your loading performance.
One way to resolve this issue is: creating 2 incremental channels of loading for the fact. 1
channel will bring in incremental data from source and the other channel will bring in
incremental data from the target fact itself. Let's see how does it happen below. We will take
the example for loading 23-Mar data.
Customer Revenue
John 4.00
Bakers' 75.00
Channel 2: Incremental data from target fact table (last day's record)
Customer Revenue
John 6.50
Ryan 2.00
Next we can perform a FULL OUTER JOIN between the above two sets to come to below result
John 10.50
Ryan 2.00
Bakers' 75.00
Prev
Next
Inner Join
Submit
Popular
Top 20 SQL Interview Questions with Answers
Best Informatica Interview Questions & Answers
Top 50 Data Warehousing/Analytics Interview Questions and Answers
Top 50 DWBI Interview Questions with Answers - Part 2
Performance Considerations for Dimensional Modeling
Top 30 BusinessObjects interview questions (BO) with Answers
Also Read
OLTP and OLAP
What is Data Warehousing?
What is a data warehouse - A 101 guide to modern data warehousing
A road-map on Testing in Data Warehouse
Top 5 Challenges of Data Warehousing
In the previous article, we have shown how to setup a client node. Once this is done,
now let's put Hadoop to use for some big data analytics purpose. One way to do that is
by using Hive which let's us run SQL queries against the big data. A...
In this multi part tutorial we will learn the basics of dimensional modeling and we will
see how to use this modeling technique in real life scenario. At the end of this tutorial
you will become a confident dimensional data modeler.
Confused about how to understand Oracle Query Execution Plan? This 10 minutes step
by step primer is the first of a two part article that will teach you exactly the things you
must know about Query Plan.
This article will demonstrate loading multiple XML files using SAP Data Services
including Exception Handling.
About Us
Data Warehousing and Business Intelligence Organization - Advancing Business
Intelligence
DWBI.org is a professional institution created and endorsed by veteran BI and Data Analytics
professionals for the advancement of data-driven intelligence
Join Us | Submit an article | Contact Us
Copyright
Except where otherwise noted, contents of DWBI.ORGby Intellip LLP is licensed under a
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Privacy Policy | Terms of Use
Get in touch
Security