SlideShare ist ein Scribd-Unternehmen logo
1 von 20
The SQL Stack -Design and Configuration for High Availability Presented by: Stephan Lawson Level 100
Bio SQL DBA at Nedbank Ltd. Managing large scale OLTP and OLAP environments. Performance Tuning & Optimization. Troubleshooting SQL Server, SSRS and SSIS. Follow me on Twitter @SQLArcher Blogger at lessthandot.com SQLArcher
Overview The Environment OLTP and OLAP Considering Configurations Stand alone servers Clusters SQL Server Reporting Services Analysis Services Summary Q&A
! The Environment
OLTP and OLAP Don’t access your OLTP directly!!! Spec your OLTP correctly, RAM, CPU and Disk. CPU intensive Short sub-second queries Fast disk throughput Benchmark You NEED to know when your environment is taking a hit when it shouldn’t.
OLTP and OLAP (continued) OLAP is where the magic of BI takes place. Spec your servers to cater for the incoming load. Memory intensive. Long queries. Huge disk consumption Get your OLTP data here. Replication Transactional replication for mission critical systems. Snapshot replication for important, but not critical data. HADRON New in SQL 11 codenamed Denali Uses mirroring with a readable secondary database.
! Configurations
Stand Alone Servers When the budget hits…
Stand Alone Servers All the SQL components are resource intensive in different ways. SQL Server CPU (OLTP) and RAM (OLAP). Fast and redundant disk, either RAID 5 or 10 Analysis Services SSAS prefers the cubes in RAM. Fusion-IO for paging.
Stand Alone Servers (continued) Reporting Services Use stored procedures to offload some of the CPU and RAM overhead to SQL Server. Reserve CPU and RAM for SSRS ( 2008 uses IIS internally).
Stand Alone Servers (continued) Additional settings for performance. Separate service accounts. Lock pages in memory. Service specific settings. SQL Server CPU Affinity. Min/Max Memory. Resource governor. Analysis Services Min/Max Memory. Enable shared memory. Max CPU Usage. Performance test all cubes in Visual Studio.
Stand Alone Servers (continued) Reporting Services Use stored procedures for reports. Lock pages in memory for service account. Reserve CPU and Memory for SSRS.
Stand Alone Servers Diagram
Clusters When a company thinks this solves everything…
Clusters Clusters are for High Availabilitynot a sudden onset of performance. Clusters as “SQL Solutions” would be: SQL on node 1. BI separate either sharing node 2, or a dedicated node. Without passive nodes, the cluster looses “High” availability. SSRS is not cluster aware. Load balancing is required to scale out SSRS effectively. MS KB970759 for a workaround.
Clusters Diagram
! Summary
Closing notes SQL Server and Analysis Services both allow for settings to configure and in some cases optimize for performance when running on the same hardware. Stand alone servers can be used, when configured correctly without major performance impacts. Clusters are not the answer for any performance issues, they require diligent configurations for their purpose. Also, keep in mind when loading SSAS,SSRS and SSIS on separate servers other than SQL Server requires additional licensing!!!
! Q & A
Thanks Enjoy the rest of SQL Saturday and the sessions. Please complete the speaker evaluation forms. Go performance tune your systems.

Weitere ähnliche Inhalte

Was ist angesagt?

SQL Server Clustering and High Availability
SQL Server Clustering and High AvailabilitySQL Server Clustering and High Availability
SQL Server Clustering and High Availability► Supreme Mandal ◄
 
Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...
Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...
Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...SpanishPASSVC
 
Right-Sizing your SQL Server Virtual Machine
Right-Sizing your SQL Server Virtual MachineRight-Sizing your SQL Server Virtual Machine
Right-Sizing your SQL Server Virtual Machineheraflux
 
SQL Server High Availability Solutions (Pros & Cons)
SQL Server High Availability Solutions (Pros & Cons)SQL Server High Availability Solutions (Pros & Cons)
SQL Server High Availability Solutions (Pros & Cons)Hamid J. Fard
 
SQL Server 2016 AlwaysOn Availability Groups New Features
SQL Server 2016 AlwaysOn Availability Groups New FeaturesSQL Server 2016 AlwaysOn Availability Groups New Features
SQL Server 2016 AlwaysOn Availability Groups New FeaturesJohn Martin
 
