SlideShare a Scribd company logo
1 of 23
SQL Server Analysis Services
Reference Architecture
Customer Challenges
Goal of this whitepaper
Hardware configuration
Test Execution
Results
TODAY’S AGENDA
TEAM
Thomas
Kejser
CTO EMEA at Fusion-
io
Alexei
Khalyako
SQL CAT Program
Manager at Microsoft
Marcel Franke
Practice Lead at pmOne
Gerhard Brückl
Practice Lead at pmOne
SSAS Maestro
Hannes Mayer
Practice Lead at pmOne
SSAS Maestro
Build scalable solutions on user demand
Choose of an OLAP optimized hardware configuration
Align SSAS configuration to hardware settings
CUSTOMER CHALLENGES
Reduce Risk
Reduce Cost
Accelerate Performance
Prove Scalability
GOAL OF THIS WHITEPAPER
Hardware Configuration
What makes a good hardware for SQL Server Analysis Services
CPU
More cores  more parallelism for Storage Engine bound queries
High clock rate  faster Formula Engine bound queries
I/O
SSAS uses random reads
 No spinning disks - use Fusion-IO drives instead
 Use local disks to avoid unnecessary fiber channel/iSCSI cost
Memory
More memory  more data can be loaded into memory
In ideal case: entire cube could be loaded into memory
GENERAL HARDWARE RECOMMENDATIONS
Server: HP DL380 Gen8
CPU
2.90 GHz. 8 Cores. 16 Logical Processors
Good mix between speed and number of cores
Hyper threading to 32 logical cores to the OS
I/O
Local Fixed Disk (4,38 TB). 4 x Fusion IO Drive 2 Stripe Set (4x1,2TB)
Very high IOPs (random reads: 140.000/s)
Very high throughput (random reads: 4,3GB/s)
Memory
256 GB physical memory
OS: Windows Server 2012 Datacenter
REFERENCE HARDWARE CONFIGURATION
Test execution
TEST ENVIRONMENT
Test Execution Test Suite
10 GB Ethernet
2 SQL Server Analysis Services Databases
100 GB – fits into memory
1.000 GB – does not fit into memory
3 query-patterns
7 Standard queries for common business questions
Ratio-to-Total, Rolling-12-month, Year-over-Year growth, …
1 DistinctCount query
1 Many-to-Many query
Increasing number of users
Incrementally grow number of connected users – 1 every 10 sec
Up to 200 concurrent users
TEST OVERVIEW
Results
“How many queries can be answered
within a given time period“
DEFINING CONCURRENCY
EXPECTED RESULTS
(1) Constant test duration
(2) Until saturation point is reached
(3) Linear increase of test duration together with concurrent users
(1) (3)(2)
Avg. query
response time
More than 100+ concurrent users (connections) supported
For standard queries
With Average response time <3 seconds
Regardless of database size
Complex queries impact average response time
DistinctCount and Many-to-Many queries may not finish before the
next user connects – especially for the 1,000 GB cube
Usually:
- not every query has the pattern of a complex query
- executed rarely compare to the standard queries
- can be avoided by appropriate cube design
Scalability depends on CPU resources. I/O is not a limiting factor
anymore
FINAL RESULTS – OVERVIEW
Constant query execution time till CPU limit reached with growing
numbers of concurrent users
FINAL RESULTS – OVERVIEW
* Query 20
An average of 285 concurrent users with a response time below 3
seconds for standard queries
Only 2 concurrent users for more complex queries
FINAL RESULTS – DETAILS 100 GB
Query-Pattern Query
AvgTests/s
(@SP)
Max
Avg Tests/s
Median
Avg Tests/s
Queries
/ Test
Supported Concurrent Users/Queries
3s Response Time 10s Response Time
Standard Query2 360.0 513.2 429.8 1 1.080 3,600
Standard Query3 4.5 9.4 4.0 1 14 45
Standard Query20 22.5 41.0 22.0 1 68 225
Standard Query21 14.0 17.2 13.0 1 42 140
Standard Query22 1.5 4.2 1.0 1 5 15
Standard Query52 250.0 505.6 323.4 1 750 2,500
Standard Query77 13.0 88.0 14.8 1 39 130
DistinctCount Query100 0.6 2.8 0.6 1 2 6
Many-to-Many Query101 6.8 112.0 76.2 1 20 68
AllQueries AllQueries 0.8 260.4 0.2 9 2 8
(@SP) = @saturation point
An average of 210 concurrent users with a response time below 3
seconds for standard queries
more complex queries run longer than our required response time
which means we cannot even satisfy 1 concurrent user
FINAL RESULTS – DETAILS 1000 GB
Query-Pattern Query
AvgTests/s
(@SP)
Max
Avg Tests/s
Median
Avg Tests/s
Queries
/ Test
Supported Concurrent Users/Queries
3s Response Time 10s Response Time
Standard Query2 250,0 409,8 373,2 1 750 2.500
Standard Query3 0,4 3,4 - 1 1 4
Standard Query20 10,0 16,6 10,5 1 30 100
Standard Query21 6,6 11,4 6,6 1 20 66
Standard Query22 1,0 4,4 0,8 1 3 10
Standard Query52 220,0 388,6 304,2 1 660 2.200
Standard Query77 0,1 5,4 0,2 1 0 1
DistinctCount Query100 - 0,2 - 1 - -
Many-to-Many Query101 - 0,6 - 1 - -
AllQueries AllQueries - 2,6 - 9 - -
(@SP) = @saturation point
Shown great linear, CPU bound scale for fast queries
Concurrency is related to the number of queries not to the number of
users
No user would run more than one query per second
Caching helps to avoid expensive IO operations
NUMBER OF USERS VS. QUERY RESPONSE TIME
Bigger cube  more IO
slower query response times
Bigger cube  not everything can be loaded into memory
Constant IO going on  slower query response times
2 possible solutions to handle more data
Better IO system
More memory
(More CPU to handle additional threads)
QUERY RESPONSE TIME VS. DATA VOLUME
Summary
This sample configuration can be used as reference architecture for
building high scalable OLAP solutions.
With given configuration we satisfied the SLAs for the cube up to 1TB
in size and 200+ concurrent queries.
Capacity calculation
The average query per core ratio is 6,5.
If more than 200 concurrent queries are expected then this ratio can be
used to calculated necessary number of cores.
Sample: 400 concurrent queries = 400/6,5 = 64 cores
CONCLUSION
QUESTIONS?

