Power BI Performance. Tips and Techniques WWW.PRAGMATICWORKS.COM



Similar documents
DirectQuery vs In-Memory in BISM

PBI365: Data Analytics and Reporting with Power BI

Using Microsoft Business Intelligence Dashboards and Reports in the Federal Government

Business Intelligence in Excel 2013 Excel, PowerPivot and Power View. Stéphane Fréchette Friday April 26, 2013

TF04 - Leveraging SQL Server Business Intelligence Tools

Combined Knowledge Business Intelligence with SharePoint 2013 and SQL 2012 Course

Managing the PowerPivot for SharePoint Environment

SQL Server 2012 Performance White Paper

Creating BI solutions with BISM Tabular. Written By: Dan Clark

ENHANCEMENTS TO SQL SERVER COLUMN STORES. Anuhya Mallempati #

Updating Your SQL Server Skills to Microsoft SQL Server 2014

In-Memory Analytics: A comparison between Oracle TimesTen and Oracle Essbase

MOC 20467B: Designing Business Intelligence Solutions with Microsoft SQL Server 2012

Upgrading Your SQL Server Skills to Microsoft SQL Server 2014 va

Implementing Data Models and Reports with Microsoft SQL Server 2012 MOC 10778

Managed Self-Service BI & Data As A Service

Updating Your SQL Server Skills from Microsoft SQL Server 2008 to Microsoft SQL Server 2014

MS 10977B Upgrading Your SQL Server Skills to Microsoft SQL Server 2014

Data Mining, Predictive Analytics with Microsoft Analysis Services and Excel PowerPivot

SBI2013: Building BI Solutions using Excel and SharePoint 2013

The Brave New World of Power BI and Hybrid Cloud

Building Views and Charts in Requests Introduction to Answers views and charts Creating and editing charts Performing common view tasks

Unlock your data for fast insights: dimensionless modeling with in-memory column store. By Vadim Orlov

Updating Your SQL Server Skills to Microsoft SQL Server 2014

Business Intelligence, Data warehousing Concept and artifacts

Safe Harbor Statement

Course 55144B: SQL Server 2014 Performance Tuning and Optimization

Business Intelligence in SharePoint 2013

Course 55144: SQL Server 2014 Performance Tuning and Optimization

PowerPivot Microsoft s Answer to Self-Service Reporting

10977B: Updating Your SQL Server Skills to Microsoft SQL Server 2014

"Charting the Course... MOC AC SQL Server 2014 Performance Tuning and Optimization. Course Summary

Course 10977: Updating Your SQL Server Skills to Microsoft SQL Server 2014

Creating Power BI solutions using Power BI Desktop

Inge Os Sales Consulting Manager Oracle Norway

Fact Sheet In-Memory Analysis

Business Intelligence with Excel Excel new features for reporting and data analysis

Report Model (SMDL) Alternatives in SQL Server A Guided Tour of Microsoft Business Intelligence

Preview of Oracle Database 12c In-Memory Option. Copyright 2013, Oracle and/or its affiliates. All rights reserved.

Business Intelligence for Dynamics GP. Presented By: Rob Jackson, Business Intelligence Consultant Brent Keilin, GP Consultant

Excel Excel 97 Add-In. Excel 2010 PowerPivot. Excel Add-In Pivot Table Services Office Web Components

Melissa Coates. Tools & Techniques for Implementing Corporate and Self-Service BI. Triad SQL BI User Group 6/25/2013. BI Architect, Intellinet

How To Write Powerpivot For Excel

SQL Server 2016 BI Any Data, Anytime, Anywhere. Phua Chiu Kiang PCK CONSULTING MVP (Data Platform)

Upgrading Your SQL Server Skills to Microsoft SQL Server 2014

Tuning Tableau and Your Database for Great Performance PRESENT ED BY

How are my SSAS Cubes / Tabular Models Performing? Performance Monitoring

SQL Server Analysis Services Complete Practical & Real-time Training

Performance Tuning and Optimizing SQL Databases 2016

Course 10977A: Updating Your SQL Server Skills to Microsoft SQL Server 2014

Business Intelligence & Product Analytics

SQL Server 2012 Business Intelligence Boot Camp

PowerPivot for Advanced Reporting and Dashboards

Optimize Oracle Business Intelligence Analytics with Oracle 12c In-Memory Database Option

Implementing Data Models and Reports with Microsoft SQL Server

Microsoft Services Exceed your business with Microsoft SharePoint Server 2010

Microsoft Dynamics NAV Reporting Options. Derek Lamb May 2010

Upgrading Your SQL Server Skills to Microsoft SQL Server 2014