Sql server 2012 - always on deep dive - bob duffy
Sql server 2012 - always on deep dive - bob duffySql server 2012 - always on deep dive - bob duffy
Sql server 2012 - always on deep dive - bob duffyAnuradha
 
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersSQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersTobias Koprowski
 
SQL Server Clustering for Dummies
SQL Server Clustering for DummiesSQL Server Clustering for Dummies
SQL Server Clustering for DummiesMark Broadbent
 
VMworld Europe 2014: Virtual SAN Best Practices and Use Cases
VMworld Europe 2014: Virtual SAN Best Practices and Use CasesVMworld Europe 2014: Virtual SAN Best Practices and Use Cases
VMworld Europe 2014: Virtual SAN Best Practices and Use CasesVMworld
 
Sql server 2012 ha dr 24_hop_final
Sql server 2012 ha dr 24_hop_finalSql server 2012 ha dr 24_hop_final
Sql server 2012 ha dr 24_hop_finalJoseph D'Antoni
 
Vsphere esxi-vcenter-server-55-troubleshooting-guide
Vsphere esxi-vcenter-server-55-troubleshooting-guideVsphere esxi-vcenter-server-55-troubleshooting-guide
Vsphere esxi-vcenter-server-55-troubleshooting-guideSree Harsha Boyapati
 
Blue Medora Oracle Enterprise Manager (EM12c) Plug-in for PostgreSQL
Blue Medora Oracle Enterprise Manager (EM12c) Plug-in for PostgreSQLBlue Medora Oracle Enterprise Manager (EM12c) Plug-in for PostgreSQL
Blue Medora Oracle Enterprise Manager (EM12c) Plug-in for PostgreSQLBlue Medora
 
KoprowskiT_it_camp2013 - 2amADisasterJustBegan
KoprowskiT_it_camp2013 - 2amADisasterJustBeganKoprowskiT_it_camp2013 - 2amADisasterJustBegan
KoprowskiT_it_camp2013 - 2amADisasterJustBeganTobias Koprowski
 
Compare Clustering Methods for MS SQL Server
Compare Clustering Methods for MS SQL ServerCompare Clustering Methods for MS SQL Server
Compare Clustering Methods for MS SQL ServerAlexDepo
 
KoprowskiT_SPBizConference_2AMaDisasterJustBegan
KoprowskiT_SPBizConference_2AMaDisasterJustBeganKoprowskiT_SPBizConference_2AMaDisasterJustBegan
KoprowskiT_SPBizConference_2AMaDisasterJustBeganTobias Koprowski
 
Sql server’s high availability technologies
Sql server’s high availability technologiesSql server’s high availability technologies
Sql server’s high availability technologiesvenkatchs
 
SQL 2014 AlwaysOn Availability Groups for SharePoint Farms - SPS Sydney 2014
SQL 2014 AlwaysOn Availability Groups for SharePoint Farms - SPS Sydney 2014SQL 2014 AlwaysOn Availability Groups for SharePoint Farms - SPS Sydney 2014
SQL 2014 AlwaysOn Availability Groups for SharePoint Farms - SPS Sydney 2014Michael Noel
 
Master VMware Performance and Capacity Management
Master VMware Performance and Capacity ManagementMaster VMware Performance and Capacity Management
Master VMware Performance and Capacity ManagementIwan Rahabok
 

Was ist angesagt? (20)

SQL Server Clustering and High Availability
SQL Server Clustering and High AvailabilitySQL Server Clustering and High Availability
SQL Server Clustering and High Availability
 
Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...
Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...
Configurando Aplicaciones para Réplicas de Lectura de SQL-Server AlwaysOn - C...
 
Right-Sizing your SQL Server Virtual Machine
Right-Sizing your SQL Server Virtual MachineRight-Sizing your SQL Server Virtual Machine
Right-Sizing your SQL Server Virtual Machine
 
SQL Server High Availability Solutions (Pros & Cons)
SQL Server High Availability Solutions (Pros & Cons)SQL Server High Availability Solutions (Pros & Cons)
SQL Server High Availability Solutions (Pros & Cons)
 
SQL Server 2016 AlwaysOn Availability Groups New Features
SQL Server 2016 AlwaysOn Availability Groups New FeaturesSQL Server 2016 AlwaysOn Availability Groups New Features
SQL Server 2016 AlwaysOn Availability Groups New Features
 
Sql server 2012 - always on deep dive - bob duffy
Sql server 2012 - always on deep dive - bob duffySql server 2012 - always on deep dive - bob duffy
Sql server 2012 - always on deep dive - bob duffy
 
