SlideShare a Scribd company logo
1 of 25
CPBIG Local Meet – February 2019 Chennai Power BI – February 2019
PASS
Understanding the Power BI Data Model
Hariharan Rajendran
Microsoft Certified Trainer
Chennai Power BI
About me
Microsoft Certified Trainer.
8+ years experience.
Experience in Business Intelligence
• Microsoft BI
• SAP Business Objects
Expertise in Microsoft Technologies. http://dataap.org/author/hariharanr/
@imhariharanr
hariharan-r-12635640
Chennai Power BI
Power BI Model
Introduced in 2010 – Power Pivot for Excel
OLAP Experience
In-Memory column store database (Vertipaq)
Powerful Analytical formula language (DAX)
Power Query – 2013
Power BI, Excel & Analysis Service (Azure)
Chennai Power BI
Why Power BI Model?
Interactive analytics at the speed of thought
• Slice and dice without writing queries
• Perform business calculations
• Support for high concurrency to support enterprise reporting
• Easy and expressive KPIs, Hierarchies, drill through, naming & translations
• Security to the data
Chennai Power BI
Architecture
Power
Query
(M)
Data Access Vertipaq DQ
Business Logics &
Queries
DAX
Data Model Tabular
BI Semantic Model
Data Sources
Chennai Power BI
Power Query
Connectivity to a wide range of data sources
Highly interactive and intuitive experience for rapid and
interactive construction for queries over any data source
and any size.
Joins across different data sources
Easy and Interactive UI
Rich Language
Chennai Power BI
M Language
Evaluation flows from one step to next step
Results of previous step used in the next step
Each step is stored as variable and reused later steps
M has Lazy Evaluations.
let
Source = Sql.Databases("."),
AdventureWorksDW2014 = Source{[Name="AdventureWorksDW2014"]}[Data],
dbo_DimProduct = AdventureWorksDW2014{[Schema="dbo",Item="DimProduct"]}[Data],
#"Filtered Rows" = Table.SelectRows(dbo_DimProduct, each ([Color] <> "NA")),
#"Capitalized Each Word" = Table.TransformColumns(#"Filtered Rows",{{"Color", Text.Proper, type text}})
in
#"Capitalized Each Word”
Chennai Power BI
Query Folding
Power Query pushes work back to the source system
whenever it can.
select [_].[ProductSubcategoryKey],
[_].[ProductSubcategoryAlternateKey],
[_].[EnglishProductSubcategoryName],
[_].[ProductCategoryKey]
from
(
select [ProductSubcategoryKey],
[ProductSubcategoryAlternateKey],
[EnglishProductSubcategoryName],
[ProductCategoryKey]
from [dbo].[DimProductSubcategory] as [$Table]
) as [_]
where ([_].[EnglishProductSubcategoryName] = 'Mountain Bikes' or [_].[EnglishProductSubcategoryName] = 'Road Bikes’)
or [_].[EnglishProductSubcategoryName] = 'Touring Bikes'
Chennai Power BI
Data Storage
Data is either stored in memory (Vertipaq) or stored at the
data source level (DirectQuery).
In memory is fast and interactive build for analytics
Column based compression.
Direct Query is always up to date, it relies on data source
performance
Vertipaq – Performance
• Query Performance > Processing performance
Chennai Power BI
How does data get loaded?
Table 1
Table data stored in segments & dictionaries per columns
Calculated columns are stored like regular columns
Hierarchies
Relationship structures
Table 2
Chennai Power BI
Relationships
Chennai Power BI
Relationships
Data is always filtered from 1 to M side.
This works great in star schema
What if we don’t have a star schema? Or want to count
values in dimension?
In each country, how many customers bought bikes?
Bi-directional relationship
Chennai Power BI
Demo
Chennai Power BI
DAX
Introduced as part of Power Pivot – add-in for excel
Formula for calculated columns, measures and tables
Navigate relationships
Dynamic calculation of measures
Table valued functions
Time Intelligence
Variables
Chennai Power BI
Purpose of DAX
Calculated Columns
• Value is computed for each row
• Materialized in tables as a static column – It consumes memory
• It can be used for slicers and filters
• All rows contain same formula.
Calculated Measures
• Numeric calculation
• Not Materialized
• Dynamic – Does not consume memory
• Evaluated for each row based on the given context.
Chennai Power BI
Navigation Functions
RELATED
• Follows the relationships and returns the
value of a column
• Single value as a result
RELATEDTABLE
• Follows relationships and returns all the rows
in relationship with the current row value.
Chennai Power BI
Evaluation Contexts
Row Context Filter Context
Chennai Power BI
Demo
Chennai Power BI
Direct Query
Don’t want to wait for data to load. Need real-time data
Performance - Query patterns
Concurrency
Security
Chennai Power BI
Direct Query
Use an optimized data source if possible
Optimize for analytics
• Systems should handle querying of dimensions and facts
• Analytical ready data source helps
• SQL Server in Memory
• SAP HANA
Use Bi-directional cross filtering
Understand security requirements
RLS is very expensive
Chennai Power BI
Direct Query
Assume referential integrity
Chennai Power BI
Direct Query
Query Reduction
Chennai Power BI
Resources
CPBIG Webinar Recordings -
http://dataap.org/cpbig/webinar-recordings/
SQL Server, Power BI & AI - http://dataap.org/blog/
Power BI User Group - Chennai
Chennai Power BI
Chennai Power BI
Thank You - நன்றி

More Related Content

What's hot

Pass 2018 introduction to dax
Pass 2018 introduction to daxPass 2018 introduction to dax
Pass 2018 introduction to daxIke Ellis
 
Introduction of ssis
Introduction of ssisIntroduction of ssis
Introduction of ssisdeepakk073
 
Microsoft Power BI Overview
Microsoft Power BI OverviewMicrosoft Power BI Overview
Microsoft Power BI OverviewNetwoven Inc.
 
Mapping Data Flows Training deck Q1 CY22
Mapping Data Flows Training deck Q1 CY22Mapping Data Flows Training deck Q1 CY22
Mapping Data Flows Training deck Q1 CY22Mark Kromer
 
DAX and Power BI Training - 004 Power Query
DAX and Power BI Training - 004 Power QueryDAX and Power BI Training - 004 Power Query
DAX and Power BI Training - 004 Power QueryWill Harvey
 
Microsoft Power BI Technical Overview
Microsoft Power BI Technical OverviewMicrosoft Power BI Technical Overview
Microsoft Power BI Technical OverviewDavid J Rosenthal
 
Power BI Made Simple
Power BI Made SimplePower BI Made Simple
Power BI Made SimpleJames Serra
 
Power BI Report Server Enterprise Architecture, Tools to Publish reports and ...
Power BI Report Server Enterprise Architecture, Tools to Publish reports and ...Power BI Report Server Enterprise Architecture, Tools to Publish reports and ...
Power BI Report Server Enterprise Architecture, Tools to Publish reports and ...Vishal Pawar
 
Cepta The Future of Data with Power BI
Cepta The Future of Data with Power BICepta The Future of Data with Power BI
Cepta The Future of Data with Power BIKellyn Pot'Vin-Gorman
 
Groupby -Power bi dashboard in hour by vishal pawar-Presentation
Groupby -Power bi dashboard in hour by vishal pawar-Presentation Groupby -Power bi dashboard in hour by vishal pawar-Presentation
Groupby -Power bi dashboard in hour by vishal pawar-Presentation Vishal Pawar
 
Working with Microsoft Power Business Inteligence Tools - Presented by Atidan
Working with Microsoft Power Business Inteligence Tools - Presented by AtidanWorking with Microsoft Power Business Inteligence Tools - Presented by Atidan
Working with Microsoft Power Business Inteligence Tools - Presented by AtidanDavid J Rosenthal
 
Date warehousing concepts
Date warehousing conceptsDate warehousing concepts
Date warehousing conceptspcherukumalla
 
Data Visualization With Tableau | Edureka
Data Visualization With Tableau | EdurekaData Visualization With Tableau | Edureka
Data Visualization With Tableau | EdurekaEdureka!
 
PowerPivot and PowerQuery
PowerPivot and PowerQueryPowerPivot and PowerQuery
PowerPivot and PowerQueryin4400
 
Power BI Architecture
Power BI ArchitecturePower BI Architecture
Power BI ArchitectureArthur Graus
 
Tableau PPT Intro, Features, Advantages, Disadvantages
Tableau PPT Intro, Features, Advantages, DisadvantagesTableau PPT Intro, Features, Advantages, Disadvantages
Tableau PPT Intro, Features, Advantages, DisadvantagesBurn & Born
 

What's hot (20)

Pass 2018 introduction to dax
Pass 2018 introduction to daxPass 2018 introduction to dax
Pass 2018 introduction to dax
 
Introduction of ssis
Introduction of ssisIntroduction of ssis
Introduction of ssis
 
Microsoft Power BI Overview
Microsoft Power BI OverviewMicrosoft Power BI Overview
Microsoft Power BI Overview
 
Mapping Data Flows Training deck Q1 CY22
Mapping Data Flows Training deck Q1 CY22Mapping Data Flows Training deck Q1 CY22
Mapping Data Flows Training deck Q1 CY22
 
My tableau
My tableauMy tableau
My tableau
 
DAX and Power BI Training - 004 Power Query
DAX and Power BI Training - 004 Power QueryDAX and Power BI Training - 004 Power Query
DAX and Power BI Training - 004 Power Query
 
Microsoft Power BI Technical Overview
Microsoft Power BI Technical OverviewMicrosoft Power BI Technical Overview
Microsoft Power BI Technical Overview
 
Power BI Made Simple
Power BI Made SimplePower BI Made Simple
Power BI Made Simple
 
Power BI Report Server Enterprise Architecture, Tools to Publish reports and ...
Power BI Report Server Enterprise Architecture, Tools to Publish reports and ...Power BI Report Server Enterprise Architecture, Tools to Publish reports and ...
Power BI Report Server Enterprise Architecture, Tools to Publish reports and ...
 
SAP BI/BW
SAP BI/BWSAP BI/BW
SAP BI/BW
 
Cepta The Future of Data with Power BI
Cepta The Future of Data with Power BICepta The Future of Data with Power BI
Cepta The Future of Data with Power BI
 
Power query
Power queryPower query
Power query
 
Groupby -Power bi dashboard in hour by vishal pawar-Presentation
Groupby -Power bi dashboard in hour by vishal pawar-Presentation Groupby -Power bi dashboard in hour by vishal pawar-Presentation
Groupby -Power bi dashboard in hour by vishal pawar-Presentation
 
Working with Microsoft Power Business Inteligence Tools - Presented by Atidan
Working with Microsoft Power Business Inteligence Tools - Presented by AtidanWorking with Microsoft Power Business Inteligence Tools - Presented by Atidan
Working with Microsoft Power Business Inteligence Tools - Presented by Atidan
 
Date warehousing concepts
Date warehousing conceptsDate warehousing concepts
Date warehousing concepts
 
Data Visualization With Tableau | Edureka
Data Visualization With Tableau | EdurekaData Visualization With Tableau | Edureka
Data Visualization With Tableau | Edureka
 
PowerPivot and PowerQuery
PowerPivot and PowerQueryPowerPivot and PowerQuery
PowerPivot and PowerQuery
 
Power BI Overview
Power BI Overview Power BI Overview
Power BI Overview
 
Power BI Architecture
Power BI ArchitecturePower BI Architecture
Power BI Architecture
 
Tableau PPT Intro, Features, Advantages, Disadvantages
Tableau PPT Intro, Features, Advantages, DisadvantagesTableau PPT Intro, Features, Advantages, Disadvantages
Tableau PPT Intro, Features, Advantages, Disadvantages
 

Similar to Understanding Power BI Data Model

Formulating Power BI Enterprise Strategy
Formulating Power BI Enterprise StrategyFormulating Power BI Enterprise Strategy
Formulating Power BI Enterprise StrategyTeo Lachev
 
Improve power bi performance
Improve power bi performanceImprove power bi performance
Improve power bi performanceAnnie Xu
 
Text Mining & Sentiment Analysis with Power BI & Azure
Text Mining & Sentiment Analysis with Power BI & AzureText Mining & Sentiment Analysis with Power BI & Azure
Text Mining & Sentiment Analysis with Power BI & AzureSanil Mhatre
 
Introducing DocumentDB
Introducing DocumentDB Introducing DocumentDB
Introducing DocumentDB James Serra
 
Hybrid Analytics in Healthcare: Leveraging Power BI and Office 365 to Make Sm...
Hybrid Analytics in Healthcare: Leveraging Power BI and Office 365 to Make Sm...Hybrid Analytics in Healthcare: Leveraging Power BI and Office 365 to Make Sm...
Hybrid Analytics in Healthcare: Leveraging Power BI and Office 365 to Make Sm...Perficient, Inc.
 
Best practices to deliver data analytics to the business with power bi
Best practices to deliver data analytics to the business with power biBest practices to deliver data analytics to the business with power bi
Best practices to deliver data analytics to the business with power biSatya Shyam K Jayanty
 
Team Nation 2022 - How to choose between Dataverse, SQL Azure, SharePoint lis...
Team Nation 2022 - How to choose between Dataverse, SQL Azure, SharePoint lis...Team Nation 2022 - How to choose between Dataverse, SQL Azure, SharePoint lis...
Team Nation 2022 - How to choose between Dataverse, SQL Azure, SharePoint lis...serge luca
 
How to choose between SharePoint lists, SQL Azure, Microsoft Dataverse with D...
How to choose between SharePoint lists, SQL Azure, Microsoft Dataverse with D...How to choose between SharePoint lists, SQL Azure, Microsoft Dataverse with D...
How to choose between SharePoint lists, SQL Azure, Microsoft Dataverse with D...serge luca
 
Text Mining & Sentiment Analysis made easy, with Azure and Power BI
Text Mining & Sentiment Analysis made easy, with Azure and Power BIText Mining & Sentiment Analysis made easy, with Azure and Power BI
Text Mining & Sentiment Analysis made easy, with Azure and Power BISanil Mhatre
 
SQL Server 2014 Faster Insights from Any Data
SQL Server 2014 Faster Insights from Any DataSQL Server 2014 Faster Insights from Any Data
SQL Server 2014 Faster Insights from Any DataStéphane Fréchette
 
Microsoft BI reporting capabilities (on-prem solutions) Presentation
Microsoft BI reporting capabilities (on-prem solutions) PresentationMicrosoft BI reporting capabilities (on-prem solutions) Presentation
Microsoft BI reporting capabilities (on-prem solutions) Presentationjeromedoyen
 
CRM UG Belux March 2017 - Power BI and Dynamics 365
CRM UG Belux March 2017 - Power BI and Dynamics 365CRM UG Belux March 2017 - Power BI and Dynamics 365
CRM UG Belux March 2017 - Power BI and Dynamics 365Joris Poelmans
 
Machine Learning Models in Production
Machine Learning Models in ProductionMachine Learning Models in Production
Machine Learning Models in ProductionDataWorks Summit
 
Data Modeling on Azure for Analytics
Data Modeling on Azure for AnalyticsData Modeling on Azure for Analytics
Data Modeling on Azure for AnalyticsIke Ellis
 
AWS Webcast - Build high-scale applications with Amazon DynamoDB
AWS Webcast - Build high-scale applications with Amazon DynamoDBAWS Webcast - Build high-scale applications with Amazon DynamoDB
AWS Webcast - Build high-scale applications with Amazon DynamoDBAmazon Web Services
 
POWER BI Training From SQL SchoolV2.pptx
POWER BI Training From SQL SchoolV2.pptxPOWER BI Training From SQL SchoolV2.pptx
POWER BI Training From SQL SchoolV2.pptxSequelGate
 

Similar to Understanding Power BI Data Model (20)

Formulating Power BI Enterprise Strategy
Formulating Power BI Enterprise StrategyFormulating Power BI Enterprise Strategy
Formulating Power BI Enterprise Strategy
 
DAX - 101
DAX - 101 DAX - 101
DAX - 101
 
Improve power bi performance
Improve power bi performanceImprove power bi performance
Improve power bi performance
 
Text Mining & Sentiment Analysis with Power BI & Azure
Text Mining & Sentiment Analysis with Power BI & AzureText Mining & Sentiment Analysis with Power BI & Azure
Text Mining & Sentiment Analysis with Power BI & Azure
 
Introducing DocumentDB
Introducing DocumentDB Introducing DocumentDB
Introducing DocumentDB
 
Power BI
Power BIPower BI
Power BI
 
Hybrid Analytics in Healthcare: Leveraging Power BI and Office 365 to Make Sm...
Hybrid Analytics in Healthcare: Leveraging Power BI and Office 365 to Make Sm...Hybrid Analytics in Healthcare: Leveraging Power BI and Office 365 to Make Sm...
Hybrid Analytics in Healthcare: Leveraging Power BI and Office 365 to Make Sm...
 
Best practices to deliver data analytics to the business with power bi
Best practices to deliver data analytics to the business with power biBest practices to deliver data analytics to the business with power bi
Best practices to deliver data analytics to the business with power bi
 
Team Nation 2022 - How to choose between Dataverse, SQL Azure, SharePoint lis...
Team Nation 2022 - How to choose between Dataverse, SQL Azure, SharePoint lis...Team Nation 2022 - How to choose between Dataverse, SQL Azure, SharePoint lis...
Team Nation 2022 - How to choose between Dataverse, SQL Azure, SharePoint lis...
 
How to choose between SharePoint lists, SQL Azure, Microsoft Dataverse with D...
How to choose between SharePoint lists, SQL Azure, Microsoft Dataverse with D...How to choose between SharePoint lists, SQL Azure, Microsoft Dataverse with D...
How to choose between SharePoint lists, SQL Azure, Microsoft Dataverse with D...
 
Text Mining & Sentiment Analysis made easy, with Azure and Power BI
Text Mining & Sentiment Analysis made easy, with Azure and Power BIText Mining & Sentiment Analysis made easy, with Azure and Power BI
Text Mining & Sentiment Analysis made easy, with Azure and Power BI
 
Taming the shrew Power BI
Taming the shrew Power BITaming the shrew Power BI
Taming the shrew Power BI
 
SQL Server 2014 Faster Insights from Any Data
SQL Server 2014 Faster Insights from Any DataSQL Server 2014 Faster Insights from Any Data
SQL Server 2014 Faster Insights from Any Data
 
Microsoft BI reporting capabilities (on-prem solutions) Presentation
Microsoft BI reporting capabilities (on-prem solutions) PresentationMicrosoft BI reporting capabilities (on-prem solutions) Presentation
Microsoft BI reporting capabilities (on-prem solutions) Presentation
 
CRM UG Belux March 2017 - Power BI and Dynamics 365
CRM UG Belux March 2017 - Power BI and Dynamics 365CRM UG Belux March 2017 - Power BI and Dynamics 365
CRM UG Belux March 2017 - Power BI and Dynamics 365
 
Machine Learning Models in Production
Machine Learning Models in ProductionMachine Learning Models in Production
Machine Learning Models in Production
 
Data Modeling on Azure for Analytics
Data Modeling on Azure for AnalyticsData Modeling on Azure for Analytics
Data Modeling on Azure for Analytics
 
AWS Webcast - Build high-scale applications with Amazon DynamoDB
AWS Webcast - Build high-scale applications with Amazon DynamoDBAWS Webcast - Build high-scale applications with Amazon DynamoDB
AWS Webcast - Build high-scale applications with Amazon DynamoDB
 
POWER BI Training From SQL SchoolV2.pptx
POWER BI Training From SQL SchoolV2.pptxPOWER BI Training From SQL SchoolV2.pptx
POWER BI Training From SQL SchoolV2.pptx
 
Oracle bi ee architecture
Oracle bi ee architectureOracle bi ee architecture
Oracle bi ee architecture
 

More from HARIHARAN R

Power BI Admin Features & REST API
Power BI Admin Features & REST APIPower BI Admin Features & REST API
Power BI Admin Features & REST APIHARIHARAN R
 
Power BI Publisher
Power BI Publisher Power BI Publisher
Power BI Publisher HARIHARAN R
 
Integrating flow and power apps with power bi
Integrating flow and power apps with power biIntegrating flow and power apps with power bi
Integrating flow and power apps with power biHARIHARAN R
 
Latest Features in Power BI
Latest Features in Power BILatest Features in Power BI
Latest Features in Power BIHARIHARAN R
 
Real time analytics with Power BI
Real time analytics with Power BIReal time analytics with Power BI
Real time analytics with Power BIHARIHARAN R
 
A Deep Dive into to Power BI - level 2
A Deep Dive into to Power BI - level 2A Deep Dive into to Power BI - level 2
A Deep Dive into to Power BI - level 2HARIHARAN R
 
SQL Server Reporting Services 2016 Features
SQL Server Reporting Services 2016 FeaturesSQL Server Reporting Services 2016 Features
SQL Server Reporting Services 2016 FeaturesHARIHARAN R
 
CPBIG - A Deep Dive into Power BI
CPBIG - A Deep Dive into Power BICPBIG - A Deep Dive into Power BI
CPBIG - A Deep Dive into Power BIHARIHARAN R
 
Azure Stream Analytics - Webinar
Azure Stream Analytics - WebinarAzure Stream Analytics - Webinar
Azure Stream Analytics - WebinarHARIHARAN R
 
Azure Logic, API & Mobile Apps
Azure Logic, API & Mobile AppsAzure Logic, API & Mobile Apps
Azure Logic, API & Mobile AppsHARIHARAN R
 
Azure Data Factory
Azure Data FactoryAzure Data Factory
Azure Data FactoryHARIHARAN R
 
Introduction to Power BI
Introduction to Power BIIntroduction to Power BI
Introduction to Power BIHARIHARAN R
 
Analytics with R in SQL Server 2016
Analytics with R in SQL Server 2016Analytics with R in SQL Server 2016
Analytics with R in SQL Server 2016HARIHARAN R
 

More from HARIHARAN R (15)

Power BI Admin Features & REST API
Power BI Admin Features & REST APIPower BI Admin Features & REST API
Power BI Admin Features & REST API
 
Power BI Publisher
Power BI Publisher Power BI Publisher
Power BI Publisher
 
Integrating flow and power apps with power bi
Integrating flow and power apps with power biIntegrating flow and power apps with power bi
Integrating flow and power apps with power bi
 
Latest Features in Power BI
Latest Features in Power BILatest Features in Power BI
Latest Features in Power BI
 
Real time analytics with Power BI
Real time analytics with Power BIReal time analytics with Power BI
Real time analytics with Power BI
 
A Deep Dive into to Power BI - level 2
A Deep Dive into to Power BI - level 2A Deep Dive into to Power BI - level 2
A Deep Dive into to Power BI - level 2
 
SQL Server Reporting Services 2016 Features
SQL Server Reporting Services 2016 FeaturesSQL Server Reporting Services 2016 Features
SQL Server Reporting Services 2016 Features
 
CPBIG - A Deep Dive into Power BI
CPBIG - A Deep Dive into Power BICPBIG - A Deep Dive into Power BI
CPBIG - A Deep Dive into Power BI
 
Azure Stream Analytics - Webinar
Azure Stream Analytics - WebinarAzure Stream Analytics - Webinar
Azure Stream Analytics - Webinar
 
Azure Logic, API & Mobile Apps
Azure Logic, API & Mobile AppsAzure Logic, API & Mobile Apps
Azure Logic, API & Mobile Apps
 
Azure Data Factory
Azure Data FactoryAzure Data Factory
Azure Data Factory
 
Introduction to Power BI
Introduction to Power BIIntroduction to Power BI
Introduction to Power BI
 
Azure search
Azure searchAzure search
Azure search
 
Analytics with R in SQL Server 2016
Analytics with R in SQL Server 2016Analytics with R in SQL Server 2016
Analytics with R in SQL Server 2016
 
Azure catalog
Azure catalogAzure catalog
Azure catalog
 

Recently uploaded

The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightSafe Software
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaWSO2
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....rightmanforbloodline
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringWSO2
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxMarkSteadman7
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformWSO2
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard37
 
JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuidePixlogix Infotech
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)Samir Dash
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 