SQL SERVER SELF-SERVICE BI WITH MICROSOFT EXCEL

Who am I? Copyright 2014, Oracle and/or its affiliates. All rights reserved. 3

Exadata in the Retail Sector

SQL Server Performance Tuning and Optimization

ETL Overview. Extract, Transform, Load (ETL) Refreshment Workflow. The ETL Process. General ETL issues. MS Integration Services

Load Testing Analysis Services Gerhard Brückl

Reporting. Microsoft Dynamics GP enterpri se. Dynamics GP. Christopher Liley. Create and manage business reports with.

HP Vertica and MicroStrategy 10: a functional overview including recommendations for performance optimization. Presented by: Ritika Rahate

Updating Your SQL Server Skills to Microsoft SQL Server 2014 (10977) H8B96S

Agenda. SSIS - enterprise ready ETL

Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Excel Power Tools. David Onder and Alison Joseph. NCAIR 2015 Conference

Maximizing the Data Exploration Capabilities of Power View. Melissa Coates. SQL Saturday Kalamazoo 11/2/2013. BI Architect, BlueGranite

Parallel Data Warehouse

Microsoft BI Platform Overview

Deep-Dive to Analysis Services Security

How to Choose Between Hadoop, NoSQL and RDBMS

Tiber Solutions. Understanding the Current & Future Landscape of BI and Data Storage. Jim Hadley

Top 10 Performance Tips for OBI-EE

Performance rule violations usually result in increased CPU or I/O, time to fix the mistake, and ultimately, a cost to the business unit.

Course Outline: Course: Implementing a Data Warehouse with Microsoft SQL Server 2012 Learning Method: Instructor-led Classroom Learning

Oracle Database In- Memory Op4on in Ac4on

INTRODUCING DRUID: FAST AD-HOC QUERIES ON BIG DATA MICHAEL DRISCOLL - CEO ERIC TSCHETTER - LEAD METAMARKETS

Enterprise Data Integration for Microsoft Dynamics CRM

Response Time Analysis

Business Benefits From Microsoft SQL Server Business Intelligence Solutions How Can Business Intelligence Help You? PTR Associates Limited

Oracle EXAM - 1Z Oracle Database 11g Release 2: SQL Tuning. Buy Full Product.

BI Architecture with SQL 2012 & SharePoint 2010

SAP HANA - Main Memory Technology: A Challenge for Development of Business Applications. Jürgen Primsch, SAP AG July 2011

Microsoft SQL Server: MS Performance Tuning and Optimization Digital

SQL Server 2014 Performance Tuning and Optimization 55144; 5 Days; Instructor-led

Presented by: Jose Chinchilla, MCITP

The Complete Performance Solution for Microsoft SQL Server

Course Outline. SQL Server 2014 Performance Tuning and Optimization Course 55144: 5 days Instructor Led

Session 3119 Mobilizing Your Dashboards Best Tips for the Mobile Market. Scott Leaver, SAP and Matt Lloyd, SAP

1Z0-117 Oracle Database 11g Release 2: SQL Tuning. Oracle

Monitor and Manage Your MicroStrategy BI Environment Using Enterprise Manager and Health Center

Understanding Microsoft s BI Tools

PRODUCT OVERVIEW SUITE DEALS. Combine our award-winning products for complete performance monitoring and optimization, and cost effective solutions.

Transcription:

Power BI Performance Tips and Techniques

Rachael Martino Principal Consultant rmartino@pragmaticworks.com @RMartinoBoston

About Me SQL Server and Oracle developer and IT Manager since SQL Server 2000 Focused on BI and building a data culture of excellence Boston area resident Ravelry fan and avid knitter 3

Agenda Impact of poor performance Performance Tips and Techniques Demonstration 4

Power BI is fast Or, why worry about performance?

Power BI 6

Power BI Power BI leverages Power Pivot and Power View (and Power Query) In-memory, columnar database and formula engine are fast Now is 3 seconds http://www.powerpivotpro.com/2012/03/analysis-in-thethree-seconds-of-now/ 7

Architecture xvelocity in-memory analytics engine Columnar storage Compression In-memory cache Microsoft s family of in-memory and memoryoptimized data management technologies https://technet.microsoft.com/en-us/library/hh922900(v=sql.110).aspx 8

xvelocity (Vertipaq) *Ashvini Sharma and Allan Folting at TechEd North America 2012, courtesy of Mark Schneeberger https://blacksheepbi.wordpress.com/2012/11/03/microsoft-sql-server-2012-tabular-model-resources/ 9

Performance impacts Slow Processing on data loads Long waits during Design, especially: Calculated column Relationships Visualization: Slow slicers 10