More Related Content

What's hot

Sql server performance tuning
Sql server performance tuningSql server performance tuning
Sql server performance tuningJugal Shah
 
Progress OpenEdge database administration guide and reference
Progress OpenEdge database administration guide and referenceProgress OpenEdge database administration guide and reference
Progress OpenEdge database administration guide and referenceVinh Nguyen
 
Performance Tuning for Pirates!
Performance Tuning for Pirates!Performance Tuning for Pirates!
Performance Tuning for Pirates!John Sterrett
 
Hardware planning & sizing for sql server
Hardware planning & sizing for sql serverHardware planning & sizing for sql server
Hardware planning & sizing for sql serverDavide Mauri
 
SQL Server Performance Tuning Baseline
SQL Server Performance Tuning BaselineSQL Server Performance Tuning Baseline
SQL Server Performance Tuning Baseline► Supreme Mandal ◄
 
PostGreSQL Performance Tuning
PostGreSQL Performance TuningPostGreSQL Performance Tuning
PostGreSQL Performance TuningMaven Logix
 
PostgreSQL Hangout Parameter Tuning
PostgreSQL Hangout Parameter TuningPostgreSQL Hangout Parameter Tuning
PostgreSQL Hangout Parameter TuningAshnikbiz
 
Whitepaper: Exadata Consolidation Success Story
Whitepaper: Exadata Consolidation Success StoryWhitepaper: Exadata Consolidation Success Story
Whitepaper: Exadata Consolidation Success StoryKristofferson A
 
