Performance Monitoring for SQL Server Analysis Services Stan Geiger #506 | Baltimore BI 2016
Gold Sponsors Silver Sponsors Bronze Sponsors Book Sponsors
About Me Sr. Product Manager with Idera Performance Monitoring of Microsoft BI stack Backup and Recovery of Microsoft SQL Server Geek Sync Presenter Blog Contributor HSSUG presenter Over 25 years experience BI, Data Architect DBA.Net Developer Data Analyst
Performance Metrics Architecture Processing
ARCHITECTURE Semantic Model 2
3 3
Tabular Model Relational Modeling Constructs (tables, relationships) In-Memory Analytics Engine Higher Memory Requirements Greater Compression On the fly aggregation Multiple data sources 4
Semantic Model Multidimensional OLAP Model Contructs(cubes, dimensions) Pre-aggregation Relational Data Sources Many to Many Relationships Large data volumes 5
Semantic Model Resources Comparing Tabular and Mutidimensional Solutions (SSAS) Choosing a Tabular or Multidimensional Modeling Experience in SQL Server 2012 Analysis Services 6
Architecture Processing 7
Data Refresh SSMS or Scripted (XMLA) Cube processing is memory intensive Disk I/O Changes to cube can have big impact on processing Tabular processing primarily refreshes data 8
Processing DAX Query Processing (Tabular) 9 Single Threaded Multi-threaded
Processing MDX Query Processing 10
Processing Query Processing 11 Formula Engine Cache Flat cache Calculated Cache Storage Engine Dimension (cube) Measure Group (cube) Vertipaq (tabular)
Architecture Performance Metrics 12
Performance Metrics Sources 13 Dynamic Management Views Performance Counters PS C:> (Get-Counter -ListSet "MSOLAP*").paths
Performance Metrics Categories 14 Network Disk I/O Memory CPU MDX/DAX
Performance Metrics Network 15 Network Interface: Bytes Received/sec Network Interface: Bytes Sent/sec Network Interface: Output Queue Length
Performance Metrics Network 16 Processing: Rows read/sec Storage Engine Query: Rows sent/sec
Performance Metrics Disk I/O 17 Storage Engine Query: Queries from file/sec Storage Engine Query: Data bytes/sec Physical Disk: Disk Read Bytes/sec Cache: Copy Reads/sec
Performance Metrics Disk I/O 18 Physical Disk: Avg. Disk sec/Read Physical Disk: Avg. Disk sec/Write
Performance Metrics Memory 19 Overall Memory used by SSAS SSAS Memory Efficiency SSAS Memory Activity
Performance Metrics Memory Usage 20 Memory: Cleaner Memory KB Memory: Cleaner Memory shrinkable KB Memory: Cleaner Memory nonshrinkable KB
Performance Metrics Memory Usage 21 Memory: Memory Limit Low KB Memory: Memory Limit High KB
Performance Metrics Memory Efficiency 22 Calculation cache lookups/sec, hits/sec Flat cache lookups/sec, hits/sec Dimension cache lookups/sec, hits/sec Measure group cache lookups/sec, hits/sec
Performance Metrics Memory Cache Improvements 23 Configure memory limits appropriately Warm the cache
Performance Metrics CPU 24 Processor: % Processor System: Context Switches/sec System: Processor Queue Length
Performance Metrics CPU 25 Threads: Query Pool Queue Length Threads: Query pool (FE) Threads: Processing pool (SE) Relief: MaxThreads CoordinatorExecutionMode
Performance Metrics Query Processing 26 MDX: Total cells calculated MDX: Number of calculation covers MDX: Total Sonar subcubes “Cell by cell” vs. “block oriented” vs
Performance Metrics Query Processing 27 MDX: Total recomputes MDX: Total NON EMPTY unoptimized MDX: Total NON EMPTY for calculated members
Performance Metrics Query Optimization 28 Use MDX constructs the optimizer resolves to block oriented processing Proper Aggregations Improves query performance Use Non-Empty option on MDX queries where possible Effective partition strategy Improves Storage Engine Performance
Performance Metrics Cube Processing 28 Processing: Rows written/sec Proc Aggregations: Rows created/sec Proc Indexes: Rows/sec Track over time to determine effectiveness or impact of changes to the cube structure.
monitoring-analysis-servicesssas-performance/