File size and memory indicators Large file size of pbix file: Not necessarily indicator of bad performance Sudden changes Memory usage Direct impact on performance Screenshot of my local drive, showing improvements in file size as I resolved data issues. 11

Performance impact demo Behaviors affect: 1) Data Load 2) Design 3) Visualizations

Tips and Techniques Let s solve this

Tip #1: Tall, narrow tables are faster* Corollary Tip #1a: remove any unused fields http://www.powerpivotpro.com/2011/08/less-columns-more-rows-more-speed/ Tables must efficiently compress columns for speed Remove relationship ID s not in use these may have high cardinality and are unnecessary Remove all fields not used for analysis *The exception: In the case of tables with 10 s of millions of rows, the 1M-row partitions or Chunking may interfere with efficient compression rates http://www.powerpivotpro.com/2012/03/powerpivot-compression-mysterious-ways/ 14

Tip #2: Integers are faster than strings Strings, stored in hash table, require two queries to get a single value. Hash table uses less memory unless there is high cardinality, then the hash table becomes overhead http://tinylizard.com/how-does-power-pivot-store-andcompress-data/ Strings used as ID s can use unreasonable amounts of memory and slow performance. http://tinylizard.com/unique-and-ugly-primary-keys-of-doom/ 15

Tip #3: Slicers use multiple queries Slicers issue two queries each: The first to get the list The second query to check which rows of the pivot tables are related Cross-filtering slicers cause those same two queries to be executed for multiple sets of slicers. High cardinality slicers from large tables make poor user experience (too many options) and are slow https://datasavvy.wordpress.com/2015/02/19/improving-performance-in-excel-andpower-view-reports-with-a-power-pivot-data-source/ http://www.powerpivotpro.com/2010/07/slicers-and-pivot-update-performance/ 16

Tip #4: Understand DAX functions Understand formula engine interaction with the xvelocity engine for your DAX The FILTER statement must check every row individually (no bulk scans) http://www.powerpivotpro.com/2014/02/speed-another-reason-to-trimcalendar-tables/ MIN will have to scan the entire table to find the answer http://www.powerpivotblog.nl/tune-your-powerpivot-dax-query-dont-use-theentire-table-in-a-filter-and-replace-sumx-if-possible/ 17

Tips #5 & 6: 5. Remove unnecessary precision or split granularity values to reduce cardinality For example: split datetime into Date and Time http://tinylizard.com/power-pivot-performance-gotchas/ 6. Remove unnecessary rows in Calendars: Extra rows in reference tables cause unnecessary attempts at computation; rows not shown on tables or slicers have been computed against the fact data http://tinylizard.com/power-pivot-performance-gotchas/ 18

Sometime Tip #7: Caution with calculations The formula engine is I/O intensive and runs on one thread only, if processing performance is problematic, move simple calculations to the database Once processed calculated columns are static values in the data store Measures are calculated during query execution Caution: In design every change to the data model requires a recalc of all calculated columns https://datasavvy.wordpress.com/2015/02/19/improving-performance-in-excel-andpower-view-reports-with-a-power-pivot-data-source/ 19

Technique #1: Check your memory usage File size is a rough estimate of performance, but not 100% accurate. http://www.powerpivotpro.com/2011/08/less-columns-more-rows-more-speed/ Measure relative memory usage of each table and field using Kasper de Jonge s Power Pivot Memory Usage tool by loading you data into Excel http://www.powerpivotblog.nl/what-is-eating-up-my-memory-powerpivot-exceledition/ 20

Technique #2: Check your DAX Slow measures and calculations can cause big problems at design time and in visualizations Lookup DAX You may want to test and evaluate DAX using DAX Studio I have not used this tool. https://www.sqlbi.com/tools/dax-studio/ 21

So, is this better?.let s see

Performance improvement demo Using our tips and techniques

Conclusions

Power BI is fast and will perform Performance is very good in Power BI and PowerPivot models Large is relative depending on efficiency of data Think about your data model and calculations 25

References (not on slides) Power Pivot and Power BI by Rob Collie and Avichal Singh Pragmatic Works Tabular and Power Pivot On Demand Training course Power Pivot Pro Brad Gall s Power BI v2 and Beyond, January 19, 2016 http://www.powerpivotpro.com/2015/08/so-your-detailedflatpivot-is-slow-and-doesnt-sort-properly-try-text-measures/ https://msdn.microsoft.com/enus/library/gg413463(v=sql.110).aspx 26

Rachael Martino Principal Consultant rmartino@pragmaticworks.com @RMartinoBoston