Sql Server Performance Tuning
Sql Server Performance TuningSql Server Performance Tuning
Sql Server Performance TuningBala Subra
 
SQL Server Tuning to Improve Database Performance
SQL Server Tuning to Improve Database PerformanceSQL Server Tuning to Improve Database Performance
SQL Server Tuning to Improve Database PerformanceMark Ginnebaugh
 
The Magic of Tuning in PostgreSQL
The Magic of Tuning in PostgreSQLThe Magic of Tuning in PostgreSQL
The Magic of Tuning in PostgreSQLAshnikbiz
 
Oracle database performance tuning
Oracle database performance tuningOracle database performance tuning
Oracle database performance tuningAbishek V S
 
Find and fix SQL Server performance problems faster
Find and fix SQL Server performance problems fasterFind and fix SQL Server performance problems faster
Find and fix SQL Server performance problems fasterSolarWinds
 
Analyzing and Interpreting AWR
Analyzing and Interpreting AWRAnalyzing and Interpreting AWR
Analyzing and Interpreting AWRpasalapudi
 
Average Active Sessions - OaktableWorld 2013
Average Active Sessions - OaktableWorld 2013Average Active Sessions - OaktableWorld 2013
Average Active Sessions - OaktableWorld 2013John Beresniewicz
 
polyserve-sql-server-scale-out-reporting
polyserve-sql-server-scale-out-reportingpolyserve-sql-server-scale-out-reporting
polyserve-sql-server-scale-out-reportingJason Goodman
 
Hotsos 2011: Mining the AWR repository for Capacity Planning, Visualization, ...
Hotsos 2011: Mining the AWR repository for Capacity Planning, Visualization, ...Hotsos 2011: Mining the AWR repository for Capacity Planning, Visualization, ...
Hotsos 2011: Mining the AWR repository for Capacity Planning, Visualization, ...Kristofferson A
 
Whitepaper: Where did my CPU go?
Whitepaper: Where did my CPU go?Whitepaper: Where did my CPU go?
Whitepaper: Where did my CPU go?Kristofferson A
 

What's hot (20)

Analyzing awr report
Analyzing awr reportAnalyzing awr report
Analyzing awr report
 
Sql server performance tuning
Sql server performance tuningSql server performance tuning
Sql server performance tuning
 
Progress OpenEdge database administration guide and reference
Progress OpenEdge database administration guide and referenceProgress OpenEdge database administration guide and reference
Progress OpenEdge database administration guide and reference
 
Performance Tuning for Pirates!
Performance Tuning for Pirates!Performance Tuning for Pirates!
Performance Tuning for Pirates!
 
Hardware planning & sizing for sql server
Hardware planning & sizing for sql serverHardware planning & sizing for sql server
Hardware planning & sizing for sql server
 
SQL Server Performance Tuning Baseline
SQL Server Performance Tuning BaselineSQL Server Performance Tuning Baseline
SQL Server Performance Tuning Baseline
 
PostGreSQL Performance Tuning
PostGreSQL Performance TuningPostGreSQL Performance Tuning
PostGreSQL Performance Tuning
 
PostgreSQL Hangout Parameter Tuning
PostgreSQL Hangout Parameter TuningPostgreSQL Hangout Parameter Tuning
PostgreSQL Hangout Parameter Tuning
 
Whitepaper: Exadata Consolidation Success Story
Whitepaper: Exadata Consolidation Success StoryWhitepaper: Exadata Consolidation Success Story
Whitepaper: Exadata Consolidation Success Story
 
Sql Server Performance Tuning
Sql Server Performance TuningSql Server Performance Tuning
Sql Server Performance Tuning
 
SQL Server Tuning to Improve Database Performance
SQL Server Tuning to Improve Database PerformanceSQL Server Tuning to Improve Database Performance
SQL Server Tuning to Improve Database Performance
 
The Magic of Tuning in PostgreSQL
The Magic of Tuning in PostgreSQLThe Magic of Tuning in PostgreSQL
The Magic of Tuning in PostgreSQL
 
