📊 Module 15: Power BI / Tableau Fundamentals
This module covers essential data analytics concepts and practical applications.
Advanced Level
⏱️ 45-60 minutes
📚 Topics Covered
-
✓ Introduction to Business Intelligence Tools
-
✓ Power BI vs Tableau: Choosing the Right Tool
-
✓ Connecting to Data Sources
-
✓ Data Transformation & Modeling
-
✓ Creating Visualizations & Charts
-
✓ Building Interactive Dashboards
-
✓ Calculations & DAX/Table Calculations
-
✓ Publishing & Sharing Reports
🔑 Key Concepts
-
• Understanding BI tool capabilities and use cases
-
• Connecting to and transforming data effectively
-
• Creating compelling, interactive visualizations
-
• Building dashboards that drive business decisions
-
• Sharing insights with stakeholders securely
15.1 Why Business Intelligence Tools Matter
Power BI and Tableau transform raw data into interactive, shareable insights that drive business decisions.
The Evolution of Business Reporting:
| Era |
Tool |
Limitations |
Who Could Use |
| 1990s-2000s |
Excel, Static Reports |
Manual updates, not interactive, version control nightmares |
Anyone with Excel |
| 2000s-2010s |
Traditional BI (Cognos, BusinessObjects) |
Expensive, IT-dependent, slow to build |
IT specialists only |
| 2010s-Present |
Modern BI (Tableau, Power BI) |
Learning curve, licensing costs (but much lower) |
Business users, analysts |
Why Modern BI Tools Win:
- Self-Service - Analysts create reports without IT support
- Interactive - Users filter, drill-down, explore data themselves
- Live Data - Auto-refresh from source systems (real-time or scheduled)
- Scalable - Millions of rows, hundreds of users, cloud-based
- Visual - Drag-and-drop interface, no coding required
- Mobile - Access dashboards on phone/tablet
- Collaborative - Share, comment, embed in apps
Retail Chain Example (USA):
A national retailer replaced monthly Excel reports (3-day turnaround, outdated by time of delivery)
with Power BI dashboards connected to live POS data. Store managers now see yesterday's sales,
inventory, and foot traffic by 8am daily. Result: Inventory write-offs reduced 35% ($2.3M/year),
out-of-stocks down 42%, faster response to trends. Report creation time: 3 days → 0 (automated).
15.2 Power BI vs Tableau: Comparison & Selection
Both are excellent tools with different strengths. Choose based on your organization's needs.
Feature Comparison:
| Feature |
Power BI |
Tableau |
| Pricing |
Pro: $10/user/month Premium: $20/user/month Free desktop version |
Creator: $75/user/month Explorer: $42/user/month Viewer: $15/user/month |
| Learning Curve |
Easier for Excel users |
Steeper but more intuitive |
| Data Connectivity |
Excellent Microsoft integration 100+ connectors |
Broader connector library Better for non-Microsoft |
| Visualization |
Good, growing library Custom visuals marketplace |
Excellent, more polished Better design flexibility |
| Data Modeling |
Strong (DAX language) Relationships, calculated columns |
Good (Calculations) More visualization-focused |
| Mobile |
Native apps, good experience |
Excellent mobile apps |
| Sharing |
Power BI Service (cloud) Embed in apps, SharePoint |
Tableau Server/Online Embed in apps, publish to web |
| Best For |
Microsoft shops Budget-conscious Excel power users |
Complex visualizations Design emphasis Data exploration |
Decision Framework:
Choose Power BI if:
✓ Heavy Microsoft 365 / Azure usage
✓ Budget is primary concern ($10 vs $75/user/month)
✓ Team already comfortable with Excel
✓ Need tight integration with SQL Server, SharePoint, Teams
✓ Want DAX for complex data modeling
Choose Tableau if:
✓ Visualization design quality is critical
✓ Non-Microsoft data sources (Salesforce, Google, AWS)
✓ Need best-in-class exploratory analytics
✓ Team has budget for premium tool
✓ Value intuitive drag-and-drop interface
Consider Both if:
• Large organization with diverse needs (some teams use each)
• Start with Power BI (cheaper), evaluate Tableau for advanced users
15.3 Connecting to Data Sources
BI tools connect to virtually any data source - databases, files, cloud services, APIs.
Common Data Source Types:
| Source Type |
Examples |
Use Case |
| Databases |
SQL Server, PostgreSQL, MySQL, Oracle |
Transactional systems, data warehouses |
| Files |
Excel, CSV, JSON, XML, Parquet |
Exports, one-time analysis, small datasets |
| Cloud Services |
Salesforce, Google Analytics, Azure, AWS |
SaaS applications, cloud data lakes |
| Web APIs |
REST APIs, OData feeds |
Custom apps, third-party services |
| Other BI Tools |
Power BI datasets, Tableau workbooks |
Reuse existing models, collaboration |
Connection Modes:
Import (Power BI) / Extract (Tableau):
• Data copied into BI tool's internal database
• Fast performance (data is local)
• Scheduled refresh (hourly, daily, etc.)
• Best for: Most scenarios, large datasets, aggregated data
• Limitation: Not real-time, data size limits (Power BI: 1GB/dataset in Pro)
DirectQuery (Power BI) / Live Connection (Tableau):
• Queries run directly against source each time
• Always current (real-time data)
• No size limit (stored in source)
• Best for: Real-time dashboards, very large datasets (>10GB)
• Limitation: Slower performance, depends on source database speed
Hybrid (Composite Models in Power BI):
• Mix of imported and DirectQuery
• Example: Import historical data, DirectQuery for today
• Best of both: Performance + freshness
Best Practices for Data Connections:
- Use Database Views - Pre-join and filter data at source
- Import When Possible - Faster than live connections
- Limit Columns - Only bring in fields you need
- Filter at Source - Reduce data transfer (e.g., last 2 years only)
- Schedule Smart - Refresh overnight when source is least busy
- Document Connections - Note data source, owner, refresh schedule
15.4 Data Transformation & Modeling
Clean, shape, and relate data before visualization using Power Query (Power BI) or Data Source (Tableau).
Common Transformations:
| Transformation |
Power BI (Power Query) |
Tableau (Prep/Data Source) |
| Remove Columns |
Right-click → Remove |
Right-click → Hide (or Tableau Prep) |
| Filter Rows |
Column header → Filter |
Drag to Filters shelf |
| Change Data Type |
Column icon → type |
Data type icon → change |
| Split Columns |
Transform → Split by delimiter |
Tableau Prep → Split |
| Merge (Join) Tables |
Home → Merge Queries |
Data → Relationships (automatic) |
| Append (Union) Tables |
Home → Append Queries |
Data → Union |
| Unpivot |
Transform → Unpivot Columns |
Tableau Prep → Pivot |
Data Modeling - Relationships:
Star Schema (Recommended):
Fact Table (Center): Sales Transactions
• Order_ID
• Date_Key → Links to Date Dimension
• Product_Key → Links to Product Dimension
• Customer_Key → Links to Customer Dimension
• Quantity, Revenue, Cost
Dimension Tables (Spokes):
• Date Dimension: Date_Key, Year, Quarter, Month, Week
• Product Dimension: Product_Key, Name, Category, Price
• Customer Dimension: Customer_Key, Name, City, State, Segment
Benefits:
• Clear relationships (1-to-many from dimensions to facts)
• Fast query performance
• Easy to understand and maintain
• Works well with both Power BI and Tableau
Creating Relationships:
Power BI:
1. Model view → Drag field from one table to matching field in another
2. Set cardinality (1:Many most common)
3. Set cross-filter direction (Single or Both)
Tableau:
1. Relationships auto-detected by matching field names
2. Data → Relationships to view/edit
3. Drag tables into relationship canvas to connect manually
Best Practice: Use descriptive relationship names
Good: Date_Key, Product_ID
Bad: ID, Key (ambiguous)
15.5 Creating Visualizations & Charts
Drag-and-drop interface makes creating charts intuitive in both tools.
Common Chart Types & When to Use:
| Chart Type |
Best Use Case |
Power BI |
Tableau |
| Bar/Column Chart |
Compare categories |
Clustered/Stacked Bar |
Bar Chart (horizontal/vertical) |
| Line Chart |
Trends over time |
Line Chart |
Line Chart (continuous) |
| Pie/Donut |
Parts of whole (max 5 slices) |
Pie/Donut Chart |
Pie Chart |
| Scatter Plot |
Correlation, outliers |
Scatter Chart |
Scatter Plot |
| Map |
Geographic data |
Map, Filled Map |
Symbol/Filled Map |
| Table/Matrix |
Detailed data, exact values |
Table, Matrix |
Text Table, Crosstab |
| Card (KPI) |
Single important number |
Card, KPI |
Text/Number (big font) |
| Gauge |
Progress to goal |
Gauge |
Bullet Graph (better) |
| Treemap |
Hierarchical data, proportions |
Treemap |
Treemap |
Creating a Chart - Basic Workflow:
Power BI:
1. Report view → Select visualization type from Visualizations pane
2. Drag fields to: Axis, Values, Legend, Tooltips
3. Format using Format pane (colors, labels, titles)
4. Add filters using Filters pane
Tableau:
1. Worksheet → Drag dimensions to Rows/Columns
2. Drag measures to Rows/Columns or Color/Size/Label
3. Show Me panel suggests chart types based on fields
4. Format using Format menu and Marks card
5. Add filters by dragging to Filters shelf
Design Best Practices:
- Descriptive Titles - "Q1 Sales by Region" not "Sales Data"
- Clear Labels - Include units ($, %, etc.)
- Consistent Colors - Same color = same thing across dashboard
- Readable Fonts - Minimum 10pt, avoid fancy fonts
- Tooltips - Add context on hover
- Remove Clutter - Gridlines, borders only if needed
15.6 Building Interactive Dashboards
Combine multiple visualizations into cohesive, interactive dashboards.
Dashboard Design Principles:
- Define Purpose - Who uses it? What decisions does it support?
- One Screen - Avoid scrolling for key metrics (1920x1080 standard)
- Visual Hierarchy - Most important metrics top-left, largest
- Grouping - Related metrics together (use containers/layout)
- Consistent Style - Same colors, fonts, spacing throughout
- Interactivity - Filters, drill-downs, cross-filtering
- Performance - Load in <5 seconds
Dashboard Layout Template:
┌─────────────────────────────────────────────┐
│ Dashboard Title [Last Updated: ...] │
├────────────┬────────────┬────────────────────┤
│ │ │ │
│ KPI Card │ KPI Card │ KPI Card │
│ Revenue │ Orders │ Conversion │
│ $2.5M ▲ │ 1,234 ▼ │ 3.2% ▲ │
│ │ │ │
├────────────────────────┬────────────────────┤
│ │ │
│ Main Chart │ Secondary Chart │
│ (Revenue Trend) │ (Sales by Region) │
│ │ │
│ │ │
├────────────────────────┴────────────────────┤
│ │
│ Detail Table or Supporting Chart │
│ │
└─────────────────────────────────────────────┘
Filters: [Date Range] [Region] [Product]
Interactivity Features:
| Feature |
Power BI |
Tableau |
Use Case |
| Slicers/Filters |
Slicer visual |
Filter shelf → Show Filter |
Let users filter entire dashboard |
| Cross-Filtering |
On by default, edit interactions |
Actions → Filter |
Click one chart, others update |
| Drill-Down |
Hierarchy in visual |
Hierarchy on Rows |
Year → Quarter → Month |
| Tooltips |
Tooltip field bucket |
Tooltip shelf |
Show details on hover |
| Bookmarks |
Bookmarks pane |
N/A (use Story Points) |
Save dashboard states |
15.7 Calculations: DAX (Power BI) & Table Calculations (Tableau)
Create custom metrics beyond what's in your source data.
Common Calculation Types:
1. Basic Math:
Power BI (DAX): Total Revenue = SUM(Sales[Revenue])
Tableau: SUM([Revenue])
2. Calculated Columns (Row-Level):
Power BI (DAX): Profit = Sales[Revenue] - Sales[Cost]
Tableau: [Revenue] - [Cost]
3. Measures (Aggregated):
Power BI (DAX): Avg Order = AVERAGE(Sales[Order_Value])
Tableau: AVG([Order Value])
4. Year-over-Year Growth:
Power BI (DAX):
YoY Growth =
VAR CurrentYear = SUM(Sales[Revenue])
VAR PriorYear = CALCULATE(SUM(Sales[Revenue]),
SAMEPERIODLASTYEAR('Date'[Date]))
RETURN DIVIDE(CurrentYear - PriorYear, PriorYear)
Tableau:
(SUM([Revenue]) - LOOKUP(SUM([Revenue]), -12)) / LOOKUP(SUM([Revenue]), -12)
5. Running Total:
Power BI (DAX): Running Total = CALCULATE(SUM(Sales[Revenue]),
FILTER(ALL('Date'[Date]), 'Date'[Date] <= MAX('Date'[Date])))
Tableau: Quick Table Calculation → Running Total
(Or: RUNNING_SUM(SUM([Revenue])))
DAX vs Tableau Calculations Comparison:
| Calculation |
Power BI (DAX) |
Tableau |
| Count Distinct |
DISTINCTCOUNT(Sales[Customer_ID]) |
COUNTD([Customer ID]) |
| IF Statement |
IF([Revenue] > 1000, "High", "Low") |
IF [Revenue] > 1000 THEN "High" ELSE "Low" END |
| Date Difference |
DATEDIFF([Start], [End], DAY) |
DATEDIFF('day', [Start], [End]) |
| Text Concatenation |
[First Name] & " " & [Last Name] |
[First Name] + " " + [Last Name] |
Learning Tip: Start with simple calculations (SUM, AVG, COUNT) and gradually
progress to complex ones. Both tools have excellent formula autocomplete - start typing and it
suggests functions. Power BI DAX is more powerful but steeper learning curve. Tableau calculations
are more intuitive for beginners.
15.8 Publishing & Sharing Reports
Get your dashboards into the hands of stakeholders securely.
Publishing Workflow:
Power BI:
1. Desktop → Create report locally
2. Publish → Home tab → Publish → Select workspace
3. Power BI Service → Report appears in workspace
4. Configure → Set data refresh schedule, security
5. Share → Share report, create app, or embed
Tableau:
1. Desktop → Create workbook locally
2. Publish → Server → Tableau Online/Server
3. Set Permissions → Who can view/edit
4. Schedule Extracts → If using extracted data
5. Share → Share link, embed, or Tableau Mobile
Sharing Options:
| Method |
Power BI |
Tableau |
Best For |
| Direct Share |
Share button → Email addresses |
Share → Email/Link |
Internal team members |
| App |
Create app from workspace |
N/A (use Projects) |
Curated experience, many users |
| Embed |
Embed code, publish to web |
Embed code, JavaScript API |
Company portal, app integration |
| Email Subscription |
Subscribe → Daily/Weekly email |
Subscription → Schedule |
Regular stakeholder updates |
| Export |
Export to PDF, PowerPoint, Excel |
Export to PDF, Image, Data |
Presentations, static reports |
| Mobile App |
Power BI Mobile (iOS/Android) |
Tableau Mobile |
Executives on-the-go |
Security Best Practices:
- Row-Level Security (RLS)
- Restrict data based on user identity
- Example: Sales reps see only their region's data
- Power BI: Define roles in Desktop, assign users in Service
- Tableau: User filters in data source
- Workspace/Project Permissions
- Admin: Full control
- Member: Can edit
- Contributor: Can publish
- Viewer: Read-only
- Sensitivity Labels
- Mark confidential reports (Power BI with Microsoft Purview)
- Prevent external sharing
- Require classification
Healthcare Example (Canada):
A Toronto hospital network deployed Tableau dashboards for patient metrics. Implemented RLS so
each department head only sees their department's data. Emergency access allows administrators
to view all data during incidents. Result: 500+ users accessing dashboards daily, zero data
breaches in 2 years, full PIPEDA compliance maintained.
✓ Module 15 Complete
You've learned:
- Why modern BI tools (Power BI & Tableau) transform business reporting
- Detailed comparison of Power BI vs Tableau features and pricing
- Connecting to diverse data sources (databases, files, cloud, APIs)
- Data transformation techniques using Power Query and Tableau Prep
- Data modeling with star schema and relationships
- Creating effective visualizations (charts, maps, tables)
- Building interactive dashboards with filters and drill-downs
- Writing calculations in DAX (Power BI) and Tableau formulas
- Publishing, sharing, and securing reports for stakeholders
- Real-world examples from retail, healthcare, and enterprise deployments
Next Steps: Practice with free versions (Power BI Desktop, Tableau Public) using sample datasets. Start with simple charts and progressively build more complex dashboards.