Sql server 2012 ha dr
Sql server 2012 ha drSql server 2012 ha dr
Sql server 2012 ha dr
 
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersSQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
 
SQL Server Clustering Part1
SQL Server Clustering Part1SQL Server Clustering Part1
SQL Server Clustering Part1
 
SQL Server Clustering for Dummies
SQL Server Clustering for DummiesSQL Server Clustering for Dummies
SQL Server Clustering for Dummies
 
VMworld Europe 2014: Virtual SAN Best Practices and Use Cases
VMworld Europe 2014: Virtual SAN Best Practices and Use CasesVMworld Europe 2014: Virtual SAN Best Practices and Use Cases
VMworld Europe 2014: Virtual SAN Best Practices and Use Cases
 
Sql server 2012 ha dr 24_hop_final
Sql server 2012 ha dr 24_hop_finalSql server 2012 ha dr 24_hop_final
Sql server 2012 ha dr 24_hop_final
 
Vsphere esxi-vcenter-server-55-troubleshooting-guide
Vsphere esxi-vcenter-server-55-troubleshooting-guideVsphere esxi-vcenter-server-55-troubleshooting-guide
Vsphere esxi-vcenter-server-55-troubleshooting-guide
 
Blue Medora Oracle Enterprise Manager (EM12c) Plug-in for PostgreSQL
Blue Medora Oracle Enterprise Manager (EM12c) Plug-in for PostgreSQLBlue Medora Oracle Enterprise Manager (EM12c) Plug-in for PostgreSQL
Blue Medora Oracle Enterprise Manager (EM12c) Plug-in for PostgreSQL
 
KoprowskiT_it_camp2013 - 2amADisasterJustBegan
KoprowskiT_it_camp2013 - 2amADisasterJustBeganKoprowskiT_it_camp2013 - 2amADisasterJustBegan
KoprowskiT_it_camp2013 - 2amADisasterJustBegan
 
Compare Clustering Methods for MS SQL Server
Compare Clustering Methods for MS SQL ServerCompare Clustering Methods for MS SQL Server
Compare Clustering Methods for MS SQL Server
 
KoprowskiT_SPBizConference_2AMaDisasterJustBegan
KoprowskiT_SPBizConference_2AMaDisasterJustBeganKoprowskiT_SPBizConference_2AMaDisasterJustBegan
KoprowskiT_SPBizConference_2AMaDisasterJustBegan
 
Sql server’s high availability technologies
Sql server’s high availability technologiesSql server’s high availability technologies
Sql server’s high availability technologies
 
SQL 2014 AlwaysOn Availability Groups for SharePoint Farms - SPS Sydney 2014
SQL 2014 AlwaysOn Availability Groups for SharePoint Farms - SPS Sydney 2014SQL 2014 AlwaysOn Availability Groups for SharePoint Farms - SPS Sydney 2014
SQL 2014 AlwaysOn Availability Groups for SharePoint Farms - SPS Sydney 2014
 
Master VMware Performance and Capacity Management
Master VMware Performance and Capacity ManagementMaster VMware Performance and Capacity Management
Master VMware Performance and Capacity Management
 

Ähnlich wie The SQL Stack Design And Configurations

Troubleshooting SQL Server
Troubleshooting SQL ServerTroubleshooting SQL Server
Troubleshooting SQL ServerStephen Rose
 
SPSMadrid Get sql spinning with SharePoint. Best practice for the back end
SPSMadrid Get sql spinning with SharePoint. Best practice for the back endSPSMadrid Get sql spinning with SharePoint. Best practice for the back end
SPSMadrid Get sql spinning with SharePoint. Best practice for the back endKnut Relbe-Moe [MVP, MCT]
 
Percona Live 2014 - Scaling MySQL in AWS
Percona Live 2014 - Scaling MySQL in AWSPercona Live 2014 - Scaling MySQL in AWS
Percona Live 2014 - Scaling MySQL in AWSPythian
 
Andrewfraserdba.com training sql_training
Andrewfraserdba.com training sql_trainingAndrewfraserdba.com training sql_training
Andrewfraserdba.com training sql_trainingmark jerald Canal
 
Sql training
Sql trainingSql training
Sql trainingpremrings
 
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...Knut Relbe-Moe [MVP, MCT]
 