Oracle database performance tuning
Oracle database performance tuningOracle database performance tuning
Oracle database performance tuning
 
Find and fix SQL Server performance problems faster
Find and fix SQL Server performance problems fasterFind and fix SQL Server performance problems faster
Find and fix SQL Server performance problems faster
 
Analyzing and Interpreting AWR
Analyzing and Interpreting AWRAnalyzing and Interpreting AWR
Analyzing and Interpreting AWR
 
Average Active Sessions - OaktableWorld 2013
Average Active Sessions - OaktableWorld 2013Average Active Sessions - OaktableWorld 2013
Average Active Sessions - OaktableWorld 2013
 
Concurrency
ConcurrencyConcurrency
Concurrency
 
polyserve-sql-server-scale-out-reporting
polyserve-sql-server-scale-out-reportingpolyserve-sql-server-scale-out-reporting
polyserve-sql-server-scale-out-reporting
 
Hotsos 2011: Mining the AWR repository for Capacity Planning, Visualization, ...
Hotsos 2011: Mining the AWR repository for Capacity Planning, Visualization, ...Hotsos 2011: Mining the AWR repository for Capacity Planning, Visualization, ...
Hotsos 2011: Mining the AWR repository for Capacity Planning, Visualization, ...
 
Whitepaper: Where did my CPU go?
Whitepaper: Where did my CPU go?Whitepaper: Where did my CPU go?
Whitepaper: Where did my CPU go?
 

Viewers also liked

A Gentle Introduction to Microsoft SSAS
A Gentle Introduction to Microsoft SSASA Gentle Introduction to Microsoft SSAS
A Gentle Introduction to Microsoft SSASJohn Paredes
 
Data warehouse and ssas terms
Data warehouse and ssas termsData warehouse and ssas terms
Data warehouse and ssas termsKaran Gulati
 
Microsoft SSAS: Should I Use Tabular or Multidimensional?
Microsoft SSAS: Should I Use Tabular or Multidimensional?Microsoft SSAS: Should I Use Tabular or Multidimensional?
Microsoft SSAS: Should I Use Tabular or Multidimensional?Senturus
 
Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction
Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction
Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction Mark Ginnebaugh
 
SQL - Parallel Data Warehouse (PDW)
SQL - Parallel Data Warehouse (PDW)SQL - Parallel Data Warehouse (PDW)
SQL - Parallel Data Warehouse (PDW) Karan Gulati
 
Analytic powerhouse parallel data warehouse und r
Analytic powerhouse parallel data warehouse und rAnalytic powerhouse parallel data warehouse und r
Analytic powerhouse parallel data warehouse und rMarcel Franke
 
In Memory-Technologien im Vergleich - SQL Server Konferenz 2015
In Memory-Technologien im Vergleich - SQL Server Konferenz 2015In Memory-Technologien im Vergleich - SQL Server Konferenz 2015
In Memory-Technologien im Vergleich - SQL Server Konferenz 2015Marcel Franke
 
Building an Effective Data Warehouse Architecture
Building an Effective Data Warehouse ArchitectureBuilding an Effective Data Warehouse Architecture
Building an Effective Data Warehouse ArchitectureJames Serra
 

Viewers also liked (8)

A Gentle Introduction to Microsoft SSAS
A Gentle Introduction to Microsoft SSASA Gentle Introduction to Microsoft SSAS
A Gentle Introduction to Microsoft SSAS
 
Data warehouse and ssas terms
Data warehouse and ssas termsData warehouse and ssas terms
Data warehouse and ssas terms
 
Microsoft SSAS: Should I Use Tabular or Multidimensional?
Microsoft SSAS: Should I Use Tabular or Multidimensional?Microsoft SSAS: Should I Use Tabular or Multidimensional?
Microsoft SSAS: Should I Use Tabular or Multidimensional?
 
Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction
Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction
Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction
 
