---
type: learning
area: learning
status: learning
date: 2026-05-03
created: 2026-05-03
updated: 2026-01-20
tags:
  - learning
---
### **Quelles sont les différentes langages utilisés dans Power BI ?**

Les principaux langages sont **DAX** pour les calculs dans les modèles de données et le langage **M** utilisé dans les requêtes pour transformer les données brutes lors de l’importation via **Power Query**.

---

### **Q. Qu’est-ce que la sécurité au niveau des lignes (Row-Level Security) ?**

La **sécurité au niveau des lignes (RLS)** dans Power BI permet de restreindre l’accès aux données au niveau des lignes selon les rôles des utilisateurs. Cela signifie que différents utilisateurs peuvent voir des données différentes dans le même rapport ou tableau de bord, garantissant que les informations sensibles ne soient visibles que par les personnes autorisées.

---

### **Q. Citer quelques tâches courantes dans l’éditeur de requêtes (Query Editor / Power Query) ?**

Les tâches couramment effectuées dans l’éditeur de requêtes incluent :

- Transformation des données (ex. : fusionner, ajouter des requêtes)
    
- Nettoyage des données (ex. : supprimer les doublons, filtrer les lignes)
    
- Changement des types de données des colonnes
    
- Création de colonnes calculées à partir de données existantes
    

---

### **Q. Quels sont les différents types de relations dans Power BI ?**

Les différents types de relations sont :

- **Un-à-un (1:1)** : chaque enregistrement d’une table correspond à un seul enregistrement dans une autre table.
    
- **Un-à-plusieurs (1:N)** : un enregistrement d’une table est lié à plusieurs enregistrements dans une autre table.
    
- **Plusieurs-à-plusieurs (N:N)** : les enregistrements des deux tables peuvent être liés à plusieurs enregistrements de l’autre table.
    

---

### **Q. Quelles sont les principales différences entre Power BI et Excel ?**

Les différences clés incluent :

- **Visualisation des données :** Power BI offre des options de visualisation avancées par rapport aux graphiques de base d’Excel.
    
- **Capacité des données :** Power BI gère des volumes de données beaucoup plus importants qu’Excel.
    
- **Collaboration :** Power BI facilite la collaboration en temps réel via le service cloud, tandis qu’Excel est davantage orienté vers un usage individuel (sauf via SharePoint ou services similaires).
    

---

### **Q. Quelle est la différence entre un schéma en étoile (star schema) et un schéma en flocon (snowflake schema) en modélisation des données ?**

Un **schéma en étoile** repose sur une table de faits centrale directement connectée aux tables de dimensions, ce qui simplifie les requêtes mais peut entraîner de la redondance.  
Un **schéma en flocon** normalise les tables de dimensions en plusieurs tables liées, ce qui réduit la redondance mais rend les requêtes plus complexes.

## 🟢 Level 1 – Filtering fake Power BI skills

### Q1. What is the difference between a calculated column and a measure?

**Expected keywords:**

- Row context vs filter context
    
- Storage vs dynamic calculation
    
- Calculated at refresh vs evaluated at query time
    

❌ Red flag: “Calculated columns are faster” (wrong)

---

### Q2. Why should you avoid bidirectional relationships?

**Expected answer:**

- Ambiguous filter propagation
    
- Performance issues
    
- Risk of incorrect results
    

---

### Q3. What is filter context?

**Expected answer:**

- Created by slicers, rows, columns, filters
    
- Propagates through relationships
    
- Modified by CALCULATE
    

---

## 🟡 Level 2 – Real Power BI developers

### Q4. Explain row context vs filter context with an example.

**Expected concepts:**

- Calculated columns use row context
    
- Measures use filter context
    
- Iterators create row context
    

---

### Q5. What does CALCULATE actually do?

**Expected answer:**

- Modifies filter context
    
- Overrides existing filters
    
- Performs context transition
    

---

### Q6. Why does this measure return the same value on every row?

`Total Sales = SUM(Sales[Amount])`

**Expected answer:**

- No row-level filter context
    
- Measures aggregate over current filter context only
    

---

### Q7. When do you need SUMX instead of SUM?

**Expected answer:**

- Row-by-row calculation
    
- Expression depends on multiple columns
    
- Calculated logic per row
    

---

## 🔴 Level 3 – Advanced / Expert (this course level)

### Q8. What is context transition?

**Expected answer:**

- Conversion of row context into filter context
    
- Happens when CALCULATE is used inside calculated columns or iterators
    

---

### Q9. What are expanded tables in DAX?

**Expected answer:**

- Virtual tables created by relationships
    
- From many-side to one-side
    
- Used internally by DAX during evaluation
    

---

### Q10. Explain the difference between ALL, ALLEXCEPT and REMOVEFILTERS.

**Expected answer:**

- ALL removes all filters
    
- ALLEXCEPT keeps selected filters
    
- REMOVEFILTERS explicitly clears filters (preferred modern syntax)
    

---

### Q11. Why can variables improve performance?

**Expected answer:**

- Evaluated once
    
- Avoid repeated calculations
    
- Improve readability and debugging
    

---

## 🔥 Level 4 – Expert / Architect (Very few pass)

### Q12. Explain Formula Engine vs Storage Engine.

**Expected answer:**

- Formula Engine interprets DAX
    
- Storage Engine retrieves compressed data
    
- VertiPaq vs DirectQuery
    
- Datacache concept
    

---

### Q13. How does VertiPaq compression work?

**Expected keywords:**

- Columnar storage
    
- Cardinality
    
- Dictionary encoding
    
- Run Length Encoding
    

---

### Q14. Why is high cardinality bad for performance?

**Expected answer:**

- Larger dictionaries
    
- Poor compression
    
- Slower scans
    

---

### Q15. How would you debug a slow Power BI report?

**Expected tools:**

- Performance Analyzer
    
- DAX Studio
    
- Server Timings
    
- Query Plan
    

---

## 3. Killer Final Question (Highly recommended)

### Q16.

> _“If a report is correct but very slow, what are the first 3 things you check?”_

**Strong answers mention:**

1. Data model (cardinality, relationships)
    
2. Measures (iterators, CALCULATE abuse)
    
3. Cardinality & column types
    
4. DAX Studio analysis

Evaluation Order 
![[img-20260120-130306-54f3524e.png]]