Sachin Kumar Profile picture
Aug 18 7 tweets 2 min read Read on X
Think of data modeling as brain of Power BI — without it, everything else is just decoration

When I first started using #PowerBI, I thought visuals & DAX were “main game.”
But soon I realized: If your data model is weak, nothing else will save your dashboard.

A Complete🧵 Image
Think of it like this:
1) Visuals = House front
2) DAX = Electricity & plumbing
3) Data Model = Foundation
Without a strong foundation, everything else collapses.

☑️ What exactly is a Data Model?
It’s simply the way you organize & connect your data so Power BI can:
- Understand it
- Perform fast calculations
- Show correct insights
And this magic happens inside Model View of Power BI.
Here are the building blocks of a strong data model

1) Fact Table → Numbers & metrics (e.g., Sales, Revenue)
2) Dimension Table → Descriptions/details (e.g., Products, Dates, Customers)
3) Relationships → Connections between tables (usually 1 → many)
4) Primary Key → Unique ID (e.g., ProductID)
5) Foreign Key → The matching ID in another table (e.g., Sales[ProductID])
🩼 Easy Way to Remember

- Fact Table = Numbers
- Dimension Table = Descriptions
- Relationships = Connections
- Star Schema = 1 Fact + Multiple Dimensions
☑️ Where do Measures belong?
Always in the Fact Table, Because measures represent aggregated business events (e.g., Total Sales).
Dimensions are only there to categorize & filter those events (e.g., Sales by Product or City).

☑️ Filter Flow Types
1) Single (→) → Filter flows one way (Dimension → Fact), Default & Recommended
2) Both (↔) → Filter flows both ways, Use only in special scenarios
Interview Question

Q1). Why is Star Schema preferred in Power BI even though Snowflake saves space?.
Snowflake normalizes data more, which saves storage but increases query complexity (more joins).
Power BI is optimized for Star Schema:
Simple 1-to-many relationships
Faster DAX queries
Easier for business users to understand
In analytics, query performance > storage optimization, so Star Schema wins.

Q2). What would happen if your data model doesn’t have a Calendar (Date Dimension) table?
Without a proper Date table:
Time intelligence functions (YTD, MTD, DATESBETWEEN) won’t work correctly.
You can’t ensure continuous dates (missing days won’t show).
Business reporting like “Sales growth YoY” would break.
So a dedicated Date Dimension is critical for serious analytics.

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Sachin Kumar

Sachin Kumar Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @Sachintukumar

Aug 15
Top #SQL Q&A Every Data & Business Analyst Must Master

Complete 🧵 Image
Q) @Oracle SQL Question:

We have two tables:
1️⃣ employee_contract
base
commission
quota
accelerator
2️⃣ deals → All deals they made, with deal amounts.

We need to calculate:
If total deals < quota →
total_compensation = base salary + commission * total deals
If total deals ≥ quota →
total_compensation =
base salary
commission * quota (normal commission for sales up to quota)
commission * accelerator * (total deals - quota) (boosted commission on sales after quota)Image
Q2) @salesforce

Write a query to calculate average annual revenue per Salesforce customer in three market segments: SMB, Mid-Market, & Enterprise. Each customer is represented by a single contract. Format output to match the structure Image
Read 7 tweets
Jul 20
Not every deal-maker hits the target — SQL finds who actually did.

Oracle #SQL Interview Question

A Complete thread Image
Q) As a data analyst on @Oracle Sales Operations team, you are given a list of salespeople’s deals, & annual quota they need to hit.

Write a query that outputs each employee id & whether they hit quota or not ('yes' or 'no'). Order the results by employee id in ascending order
Definitions: - deal_size: Deals acquired by a salesperson in the year.

Each salesperson may have more than 1 deal. - quota: Total annual quota for each salesperson.
Read 8 tweets
May 6
Do You Really Know How #SQL Executes Your Query?

Let’s talk about actual execution order of an SQL query — it’s not order you write it in!

🧵 Image
Even though we write SQL like this:

SELECT
FROM
WHERE
GROUP BY
HAVING
ORDER BY
LIMIT
Internally, SQL follows a different execution flow

🎯 INTERVIEW TIP:
Why can’t you use SELECT aliases in WHERE clause?
Because WHERE runs before SELECT!

Mastering this flow is crucial for writing optimized queries & cracking SQL interviews.
Read 4 tweets
Mar 27, 2024
📝Day 35 of #Deeplearning

✅Topic - Backpropagation in CNN

▫️ #BackPropagation is an algorithm to train neural networks. It is the method of fine-tuning weights of a neural network based on error rate obtained in previous epoch (i.e., iteration)

A Complete 🧵 Image
✅Backpropagation is an algorithm for supervised learning of artificial neural networks using #gradientdescent

Given an artificial neural network and an error function, method calculates gradient of error function with respect to neural network's weights using chain rule Image
▫️ Total Trainable Parameters-

▫️ Forward Propagation- Image
Read 13 tweets
Mar 24, 2024
✅Day 32 of #Deeplearning

📝Topic - Padding & Strides

▫️ #Padding is simply a process of adding layers of zeros to our input images

▫️ #Stride describes step size of kernel when you slide a filter over an input image

A Complete 🧵
▫️ Padding is simply a process of adding layers of zeros to our input images.

The purpose of padding is to preserve original size of an image when applying a #convolutional filter & enable filter to perform full convolutions on edge pixel Image
▫️ So to prevent this-

We will be using padding of size 2 (i.e. original image(5) – feature map(3)).

It is also known as zero padding because we are padding it with 0 Image
Read 13 tweets
Mar 20, 2024
✅Day 29 of #Deeplearning

▫️ Topic - Keras Tuner & Hyperparameter Tuning

📝#KerasTuner is a powerful library that allows you to automate hyperparameter tuning process & search for best model configuration

A Complete 🧵 Image
A ML model has two types of parameters:

Trainable parameters - learned by algorithm during training. For instance weights of a neural network are trainable parameters

#Hyperparameters - set before launching learning process. learning rate in a dense layer are hyperparameter Image
✅Defining the Model

Define a simple deep learning model that consists of three hidden layers & an output layer with a #softmax activation function

use Adam optimizer and categorical cross-entropy loss function Image
Read 12 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(