SQL - Parallel Data Warehouse (PDW)
SQL - Parallel Data Warehouse (PDW)SQL - Parallel Data Warehouse (PDW)
SQL - Parallel Data Warehouse (PDW)
 
Analytic powerhouse parallel data warehouse und r
Analytic powerhouse parallel data warehouse und rAnalytic powerhouse parallel data warehouse und r
Analytic powerhouse parallel data warehouse und r
 
In Memory-Technologien im Vergleich - SQL Server Konferenz 2015
In Memory-Technologien im Vergleich - SQL Server Konferenz 2015In Memory-Technologien im Vergleich - SQL Server Konferenz 2015
In Memory-Technologien im Vergleich - SQL Server Konferenz 2015
 
Building an Effective Data Warehouse Architecture
Building an Effective Data Warehouse ArchitectureBuilding an Effective Data Warehouse Architecture
Building an Effective Data Warehouse Architecture
 

Similar to SSAS Reference Architecture

Mapping Data Flows Perf Tuning April 2021
Mapping Data Flows Perf Tuning April 2021Mapping Data Flows Perf Tuning April 2021
Mapping Data Flows Perf Tuning April 2021Mark Kromer
 
Leveraging Functional Tools and AWS for Performance Testing
Leveraging Functional Tools and AWS for Performance TestingLeveraging Functional Tools and AWS for Performance Testing
Leveraging Functional Tools and AWS for Performance TestingThoughtworks
 
"Эффективность и оптимизация кода в Java 8" Сергей Моренец
"Эффективность и оптимизация кода в Java 8" Сергей Моренец"Эффективность и оптимизация кода в Java 8" Сергей Моренец
"Эффективность и оптимизация кода в Java 8" Сергей МоренецFwdays
 
Help, I need to migrate my On Premise Database to Azure, which Database Tier ...
Help, I need to migrate my On Premise Database to Azure, which Database Tier ...Help, I need to migrate my On Premise Database to Azure, which Database Tier ...
Help, I need to migrate my On Premise Database to Azure, which Database Tier ...Erwin de Kreuk
 
Sql saturday azure storage by Anton Vidishchev
Sql saturday azure storage by Anton VidishchevSql saturday azure storage by Anton Vidishchev
Sql saturday azure storage by Anton VidishchevAlex Tumanoff
 
Windows Azure Storage: Overview, Internals, and Best Practices
Windows Azure Storage: Overview, Internals, and Best PracticesWindows Azure Storage: Overview, Internals, and Best Practices
Windows Azure Storage: Overview, Internals, and Best PracticesAnton Vidishchev
 
Cassandra CLuster Management by Japan Cassandra Community
Cassandra CLuster Management by Japan Cassandra CommunityCassandra CLuster Management by Japan Cassandra Community
Cassandra CLuster Management by Japan Cassandra CommunityHiromitsu Komatsu
 
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayDatadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayC4Media
 
Solving Office 365 Big Challenges using Cassandra + Spark
Solving Office 365 Big Challenges using Cassandra + Spark Solving Office 365 Big Challenges using Cassandra + Spark
Solving Office 365 Big Challenges using Cassandra + Spark Anubhav Kale
 
Azure Data Factory Data Flow Performance Tuning 101
Azure Data Factory Data Flow Performance Tuning 101Azure Data Factory Data Flow Performance Tuning 101
Azure Data Factory Data Flow Performance Tuning 101Mark Kromer
 
Speeding Up Atlas Deep Learning Platform with Alluxio + Fluid
Speeding Up Atlas Deep Learning Platform with Alluxio + FluidSpeeding Up Atlas Deep Learning Platform with Alluxio + Fluid
Speeding Up Atlas Deep Learning Platform with Alluxio + FluidAlluxio, Inc.
 
Sql Server 2008 And Moss
Sql Server 2008 And MossSql Server 2008 And Moss
Sql Server 2008 And MossEduardo Castro
 
Forecasting database performance
Forecasting database performanceForecasting database performance
Forecasting database performanceShenglin Du
 
