Skip to main content

Types of Facts in Data warehouse

A fact table is a table that contains the measures of business.


Types of Facts

There are three types of facts:
  • Additive:
 Additive facts are facts that can be summed up through all of the dimensions in the fact table.

Example: Take three types of facts. assumes that we are in shop, and we have a fact table with following  columns

Additive Fact
Additive Fact

If you see this table it is used to record the sales amount of shop by date,store and product.

The column Sales amount can be get summed up on each level of its dimensional (date,store,product).

The sales amount is called additive fact because it can be summed up through all of the dimensions in the fact table
  • Semi-Additive:
Semi-additive facts are facts that can be summed up for some of the dimensions in the fact table, but not the others.

Example: Consider you are in bank and you have the following table

Semi-Additive
Semi-Additive

The purpose of this table is to have current balance by account by end of each day. 

We can sum up the current balance of each account, and it will not make sense if we sum the current balance by date. So this table is called semi-additive fact.
  • Non-Additive:
Non-additive facts are facts that cannot be summed up for any of the dimensions present in the fact table.


Example : I can use same table of semi-additive fact as example for non-additive.

Non-Additive
Non-Additive
In this table profit margin is non-additive as we can't sum up profit margin either by account or date, so profit margin we can consider as non-additive fact.


Comments

Post a Comment

Popular posts from this blog

Contact Me

Do You have any queries ?                   If you are having any query or wishing to get any type of help related Datawarehouse, OBIEE, OBIA, OAC then please e-email on below. I will reply to your email within 24 hrs. If I didn’t reply to you within 24 Hrs., Please be patience, I must be busy in some work. kashif7222@gmail.com

Top 130 SQL Interview Questions And Answers

1. Display the dept information from department table.   Select   *   from   dept; 2. Display the details of all employees   Select * from emp; 3. Display the name and job for all employees    Select ename ,job from emp; 4. Display name and salary for all employees.   Select ename   , sal   from emp;   5. Display employee number and total salary   for each employee. Select empno, sal+comm from emp; 6. Display employee name and annual salary for all employees.   Select empno,empname,12*sal+nvl(comm,0) annualsal from emp; 7. Display the names of all employees who are working in department number 10   Select ename from emp where deptno=10; 8. Display the names of all employees working as   clerks and drawing a salary more than 3000   Select ename from emp where job=’clerk’and sal>3000; 9. Display employee number and names for employees who earn commissi...

Top 100 Informatica Interview Questions

I have attended Informatica interview last week in wipro and couple of other companies, Question below I faced in those companies. 1. What are the main issues while working with flat files as source and as targets ? 2. Explain about Informatica server process that how it works relates to mapping variables? 3. write a query to retrieve the latest records from the table sorted by version(scd) 4. How do you handle two sessions in Informatica 5. which one is better performance wise joiner or look up 6. How to partition the Session? 7. How many types of sessions are there in informatica.please explain them. 8. Explain the pipeline partition with real time example? 9. Explain about cumulative Sum or moving sum? 10. CONVERT MULTIPLE ROWS TO SINGLE ROW (MULTIPLE COLUMNS) IN INFORMATICA 11. DEPLOYMENT GROUPS IN INFORMATICA 12. LOAD LAST N RECORDS OF FILE INTO TARGET TABLE - INFORMATICA 13. LOAD ALTERNATIVE RECORDS / ROWS INTO...