Power BI learning notes

Power BI for Business Intelligence & Analytics

By Imonikhe Ayeni

This practical Power BI guide follows the full reporting workflow: connect and transform data, design a strong semantic model, create measures, build accessible reports, validate results, publish securely and manage refresh and governance.

Beginner to intermediateAbout 14 minutesLast updated September 2026Includes interview refresher

A note from the author

I’m Imonikhe Ayeni. I use Power BI for analytical reporting, dashboard development and communicating results clearly.

A useful Power BI report starts with clean data and a sound model. Visual design comes after those foundations, not before them.

No matching sections were found. Try a broader search term.
01

Power BI and the BI workflow

Understand the complete journey from raw data to an interactive, governed report.

Workflow

Connect → transform → model → calculate → visualise → validate → publish → refresh.

Core components

Power BI Desktop is used to build; the Power BI Service supports sharing, refresh, apps and governance.
02

Connecting to data

Connect to files, databases, folders, web sources and cloud platforms while keeping refresh requirements in mind.

Common sources

Excel, CSV, SQL databases, SharePoint/OneDrive, folders, APIs and cloud warehouses.

Source discipline

Choose stable paths, preserve data types and document credentials/privacy assumptions.
03

Power Query and data transformation

Use repeatable transformations rather than manually editing source data.

Core transformations

Change types, rename, remove, replace, split, group, pivot/unpivot, merge and append.

Applied steps

Each transformation becomes a recorded step that can be refreshed when new data arrives.
04

Data modelling and star schemas

Design models that are easy to understand, fast to query and safe to extend.

Star schema

Place measurable events in fact tables and descriptive attributes in dimension tables.

Relationships

Prefer clear one-to-many relationships from dimensions to facts and avoid unnecessary bidirectional filtering.
05

Date tables

Create a dedicated calendar for consistent time analysis.

Calendar design

Include date, year, quarter, month number, month name and useful fiscal attributes.

Sort correctly

Sort month names by month number and mark the table as a date table when appropriate.
06

Measures and calculation design

Create reusable analytical measures instead of repeating logic inside visuals.

Simple measures

Total Sales = SUM(Sales[SalesAmount])
Orders = DISTINCTCOUNT(Sales[OrderID])

Measure branching

Average Order Value = DIVIDE([Total Sales], [Orders])
07

Visual selection

Match each chart to the analytical question.

Comparison and trend

Bar/column charts compare categories; line charts show change over time.

Distribution and relationship

Use histograms/custom approaches for distributions and scatterplots for relationships.
08

Filters, slicers and interactions

Control the questions users can ask without making the report confusing.

Filter levels

Understand visual-, page- and report-level filters.

Interactions

Use Edit interactions, drill-through, tooltips, bookmarks and buttons deliberately.
09

KPIs and analytical storytelling

Turn measures into a narrative users can act on.

KPI design

Show the value, relevant comparator, direction of change and context.

Executive layout

Lead with outcomes, then drivers, then detail. Avoid walls of charts.
10

Report design and accessibility

Build reports that remain readable, consistent and accessible.

Consistency

Use a small type hierarchy, aligned grids, consistent number formats and restrained decoration.

Accessibility

Use descriptive titles, alt text, adequate contrast and logical tab order.
11

Performance optimisation

Keep reports responsive as models and usage grow.

Model size

Remove unused columns, reduce cardinality and prefer efficient star schemas.

Diagnostics

Use Performance Analyzer and DAX Studio concepts to investigate slow visuals and measures.
12

Row-level security

Restrict data visibility where users should see different slices of the same model.

Static RLS

Assign fixed roles with filters on appropriate dimension tables.

Dynamic RLS

Use user identity and mapping tables for scalable user-specific access.
13

Power BI Service

Publish, organise, share and refresh content beyond Desktop.

Workspaces and apps

Use workspaces for collaboration and apps for curated distribution.

Refresh