Michigan Information Retrieval Enthusiasts Group Meetup - August 19, 2010
Michigan Information Retrieval Enthusiasts Group Meetup - August 19, 2010Michigan Information Retrieval Enthusiasts Group Meetup - August 19, 2010
Michigan Information Retrieval Enthusiasts Group Meetup - August 19, 2010ivan provalov
 
Windows Azure Acid Test
Windows Azure Acid TestWindows Azure Acid Test
Windows Azure Acid Testexpanz
 
Database Core performance principles
Database Core performance principlesDatabase Core performance principles
Database Core performance principlesKoppelaars
 
Performance Test Plan - Sample 1
Performance Test Plan - Sample 1Performance Test Plan - Sample 1
Performance Test Plan - Sample 1Atul Pant
 
Oracle Result Cache deep dive
Oracle Result Cache deep diveOracle Result Cache deep dive
Oracle Result Cache deep diveAlexander Tokarev
 
Best storage engine for MySQL
Best storage engine for MySQLBest storage engine for MySQL
Best storage engine for MySQLtomflemingh2
 

Similar to SSAS Reference Architecture (20)

Mapping Data Flows Perf Tuning April 2021
Mapping Data Flows Perf Tuning April 2021Mapping Data Flows Perf Tuning April 2021
Mapping Data Flows Perf Tuning April 2021
 
Leveraging Functional Tools and AWS for Performance Testing
Leveraging Functional Tools and AWS for Performance TestingLeveraging Functional Tools and AWS for Performance Testing
Leveraging Functional Tools and AWS for Performance Testing
 
"Эффективность и оптимизация кода в Java 8" Сергей Моренец
"Эффективность и оптимизация кода в Java 8" Сергей Моренец"Эффективность и оптимизация кода в Java 8" Сергей Моренец
"Эффективность и оптимизация кода в Java 8" Сергей Моренец
 
Optimizing Uptime in SOA
Optimizing Uptime in SOAOptimizing Uptime in SOA
Optimizing Uptime in SOA
 
Help, I need to migrate my On Premise Database to Azure, which Database Tier ...
Help, I need to migrate my On Premise Database to Azure, which Database Tier ...Help, I need to migrate my On Premise Database to Azure, which Database Tier ...
Help, I need to migrate my On Premise Database to Azure, which Database Tier ...
 
Sql saturday azure storage by Anton Vidishchev
Sql saturday azure storage by Anton VidishchevSql saturday azure storage by Anton Vidishchev
Sql saturday azure storage by Anton Vidishchev
 
Windows Azure Storage: Overview, Internals, and Best Practices
Windows Azure Storage: Overview, Internals, and Best PracticesWindows Azure Storage: Overview, Internals, and Best Practices
Windows Azure Storage: Overview, Internals, and Best Practices
 
Cassandra CLuster Management by Japan Cassandra Community
Cassandra CLuster Management by Japan Cassandra CommunityCassandra CLuster Management by Japan Cassandra Community
Cassandra CLuster Management by Japan Cassandra Community
 
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayDatadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
 
Solving Office 365 Big Challenges using Cassandra + Spark
Solving Office 365 Big Challenges using Cassandra + Spark Solving Office 365 Big Challenges using Cassandra + Spark
Solving Office 365 Big Challenges using Cassandra + Spark
 
Azure Data Factory Data Flow Performance Tuning 101
Azure Data Factory Data Flow Performance Tuning 101Azure Data Factory Data Flow Performance Tuning 101
Azure Data Factory Data Flow Performance Tuning 101
 
Speeding Up Atlas Deep Learning Platform with Alluxio + Fluid
Speeding Up Atlas Deep Learning Platform with Alluxio + FluidSpeeding Up Atlas Deep Learning Platform with Alluxio + Fluid
Speeding Up Atlas Deep Learning Platform with Alluxio + Fluid
 
Sql Server 2008 And Moss
Sql Server 2008 And MossSql Server 2008 And Moss
Sql Server 2008 And Moss
 
Forecasting database performance
Forecasting database performanceForecasting database performance
Forecasting database performance
 