Recently uploaded (20)

The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software Engineering
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate Guide
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 

Understanding Power BI Data Model

  • 1. CPBIG Local Meet – February 2019 Chennai Power BI – February 2019 PASS Understanding the Power BI Data Model Hariharan Rajendran Microsoft Certified Trainer
  • 2. Chennai Power BI About me Microsoft Certified Trainer. 8+ years experience. Experience in Business Intelligence • Microsoft BI • SAP Business Objects Expertise in Microsoft Technologies. http://dataap.org/author/hariharanr/ @imhariharanr hariharan-r-12635640
  • 3. Chennai Power BI Power BI Model Introduced in 2010 – Power Pivot for Excel OLAP Experience In-Memory column store database (Vertipaq) Powerful Analytical formula language (DAX) Power Query – 2013 Power BI, Excel & Analysis Service (Azure)
  • 4. Chennai Power BI Why Power BI Model? Interactive analytics at the speed of thought • Slice and dice without writing queries • Perform business calculations • Support for high concurrency to support enterprise reporting • Easy and expressive KPIs, Hierarchies, drill through, naming & translations • Security to the data
  • 5. Chennai Power BI Architecture Power Query (M) Data Access Vertipaq DQ Business Logics & Queries DAX Data Model Tabular BI Semantic Model Data Sources
  • 6. Chennai Power BI Power Query Connectivity to a wide range of data sources Highly interactive and intuitive experience for rapid and interactive construction for queries over any data source and any size. Joins across different data sources Easy and Interactive UI Rich Language
  • 7. Chennai Power BI M Language Evaluation flows from one step to next step Results of previous step used in the next step Each step is stored as variable and reused later steps M has Lazy Evaluations. let Source = Sql.Databases("."), AdventureWorksDW2014 = Source{[Name="AdventureWorksDW2014"]}[Data], dbo_DimProduct = AdventureWorksDW2014{[Schema="dbo",Item="DimProduct"]}[Data], #"Filtered Rows" = Table.SelectRows(dbo_DimProduct, each ([Color] <> "NA")), #"Capitalized Each Word" = Table.TransformColumns(#"Filtered Rows",{{"Color", Text.Proper, type text}}) in #"Capitalized Each Word”
  • 8. Chennai Power BI Query Folding Power Query pushes work back to the source system whenever it can. select [_].[ProductSubcategoryKey], [_].[ProductSubcategoryAlternateKey], [_].[EnglishProductSubcategoryName], [_].[ProductCategoryKey] from ( select [ProductSubcategoryKey], [ProductSubcategoryAlternateKey], [EnglishProductSubcategoryName], [ProductCategoryKey] from [dbo].[DimProductSubcategory] as [$Table] ) as [_] where ([_].[EnglishProductSubcategoryName] = 'Mountain Bikes' or [_].[EnglishProductSubcategoryName] = 'Road Bikes’) or [_].[EnglishProductSubcategoryName] = 'Touring Bikes'
  • 9. Chennai Power BI Data Storage Data is either stored in memory (Vertipaq) or stored at the data source level (DirectQuery). In memory is fast and interactive build for analytics Column based compression. Direct Query is always up to date, it relies on data source performance Vertipaq – Performance • Query Performance > Processing performance
  • 10. Chennai Power BI How does data get loaded? Table 1 Table data stored in segments & dictionaries per columns Calculated columns are stored like regular columns Hierarchies Relationship structures Table 2
  • 12. Chennai Power BI Relationships Data is always filtered from 1 to M side. This works great in star schema What if we don’t have a star schema? Or want to count values in dimension? In each country, how many customers bought bikes? Bi-directional relationship
  • 14. Chennai Power BI DAX Introduced as part of Power Pivot – add-in for excel Formula for calculated columns, measures and tables Navigate relationships Dynamic calculation of measures Table valued functions Time Intelligence Variables
  • 15. Chennai Power BI Purpose of DAX Calculated Columns • Value is computed for each row • Materialized in tables as a static column – It consumes memory • It can be used for slicers and filters • All rows contain same formula. Calculated Measures • Numeric calculation • Not Materialized • Dynamic – Does not consume memory • Evaluated for each row based on the given context.
  • 16. Chennai Power BI Navigation Functions RELATED • Follows the relationships and returns the value of a column • Single value as a result RELATEDTABLE • Follows relationships and returns all the rows in relationship with the current row value.
  • 17. Chennai Power BI Evaluation Contexts Row Context Filter Context
  • 19. Chennai Power BI Direct Query Don’t want to wait for data to load. Need real-time data Performance - Query patterns Concurrency Security
  • 20. Chennai Power BI Direct Query Use an optimized data source if possible Optimize for analytics • Systems should handle querying of dimensions and facts • Analytical ready data source helps • SQL Server in Memory • SAP HANA Use Bi-directional cross filtering Understand security requirements RLS is very expensive
  • 21. Chennai Power BI Direct Query Assume referential integrity
  • 22. Chennai Power BI Direct Query Query Reduction
  • 23. Chennai Power BI Resources CPBIG Webinar Recordings - http://dataap.org/cpbig/webinar-recordings/ SQL Server, Power BI & AI - http://dataap.org/blog/ Power BI User Group - Chennai
  • 25. Chennai Power BI Thank You - நன்றி

Editor's Notes

  1. 1. Sales Amount -- computed for row by row -- Memory -- Product[Price] The value of the price column from the product table for the current row Different for each row 2. Profit Margin -- Calculated column -- Calculated measure
  2. http://sqlml.azurewebsites.net/2017/04/16/evaluation-contexts-in-dax/