All the information that describes a business entity should be included in individual table.
- e.g. Customer, Product, Employee, Sales, Return, Store, etc.
A right way to define a table is expand it's attributes.
- e.g. Product Table should have Name, Group, Category, Sub Category, etc.
So that we can create a relationship between two different Table ( Business Entities )
It creates a better granularity and help us to describe each attribute in more simple way.
-
Removethe duplicated or redundant data. -
Reducethe size of the table. -
Having a seperate table for each Business entity.
- Creating a
singletable with all Business entity and attributes including redundancy and duplicated data.
BestSchema for Power BIFactstable in the middle andDimensionstables are around.- Each Dimension table has
onetomany( 1 to * ) relationship with thecolumnof Fact table. - Fact table consist of various
Foreignkeys columns, it is connected with one column ( Primary key ) of each Dimension tables. Nodirect relationship is possible between the Dimension tables.
- Data table with all the important
quantitativenumeric metrics. - price, quantity, cost, margin, etc.
- Transactions, Sales, Returns, etc.
- Especially used for Aggregating ( SUM, AVERAGE, MIN, MAX, COUNT )
- Contains various
Foreignkeys and related to many dimension tables.
- Something that describes a
fact - Describes the
qualitativeattributes of the table ( group, category, subcategory ) - No duplicates or redundancy.
- Especially used for grouping, slicing and filtering.
- Contains only
Primarykeys andUniquekeys ( Single row for each data )