Michigan Information Retrieval Enthusiasts Group Meetup - August 19, 2010
Michigan Information Retrieval Enthusiasts Group Meetup - August 19, 2010Michigan Information Retrieval Enthusiasts Group Meetup - August 19, 2010
Michigan Information Retrieval Enthusiasts Group Meetup - August 19, 2010
 
Windows Azure Acid Test
Windows Azure Acid TestWindows Azure Acid Test
Windows Azure Acid Test
 
Database Core performance principles
Database Core performance principlesDatabase Core performance principles
Database Core performance principles
 
Performance Test Plan - Sample 1
Performance Test Plan - Sample 1Performance Test Plan - Sample 1
Performance Test Plan - Sample 1
 
Oracle Result Cache deep dive
Oracle Result Cache deep diveOracle Result Cache deep dive
Oracle Result Cache deep dive
 
Best storage engine for MySQL
Best storage engine for MySQLBest storage engine for MySQL
Best storage engine for MySQL
 

Recently uploaded

Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...itnewsafrica
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...Karmanjay Verma
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxAna-Maria Mihalceanu
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 

Recently uploaded (20)

Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance Toolbox
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 

SSAS Reference Architecture

  • 1. SQL Server Analysis Services Reference Architecture
  • 2. Customer Challenges Goal of this whitepaper Hardware configuration Test Execution Results TODAY’S AGENDA
  • 3. TEAM Thomas Kejser CTO EMEA at Fusion- io Alexei Khalyako SQL CAT Program Manager at Microsoft Marcel Franke Practice Lead at pmOne Gerhard Brückl Practice Lead at pmOne SSAS Maestro Hannes Mayer Practice Lead at pmOne SSAS Maestro
  • 4. Build scalable solutions on user demand Choose of an OLAP optimized hardware configuration Align SSAS configuration to hardware settings CUSTOMER CHALLENGES
  • 5. Reduce Risk Reduce Cost Accelerate Performance Prove Scalability GOAL OF THIS WHITEPAPER
  • 7. What makes a good hardware for SQL Server Analysis Services CPU More cores  more parallelism for Storage Engine bound queries High clock rate  faster Formula Engine bound queries I/O SSAS uses random reads  No spinning disks - use Fusion-IO drives instead  Use local disks to avoid unnecessary fiber channel/iSCSI cost Memory More memory  more data can be loaded into memory In ideal case: entire cube could be loaded into memory GENERAL HARDWARE RECOMMENDATIONS
  • 8. Server: HP DL380 Gen8 CPU 2.90 GHz. 8 Cores. 16 Logical Processors Good mix between speed and number of cores Hyper threading to 32 logical cores to the OS I/O Local Fixed Disk (4,38 TB). 4 x Fusion IO Drive 2 Stripe Set (4x1,2TB) Very high IOPs (random reads: 140.000/s) Very high throughput (random reads: 4,3GB/s) Memory 256 GB physical memory OS: Windows Server 2012 Datacenter REFERENCE HARDWARE CONFIGURATION
  • 10. TEST ENVIRONMENT Test Execution Test Suite 10 GB Ethernet
  • 11. 2 SQL Server Analysis Services Databases 100 GB – fits into memory 1.000 GB – does not fit into memory 3 query-patterns 7 Standard queries for common business questions Ratio-to-Total, Rolling-12-month, Year-over-Year growth, … 1 DistinctCount query 1 Many-to-Many query Increasing number of users Incrementally grow number of connected users – 1 every 10 sec Up to 200 concurrent users TEST OVERVIEW
  • 13. “How many queries can be answered within a given time period“ DEFINING CONCURRENCY
  • 14. EXPECTED RESULTS (1) Constant test duration (2) Until saturation point is reached (3) Linear increase of test duration together with concurrent users (1) (3)(2) Avg. query response time
  • 15. More than 100+ concurrent users (connections) supported For standard queries With Average response time <3 seconds Regardless of database size Complex queries impact average response time DistinctCount and Many-to-Many queries may not finish before the next user connects – especially for the 1,000 GB cube Usually: - not every query has the pattern of a complex query - executed rarely compare to the standard queries - can be avoided by appropriate cube design Scalability depends on CPU resources. I/O is not a limiting factor anymore FINAL RESULTS – OVERVIEW
  • 16. Constant query execution time till CPU limit reached with growing numbers of concurrent users FINAL RESULTS – OVERVIEW * Query 20
  • 17. An average of 285 concurrent users with a response time below 3 seconds for standard queries Only 2 concurrent users for more complex queries FINAL RESULTS – DETAILS 100 GB Query-Pattern Query AvgTests/s (@SP) Max Avg Tests/s Median Avg Tests/s Queries / Test Supported Concurrent Users/Queries 3s Response Time 10s Response Time Standard Query2 360.0 513.2 429.8 1 1.080 3,600 Standard Query3 4.5 9.4 4.0 1 14 45 Standard Query20 22.5 41.0 22.0 1 68 225 Standard Query21 14.0 17.2 13.0 1 42 140 Standard Query22 1.5 4.2 1.0 1 5 15 Standard Query52 250.0 505.6 323.4 1 750 2,500 Standard Query77 13.0 88.0 14.8 1 39 130 DistinctCount Query100 0.6 2.8 0.6 1 2 6 Many-to-Many Query101 6.8 112.0 76.2 1 20 68 AllQueries AllQueries 0.8 260.4 0.2 9 2 8 (@SP) = @saturation point
  • 18. An average of 210 concurrent users with a response time below 3 seconds for standard queries more complex queries run longer than our required response time which means we cannot even satisfy 1 concurrent user FINAL RESULTS – DETAILS 1000 GB Query-Pattern Query AvgTests/s (@SP) Max Avg Tests/s Median Avg Tests/s Queries / Test Supported Concurrent Users/Queries 3s Response Time 10s Response Time Standard Query2 250,0 409,8 373,2 1 750 2.500 Standard Query3 0,4 3,4 - 1 1 4 Standard Query20 10,0 16,6 10,5 1 30 100 Standard Query21 6,6 11,4 6,6 1 20 66 Standard Query22 1,0 4,4 0,8 1 3 10 Standard Query52 220,0 388,6 304,2 1 660 2.200 Standard Query77 0,1 5,4 0,2 1 0 1 DistinctCount Query100 - 0,2 - 1 - - Many-to-Many Query101 - 0,6 - 1 - - AllQueries AllQueries - 2,6 - 9 - - (@SP) = @saturation point
  • 19. Shown great linear, CPU bound scale for fast queries Concurrency is related to the number of queries not to the number of users No user would run more than one query per second Caching helps to avoid expensive IO operations NUMBER OF USERS VS. QUERY RESPONSE TIME
  • 20. Bigger cube  more IO slower query response times Bigger cube  not everything can be loaded into memory Constant IO going on  slower query response times 2 possible solutions to handle more data Better IO system More memory (More CPU to handle additional threads) QUERY RESPONSE TIME VS. DATA VOLUME
  • 22. This sample configuration can be used as reference architecture for building high scalable OLAP solutions. With given configuration we satisfied the SLAs for the cube up to 1TB in size and 200+ concurrent queries. Capacity calculation The average query per core ratio is 6,5. If more than 200 concurrent queries are expected then this ratio can be used to calculated necessary number of cores. Sample: 400 concurrent queries = 400/6,5 = 64 cores CONCLUSION

Editor's Notes

  1. Accelerate Data Warehouse projects with scalable reference architecture for SQL Server Analysis ServicesReduce costs, save time and reduce risk with reliable reference architectures and best practices Suitable for typical workloads (OLAP-DB size, query pattern, number of users)Reference Architecture consists of:Best Practices for SQL Server Analysis Services settingsHardware recommendations for typical workloadsAligned configurations of software, hardware and OSShow Scalability of SSAS and reference architectureProvide test cases &amp; results