Configuring sql server - SQL Saturday, Athens Oct 2014
Configuring sql server - SQL Saturday, Athens Oct 2014Configuring sql server - SQL Saturday, Athens Oct 2014
Configuring sql server - SQL Saturday, Athens Oct 2014Antonios Chatzipavlis
 
Mysql User Camp : 20th June - Mysql New Features
Mysql User Camp : 20th June - Mysql New FeaturesMysql User Camp : 20th June - Mysql New Features
Mysql User Camp : 20th June - Mysql New FeaturesTarique Saleem
 
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
 Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL SupportMysql User Camp
 
Oracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningOracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningScott Jenner
 
SQL Server Reporting Services Disaster Recovery webinar
SQL Server Reporting Services Disaster Recovery webinarSQL Server Reporting Services Disaster Recovery webinar
SQL Server Reporting Services Disaster Recovery webinarDenny Lee
 
Sql server troubleshooting
Sql server troubleshootingSql server troubleshooting
Sql server troubleshootingNathan Winters
 
SQL Server Reporting Services Disaster Recovery Webinar
SQL Server Reporting Services Disaster Recovery WebinarSQL Server Reporting Services Disaster Recovery Webinar
SQL Server Reporting Services Disaster Recovery WebinarDenny Lee
 
RDS for MySQL, No BS Operations and Patterns
RDS for MySQL, No BS Operations and PatternsRDS for MySQL, No BS Operations and Patterns
RDS for MySQL, No BS Operations and PatternsLaine Campbell
 
Sql server 2016 Discovery Day
Sql server 2016 Discovery DaySql server 2016 Discovery Day
Sql server 2016 Discovery DayThomas Sykes
 
Sql Health in a SharePoint environment
Sql Health in a SharePoint environmentSql Health in a SharePoint environment
Sql Health in a SharePoint environmentEnrique Lima
 
Large Scale SQL Considerations for SharePoint Deployments
Large Scale SQL Considerations for SharePoint DeploymentsLarge Scale SQL Considerations for SharePoint Deployments
Large Scale SQL Considerations for SharePoint DeploymentsJoel Oleson
 
SQL 2014 In-Memory OLTP
SQL 2014 In-Memory  OLTPSQL 2014 In-Memory  OLTP
SQL 2014 In-Memory OLTPAmber Keyse
 