Understand gateways, credentials, scheduled refresh and ownership.
14

Governance and deployment

Treat important BI content as a managed analytical product.

Lifecycle

Separate development, testing and production where the environment supports it.

Governance

Document definitions, owners, sources, refresh schedules and access rules.
15

Power BI projects and learning path

Build portfolio-ready work that demonstrates modelling as well as visuals.

Project 1

Executive sales dashboard with star schema, KPI measures, drill-through and time trends.

Project 2

Operational/healthcare-style performance dashboard with data quality checks, RLS and documented metric definitions.
16

Power BI key terms and interview refresher

Use this section as a quick revision page before an interview or when a term comes up at work. The aim is to understand the idea well enough to explain it in plain language before memorising syntax.

Fact tableA table of measurable events, such as sales transactions, survey responses or appointments.
Dimension tableA descriptive table used to group and filter facts, such as Date, Product, Region or Customer.
Star schemaA model where fact tables connect to dimension tables in a simple, predictable pattern.
Import modeData is loaded into the Power BI model, usually giving fast interactive performance.
DirectQueryQueries are sent back to the source at report time instead of importing all data into the model.
MeasureA DAX calculation evaluated at query time in the current filter context.
Calculated columnA DAX expression computed row by row and stored in the model.
RLSRow-level security restricts which rows different users can see.
WorkspaceA collaborative area in Power BI Service where content is developed and managed.
AppA curated package of Power BI content distributed to consumers from a workspace.

Common interview questions

What is a star schema and why is it recommended?

A star schema has fact tables in the centre and dimensions around them. It simplifies relationships, improves usability and usually performs better than a tangled model.

What is the difference between Import and DirectQuery?

Import stores data inside the model and is generally faster. DirectQuery leaves data in the source and queries it when needed, which can help with very large or frequently changing data but has modelling and performance trade-offs.

What is the difference between a measure and a calculated column?

A measure is calculated at query time based on filter context. A calculated column is evaluated row by row during refresh and stored in the model.

What is the difference between Power Query and DAX?

Power Query is mainly for shaping data before it enters the model. DAX is mainly for analytical calculations after the model is built.

What is RLS?

Row-level security restricts data by user or role while allowing one shared report and model.

What is the difference between a report and a dashboard?

A report can contain multiple interactive pages and is built from a semantic model. A Power BI dashboard is a single-page canvas in the Service made from pinned tiles.

Practical interview tests

These short tasks test whether you can apply the tool, explain your reasoning and validate the result. In a live exercise, say your assumptions aloud and check the output rather than rushing straight to syntax.

You receive Sales, Product, Customer and Date tables. How would you model them?What it tests: star-schema thinking

Answer: Use Sales as the fact table and Product, Customer and Date as dimensions, normally with one-to-many relationships from dimensions to Sales.

Why: This creates clear filter paths and usually improves usability and performance.

A value must respond to slicers. Measure or calculated column?What it tests: calculation choice

Answer: Usually a measure, because measures are evaluated at query time in filter context and respond to report interaction.

Why: Calculated columns are evaluated row by row at refresh and stored in the model.

A report refreshes slowly because many unused text columns are loaded. What would you do?What it tests: model performance

Answer: Remove unnecessary columns, review high-cardinality fields, preserve a star schema and inspect expensive transformations.

Why: Reducing model size can improve refresh and interactive performance.

When would you choose DirectQuery instead of Import?What it tests: storage-mode trade-offs

Answer: Consider DirectQuery when data cannot reasonably be imported or needs source-level freshness, while recognising that performance depends more on the source and some modelling features are restricted.

Why: Import is often preferred when volume and refresh requirements allow it because in-memory interaction is generally faster.

How would you restrict regional managers to their own region?What it tests: row-level security

Answer: Design and test RLS, preferably filtering an appropriate dimension table and allowing relationships to propagate the restriction.

Why: Dynamic RLS can map the signed-in user to the regions they are allowed to see.