Running 400-node Cassandra + Spark Clusters in Azure (Anubhav Kale, Microsoft...
Running 400-node Cassandra + Spark Clusters in Azure (Anubhav Kale, Microsoft...Running 400-node Cassandra + Spark Clusters in Azure (Anubhav Kale, Microsoft...
Running 400-node Cassandra + Spark Clusters in Azure (Anubhav Kale, Microsoft...DataStax
 

Ähnlich wie The SQL Stack Design And Configurations (20)

Troubleshooting SQL Server
Troubleshooting SQL ServerTroubleshooting SQL Server
Troubleshooting SQL Server
 
SPSMadrid Get sql spinning with SharePoint. Best practice for the back end
SPSMadrid Get sql spinning with SharePoint. Best practice for the back endSPSMadrid Get sql spinning with SharePoint. Best practice for the back end
SPSMadrid Get sql spinning with SharePoint. Best practice for the back end
 
Percona Live 2014 - Scaling MySQL in AWS
Percona Live 2014 - Scaling MySQL in AWSPercona Live 2014 - Scaling MySQL in AWS
Percona Live 2014 - Scaling MySQL in AWS
 
Andrewfraserdba.com training sql_training
Andrewfraserdba.com training sql_trainingAndrewfraserdba.com training sql_training
Andrewfraserdba.com training sql_training
 
Sql training
Sql trainingSql training
Sql training
 
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
 
Sql Sever Presentation.pptx
Sql Sever Presentation.pptxSql Sever Presentation.pptx
Sql Sever Presentation.pptx
 
Configuring sql server - SQL Saturday, Athens Oct 2014
Configuring sql server - SQL Saturday, Athens Oct 2014Configuring sql server - SQL Saturday, Athens Oct 2014
Configuring sql server - SQL Saturday, Athens Oct 2014
 
Mysql User Camp : 20th June - Mysql New Features
Mysql User Camp : 20th June - Mysql New FeaturesMysql User Camp : 20th June - Mysql New Features
Mysql User Camp : 20th June - Mysql New Features
 
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
 Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
 
Oracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningOracle R12 EBS Performance Tuning
Oracle R12 EBS Performance Tuning
 
SQL Server Reporting Services Disaster Recovery webinar
SQL Server Reporting Services Disaster Recovery webinarSQL Server Reporting Services Disaster Recovery webinar
SQL Server Reporting Services Disaster Recovery webinar
 
Sql server troubleshooting
Sql server troubleshootingSql server troubleshooting
Sql server troubleshooting
 
SQL Server Reporting Services Disaster Recovery Webinar
SQL Server Reporting Services Disaster Recovery WebinarSQL Server Reporting Services Disaster Recovery Webinar
SQL Server Reporting Services Disaster Recovery Webinar
 
RDS for MySQL, No BS Operations and Patterns
RDS for MySQL, No BS Operations and PatternsRDS for MySQL, No BS Operations and Patterns
RDS for MySQL, No BS Operations and Patterns
 
Sql server 2016 Discovery Day
Sql server 2016 Discovery DaySql server 2016 Discovery Day
Sql server 2016 Discovery Day
 
Sql Health in a SharePoint environment
Sql Health in a SharePoint environmentSql Health in a SharePoint environment
Sql Health in a SharePoint environment
 
Large Scale SQL Considerations for SharePoint Deployments
Large Scale SQL Considerations for SharePoint DeploymentsLarge Scale SQL Considerations for SharePoint Deployments
Large Scale SQL Considerations for SharePoint Deployments
 
SQL 2014 In-Memory OLTP
SQL 2014 In-Memory  OLTPSQL 2014 In-Memory  OLTP
SQL 2014 In-Memory OLTP
 
Running 400-node Cassandra + Spark Clusters in Azure (Anubhav Kale, Microsoft...
Running 400-node Cassandra + Spark Clusters in Azure (Anubhav Kale, Microsoft...Running 400-node Cassandra + Spark Clusters in Azure (Anubhav Kale, Microsoft...
Running 400-node Cassandra + Spark Clusters in Azure (Anubhav Kale, Microsoft...
 

The SQL Stack Design And Configurations

  • 1. The SQL Stack -Design and Configuration for High Availability Presented by: Stephan Lawson Level 100
  • 2. Bio SQL DBA at Nedbank Ltd. Managing large scale OLTP and OLAP environments. Performance Tuning & Optimization. Troubleshooting SQL Server, SSRS and SSIS. Follow me on Twitter @SQLArcher Blogger at lessthandot.com SQLArcher
  • 3. Overview The Environment OLTP and OLAP Considering Configurations Stand alone servers Clusters SQL Server Reporting Services Analysis Services Summary Q&A
  • 5. OLTP and OLAP Don’t access your OLTP directly!!! Spec your OLTP correctly, RAM, CPU and Disk. CPU intensive Short sub-second queries Fast disk throughput Benchmark You NEED to know when your environment is taking a hit when it shouldn’t.
  • 6. OLTP and OLAP (continued) OLAP is where the magic of BI takes place. Spec your servers to cater for the incoming load. Memory intensive. Long queries. Huge disk consumption Get your OLTP data here. Replication Transactional replication for mission critical systems. Snapshot replication for important, but not critical data. HADRON New in SQL 11 codenamed Denali Uses mirroring with a readable secondary database.
  • 8. Stand Alone Servers When the budget hits…
  • 9. Stand Alone Servers All the SQL components are resource intensive in different ways. SQL Server CPU (OLTP) and RAM (OLAP). Fast and redundant disk, either RAID 5 or 10 Analysis Services SSAS prefers the cubes in RAM. Fusion-IO for paging.
  • 10. Stand Alone Servers (continued) Reporting Services Use stored procedures to offload some of the CPU and RAM overhead to SQL Server. Reserve CPU and RAM for SSRS ( 2008 uses IIS internally).
  • 11. Stand Alone Servers (continued) Additional settings for performance. Separate service accounts. Lock pages in memory. Service specific settings. SQL Server CPU Affinity. Min/Max Memory. Resource governor. Analysis Services Min/Max Memory. Enable shared memory. Max CPU Usage. Performance test all cubes in Visual Studio.
  • 12. Stand Alone Servers (continued) Reporting Services Use stored procedures for reports. Lock pages in memory for service account. Reserve CPU and Memory for SSRS.
  • 14. Clusters When a company thinks this solves everything…
  • 15. Clusters Clusters are for High Availabilitynot a sudden onset of performance. Clusters as “SQL Solutions” would be: SQL on node 1. BI separate either sharing node 2, or a dedicated node. Without passive nodes, the cluster looses “High” availability. SSRS is not cluster aware. Load balancing is required to scale out SSRS effectively. MS KB970759 for a workaround.
  • 18. Closing notes SQL Server and Analysis Services both allow for settings to configure and in some cases optimize for performance when running on the same hardware. Stand alone servers can be used, when configured correctly without major performance impacts. Clusters are not the answer for any performance issues, they require diligent configurations for their purpose. Also, keep in mind when loading SSAS,SSRS and SSIS on separate servers other than SQL Server requires additional licensing!!!
  • 19. ! Q & A
  • 20. Thanks Enjoy the rest of SQL Saturday and the sessions. Please complete the speaker evaluation forms. Go performance tune your systems.

Hinweis der Redaktion

  1. OLTP:OLTP environments have thousands of incoming transactions.Small insert/update/delete queries.MAXDOP settings should be lowered, otherwise CPU contention can take place.
  2. OLAP:Requires large amount of memory for complex data mining or cubes.Complex queries are used for extracting the data, either in T-SQL or MDX/DMX.Reports can contain hundreds of queries, depending on complexity.Use replication to get the data from your OLTP to your OLAP environment.SQL 11 “denali” introduces HADRON, which relies on SQL mirroring. However the standby database in this case is read-only, instead of in standby.
  3. The SQL Engine requires resources depending how it is setup. In OLTP where short queries should be used, CPU’s will take preference due to the size of the query plans will be a lot smaller, and not need huge amounts of RAM. In a OLAP situation where multiple long running, and analytical queries will be executing the opposite is true. However, an OLAP environment will also hugely benefit from having multicore CPU’s ( this will also affect the MAXDOP of the server).The fastest disk you can afford, should be used to ensure that no IO bottlenecks occur, this holds true for both SQL and SSAS.If memory is a problem, or if the server has run out of DIMM slots; Fusion-IO drives should be put in place for paging where SSAS is concerned. It does not mitigate the IO bottleneck and speed sacrifices, but is however faster than any other local disk or SAN configuration.
  4. Reporting Services is only an engine. To mitigate some of the performance issues, stored procedures can be used to offload the memory workload to SQL Server. You should optimally configure the server in preference to SQL Server as it will always consume more resources than SSRS.For SSRS 2008 and later, the engine makes use of an internal IIS component for Web Services. Where possible, it should instead be considered to host the engine on a web farm instead.This has a licensing impact however. When the SSRS, SSAS or SSIS engine components are installed on a server other than the main SQL Server, additional licensing fees are applicable.
  5. Use separate service accounts for each service, to allow that the memory for those services are locked and cannot be paged out. This has a prerequisite of having enough memory allocated to the server for the desired workload.To alleviate additional performance issues, extra settings can be applied.Force SQL to only use a set amount of CPU’s.Configure min/max memory to ensure that it does not consume memory where it wants and to give control to the DBA.Resource governor can also be used, to mitigate performance risks between databases when some are more critical than others.For SSAS and SSRS, when residing on the same physical infrastructure, make use of the shared memory protocols. This will eliminate TCP round trips and unneeded waits on the requests.SSAS cubes can also be performance tested in Visual Studio to give you an indication of the time it will take to compile the cubes.
  6. Stored procedures should be used, as it will move all the query plans into the buffer cache for SQL, this is more robust than open or ad hoc queries. This also allows the DBA or support to test all procedures to ensure the code is optimized( you are running on a shared environment are you not).Lock pages will ensure that when memory is used by SSRS, that it will not page out and affect the response time of SSRS.To reserve memory for SSRS, ensure that all the required settings are set for SQL and SSAS, as there are none available for SSRS to specifically set it’s paramaters.
  7. SQL should be hosted on it’s own node to ensure that the resources are not consumed by the BI components.SSAS and SSRS can share on the same node IF he incoming load is not too big, and the servers are spec’d to handle it.When running SQL,SSAS and SSRS on the same cluster, if there is no passive node in the cluster to accommodate a failover; then the cluster “looses” it’s high availability as the combined resource consumption of SQL,SSAS and SSRS might be overwhelming to remaining node.SSRS is not cluster aware, but KB970759 gives an example to allow it to fail over in a clustered situation.