SlideShare a Scribd company logo
Hardware Planning & Sizing for
SQL Server
Davide Mauri
dmauri@solidq.com
Sponsor & Media Partners
Davide Mauri
 18 Years of experience on the SQL Server
Platform
 Specialized in Data Solution Architecture,
Database Design, Performance Tuning, Business
Intelligence

 Projects, Consulting, Mentoring & Training





Regular Speaker @ SQL Server events
Microsoft SQL Server MVP
President of UGISS (Italian SQL Server UG)
Mentor @ SolidQ
Requirements
What’s the typical RDBMS requirement?

Performance!
Expectations
So you would expect an OLTP server to be like
a…

F1 Car!
Expectations
Or, if you’re into Business Intelligence, you
would expect a great

(Fast)
Truck!
Reality
Let’s do a reality check. Typical servers are…

…Something Else…
Why this happens?
Huge misunderstanding on hardware
features…
«System is slow, we need an upgrade to improve
performance»
«Here’s 2 TB of more space»
«WTF!?!?!?»
Balanced Systems
The only way to go is to have balanced
systems
Balanced:
pay and use everything
no single bottleneck
nothing more than what you can consume
Just wasting money
Unbalanced system is just a money black hole
Wasted money on
Licenses
Hardware
HW/Storage Consultants
DBA
SYS Admins
Developers
Performance Pillars

Database
Design
• Logical
• Physical

Server

Index

Query

Hardware

• Configuration
• Maintenance

• Definition
• Maintenance
• Evolution

• Good T-SQL
• Tuning

• No
bottlenecks
The (simplified) I/O full stack
SQL Server
Windows
CPU
Memory
I/O Controller

Disk
Array
Performance
Is that a good system?
40 Cores (80 with HT)
128 GB RAM
SAN with 2 TB of disk space

?
Answer
My feeling?
Not really.

Some important data is missing.
How many disks?
How the SAN is connected to the server?
How to evaluate & balance a server
No easy way…but! How do you evaluate a car?
Put it on a standard test track
Measure peak performance
Measure peak resource consumption
Declare results
Compare results
How to evaluate & balance a server
Of course you’ll never get the declared values
in real-life usage
Still they are a good way to
Understand if that car is good for your
Compare it against other cars
Use published data
Let’s do some math with published or wellknown values
TPC Benchmarks

Let’s start to evaluate a Data Warehouse since
is much more simpler than a OLTP system
CPU
A minimum of 300MB/s of Maximum
Consumption Rate per core
For today’s CPUs

A four core processor is able to consume
1.2GB/sec of raw data
Is your system able to give that
throughput?
Memory
Memory usually has a very high bandwidth
A DDR3 Memory Pair can provide
10GB/Sec

No problems here 
PCI-X o PCIe BUS
PCI-X v1
X4 slot: 750 MB/sec
PCI-X v2
X4 slot: 1.5 – 1.8GB/sec
PCI-X o PCIe BUS
PCIe (per lane)
v1.x: 250 MB/s
v2.x: 500 MB/s
v3.0: 985 MB/s
v4.0: 1969 MB/s
PCIe v2.0 x16
8 GB/sec
Storage: Spindles
A «classic» HDD (a «spindle») the following
numbers:
Sequential IO
90MB/sec to 125MB/sec for a single drive
Random IO usually much lower
SQL Server tries to convert rnd to seq
Storage: Interconnection
How are your drives connected to the server?
DAS: Direct Attached Storage

SAN: Storage Area Network
Storage: DAS
Standards: (SCSI), SAS, SATA
Typically Integrated controller on the server

PCI Direct Access
Host-Bus Adapter (HBA) may or may be used
Storage: SAN
Host-Bus Adapter (HBA)
FC Switch

Cache
Storage Processor
Storage: SAN – The Numbers
4Gbit FC = 400MB/sec
8Gbit FC = 800MB/Sec
PCI-x4 or faster needed!
(Anyway PCIe is becoming the standard)
Building the server
 4 x 8-Core CPU
 4 * 8 * 300 MB/Sec = 9600 Mb/Sec = ~10Gb/Sec

 12 x 8Gbit FC HBA
 12 * 800 MB/Sec = 9600Mb/Sec = ~10Gb/Sec

 64 x 15K RPM Discs
 64 * 150MB/Sec = 9600 Mb/Sec = ~10Gb/Sec
Building the server
 SAN & PCIe Slots
 # Vary depending on model
 Eg: SAN supports 16Gbit:
 6 SAN
 12 PCIe 8x

 RAM
 As much as you can 
Database File Placing
LUN 1

DataFile1.ndf

LUN 2

DataFile2.ndf

LUN 3

DataFile3.ndf

LUN 4

DataFile4.ndf

LUN «n»

DataFileN.ndf

SAN 1

FILEGROUP
SAN 2

SAN «n»
Was it all worth it?
Performance Baselining: Storage
SQLIO
Free tool to measure IO from Microsoft
IOMeter
Free, open source, tool
Performance Baselining: System
Use TPC Databases and tools to measure
performance and compare different systems
www.tpc.org
OLTP
TPC-C & TPC-E
DW/BI/DSS
TPC-H & TPC-DS
Is that all?
 It’s ALL about hardware!
 Just keep in mind that it’s only a part of the
game
 Remember to measure latency (continuously!)
 Use SQL Server DMVS to monitor Wait Stats
 Use H/W monitoring tools
OLTP Workload Type Notes
Mainly random read / writes

Depending how much “pure” OLTP is
Read-Head are sequential

Optimize for Random I/O
Spindle count
IOPS & Latency is the key measure
DW Workload Type Notes
64-512KB reads

table and range scan
128-256KB writes
bulk load
Optimize for high aggregate throughput I/O
MB/Sec is the value to monitor
SSAS Workload Type Notes
Up to 64KB random reads, (Avg. 32KB)
Highly random and often fragmented data
Optimize for Random, 32KB blocks
IOPS & Latency is the key measure
Fast Track Data Warehouse
Reference architecture
Guide to create a balanced system optimized
for DW workload
Large Scans of Data
IBM, HP & DELL provides hardware
Parallel Data Warehouse
 Massively Parallel Processing (MPP)
Architecture
 Basically several Fast Track all together 
 Query is split and executed across all nodes
Parallel Data Warehouse
OLTP Appliance
 Unfortunately missing in action…
 Generalization much more complex than
DWH
 HP, IBM & DELL have specific whitepapers
OLTP Appliance
 Microsoft® SQL Server® 2012 OLTP
Workload Benefits Using IBM® XIV® Storage
System Gen3 SSD Cache

 Achieving a High Performance OLTP
Database using SQL Server® and Dell™
PowerEdge™ R720 with Internal PCIe SSD
Storage
OLTP Appliance
 HP Reference Architecture for High
Performance SQL Server
THANKS!

More Related Content

What's hot (20)

PDF
Getting Started Monitoring with Prometheus and Grafana
Syah Dwi Prihatmoko
 
PDF
Systems Monitoring with Prometheus (Devops Ireland April 2015)
Brian Brazil
 
PPTX
vRealize Operation 7.5 What's new
Kiss Tibor
 
PPTX
ProxySQL & PXC(Query routing and Failover Test)
YoungHeon (Roy) Kim
 
PDF
Realtime Analytics on AWS
Sungmin Kim
 
PDF
Designing ETL Pipelines with Structured Streaming and Delta Lake—How to Archi...
Databricks
 
PPT
Performance Tuning And Optimization Microsoft SQL Database
Tung Nguyen Thanh
 
PDF
How Netflix Uses Druid in Real-time to Ensure a High Quality Streaming Experi...
Imply
 
PPTX
Building a modern data warehouse
James Serra
 
PDF
Server monitoring using grafana and prometheus
Celine George
 
PPTX
Big Data at Pinterest - Presented by Qubole
Qubole
 
PDF
OpenStack을 중심으로 한 오픈 소스 & 상용 하이브리드 클라우드
Ian Choi
 
PDF
Apache Hadoop In Theory And Practice
Adam Kawa
 
PDF
All about InfluxDB.
mitesh_sharma
 
PPT
Daos
Ulrich Krause
 
PDF
Hive Data Modeling and Query Optimization
Eyad Garelnabi
 
PDF
Apache Kafka from 0.7 to 1.0, History and Lesson Learned
Guozhang Wang
 
PPTX
Nagios XI Best Practices
Nagios
 
PPTX
Kafka at Peak Performance
Todd Palino
 
PDF
Why you should care about data layout in the file system with Cheng Lian and ...
Databricks
 
Getting Started Monitoring with Prometheus and Grafana
Syah Dwi Prihatmoko
 
Systems Monitoring with Prometheus (Devops Ireland April 2015)
Brian Brazil
 
vRealize Operation 7.5 What's new
Kiss Tibor
 
ProxySQL & PXC(Query routing and Failover Test)
YoungHeon (Roy) Kim
 
Realtime Analytics on AWS
Sungmin Kim
 
Designing ETL Pipelines with Structured Streaming and Delta Lake—How to Archi...
Databricks
 
Performance Tuning And Optimization Microsoft SQL Database
Tung Nguyen Thanh
 
How Netflix Uses Druid in Real-time to Ensure a High Quality Streaming Experi...
Imply
 
Building a modern data warehouse
James Serra
 
Server monitoring using grafana and prometheus
Celine George
 
Big Data at Pinterest - Presented by Qubole
Qubole
 
OpenStack을 중심으로 한 오픈 소스 & 상용 하이브리드 클라우드
Ian Choi
 
Apache Hadoop In Theory And Practice
Adam Kawa
 
All about InfluxDB.
mitesh_sharma
 
Hive Data Modeling and Query Optimization
Eyad Garelnabi
 
Apache Kafka from 0.7 to 1.0, History and Lesson Learned
Guozhang Wang
 
Nagios XI Best Practices
Nagios
 
Kafka at Peak Performance
Todd Palino
 
Why you should care about data layout in the file system with Cheng Lian and ...
Databricks
 

Viewers also liked (20)

PDF
Cybercrime Research Paper
Whitney Bolton
 
PPTX
Data and database administration(database)
welcometofacebook
 
PPTX
Demographics and psychographics
BigDproductions
 
PPT
Data leakage detection Complete Seminar
Sumit Thakur
 
PPTX
Building an Effective Data Warehouse Architecture
James Serra
 
PPTX
Cyber security
Siblu28
 
PPTX
Cyber crime and security ppt
Lipsita Behera
 
PDF
Contact Acquisition Strategy
Ron Corbisier
 
PPTX
Dibucaine number
Dr Sandeep
 
PPT
Dosage And Solutions
Analin Empaynado
 
PDF
Direct Mail 101
Erik_Haug
 
PPT
Desalter Desalting
Fahad Khan([email protected])
 
PDF
Contextual intelligence
Thei Geurts
 
PPS
12 Deductive Thinking Puzzles
OH TEIK BIN
 
PPT
Project Requirements, What Are They And How Do You Know You
John N. Motlagh
 
PPTX
Drug dilution
Aizuddin Misro
 
PPSX
Magic bullet theory (assignment based)
yumna akhtar
 
PPT
How to Build a DevOps Toolchain
IBM UrbanCode Products
 
PDF
Digital Media Sectors and Audiences
Kate McCabe
 
PPT
Building a CRM Application
Iron Speed
 
Cybercrime Research Paper
Whitney Bolton
 
Data and database administration(database)
welcometofacebook
 
Demographics and psychographics
BigDproductions
 
Data leakage detection Complete Seminar
Sumit Thakur
 
Building an Effective Data Warehouse Architecture
James Serra
 
Cyber security
Siblu28
 
Cyber crime and security ppt
Lipsita Behera
 
Contact Acquisition Strategy
Ron Corbisier
 
Dibucaine number
Dr Sandeep
 
Dosage And Solutions
Analin Empaynado
 
Direct Mail 101
Erik_Haug
 
Desalter Desalting
Fahad Khan([email protected])
 
Contextual intelligence
Thei Geurts
 
12 Deductive Thinking Puzzles
OH TEIK BIN
 
Project Requirements, What Are They And How Do You Know You
John N. Motlagh
 
Drug dilution
Aizuddin Misro
 
Magic bullet theory (assignment based)
yumna akhtar
 
How to Build a DevOps Toolchain
IBM UrbanCode Products
 
Digital Media Sectors and Audiences
Kate McCabe
 
Building a CRM Application
Iron Speed
 
Ad

Similar to Hardware planning & sizing for sql server (20)

PPTX
Presentation db2 best practices for optimal performance
solarisyougood
 
PDF
Presentation db2 best practices for optimal performance
xKinAnx
 
PDF
User Group Bi
sqlserver.co.il
 
PPTX
Designing Information Structures For Performance And Reliability
bryanrandol
 
PPTX
IO Dubi Lebel
sqlserver.co.il
 
PDF
SQL Server 2008 Fast Track Data Warehouse
Mark Ginnebaugh
 
PPTX
Next gen bi and datawarehouse solutions ross lo forte
Microsoft Singapore
 
PPT
SQL 2005 Disk IO Performance
Information Technology
 
PPTX
SQLintersection keynote a tale of two teams
Sumeet Bansal
 
PDF
Get more from your new server purchase by opting for faster drives
Principled Technologies
 
PDF
High Performance Hardware for Data Analysis
Mike Pittaro
 
PDF
Mike Pittaro - High Performance Hardware for Data Analysis
PyData
 
PPT
TPC_Microsoft.ppt
AsimTaj2
 
PDF
High Performance Hardware for Data Analysis
odsc
 
PDF
High Performance Hardware for Data Analysis
Mike Pittaro
 
PPT
Oracle real application_cluster
Prabhat gangwar
 
PDF
5 Steps to PostgreSQL Performance
Command Prompt., Inc
 
PDF
Five steps perform_2009 (1)
PostgreSQL Experts, Inc.
 
PPT
Coriani 2
Innocenti Andrea
 
PDF
Doc 2011101412020074
Rhythm Sun
 
Presentation db2 best practices for optimal performance
solarisyougood
 
Presentation db2 best practices for optimal performance
xKinAnx
 
User Group Bi
sqlserver.co.il
 
Designing Information Structures For Performance And Reliability
bryanrandol
 
IO Dubi Lebel
sqlserver.co.il
 
SQL Server 2008 Fast Track Data Warehouse
Mark Ginnebaugh
 
Next gen bi and datawarehouse solutions ross lo forte
Microsoft Singapore
 
SQL 2005 Disk IO Performance
Information Technology
 
SQLintersection keynote a tale of two teams
Sumeet Bansal
 
Get more from your new server purchase by opting for faster drives
Principled Technologies
 
High Performance Hardware for Data Analysis
Mike Pittaro
 
Mike Pittaro - High Performance Hardware for Data Analysis
PyData
 
TPC_Microsoft.ppt
AsimTaj2
 
High Performance Hardware for Data Analysis
odsc
 
High Performance Hardware for Data Analysis
Mike Pittaro
 
Oracle real application_cluster
Prabhat gangwar
 
5 Steps to PostgreSQL Performance
Command Prompt., Inc
 
Five steps perform_2009 (1)
PostgreSQL Experts, Inc.
 
Coriani 2
Innocenti Andrea
 
Doc 2011101412020074
Rhythm Sun
 
Ad

More from Davide Mauri (20)

PPTX
Azure serverless Full-Stack kickstart
Davide Mauri
 
PPTX
Agile Data Warehousing
Davide Mauri
 
PPTX
Dapper: the microORM that will change your life
Davide Mauri
 
PPTX
When indexes are not enough
Davide Mauri
 
PPTX
Building a Real-Time IoT monitoring application with Azure
Davide Mauri
 
PPTX
SSIS Monitoring Deep Dive
Davide Mauri
 
PPTX
Azure SQL & SQL Server 2016 JSON
Davide Mauri
 
PPTX
SQL Server & SQL Azure Temporal Tables - V2
Davide Mauri
 
PPTX
SQL Server 2016 Temporal Tables
Davide Mauri
 
PPTX
SQL Server 2016 What's New For Developers
Davide Mauri
 
PPTX
Azure Stream Analytics
Davide Mauri
 
PPTX
Azure Machine Learning
Davide Mauri
 
PPTX
Dashboarding with Microsoft: Datazen & Power BI
Davide Mauri
 
PPTX
Azure ML: from basic to integration with custom applications
Davide Mauri
 
PPTX
Event Hub & Azure Stream Analytics
Davide Mauri
 
PPTX
SQL Server 2016 JSON
Davide Mauri
 
PPTX
SSIS Monitoring Deep Dive
Davide Mauri
 
PPTX
Real Time Power BI
Davide Mauri
 
PPTX
AzureML - Creating and Using Machine Learning Solutions (Italian)
Davide Mauri
 
PPTX
Datarace: IoT e Big Data (Italian)
Davide Mauri
 
Azure serverless Full-Stack kickstart
Davide Mauri
 
Agile Data Warehousing
Davide Mauri
 
Dapper: the microORM that will change your life
Davide Mauri
 
When indexes are not enough
Davide Mauri
 
Building a Real-Time IoT monitoring application with Azure
Davide Mauri
 
SSIS Monitoring Deep Dive
Davide Mauri
 
Azure SQL & SQL Server 2016 JSON
Davide Mauri
 
SQL Server & SQL Azure Temporal Tables - V2
Davide Mauri
 
SQL Server 2016 Temporal Tables
Davide Mauri
 
SQL Server 2016 What's New For Developers
Davide Mauri
 
Azure Stream Analytics
Davide Mauri
 
Azure Machine Learning
Davide Mauri
 
Dashboarding with Microsoft: Datazen & Power BI
Davide Mauri
 
Azure ML: from basic to integration with custom applications
Davide Mauri
 
Event Hub & Azure Stream Analytics
Davide Mauri
 
SQL Server 2016 JSON
Davide Mauri
 
SSIS Monitoring Deep Dive
Davide Mauri
 
Real Time Power BI
Davide Mauri
 
AzureML - Creating and Using Machine Learning Solutions (Italian)
Davide Mauri
 
Datarace: IoT e Big Data (Italian)
Davide Mauri
 

Recently uploaded (20)

PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
July Patch Tuesday
Ivanti
 
PDF
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
DOCX
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
Advancing WebDriver BiDi support in WebKit
Igalia
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
July Patch Tuesday
Ivanti
 
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
Advancing WebDriver BiDi support in WebKit
Igalia
 

Hardware planning & sizing for sql server

  • 1. Hardware Planning & Sizing for SQL Server Davide Mauri [email protected]
  • 2. Sponsor & Media Partners
  • 3. Davide Mauri  18 Years of experience on the SQL Server Platform  Specialized in Data Solution Architecture, Database Design, Performance Tuning, Business Intelligence  Projects, Consulting, Mentoring & Training     Regular Speaker @ SQL Server events Microsoft SQL Server MVP President of UGISS (Italian SQL Server UG) Mentor @ SolidQ
  • 4. Requirements What’s the typical RDBMS requirement? Performance!
  • 5. Expectations So you would expect an OLTP server to be like a… F1 Car!
  • 6. Expectations Or, if you’re into Business Intelligence, you would expect a great (Fast) Truck!
  • 7. Reality Let’s do a reality check. Typical servers are… …Something Else…
  • 8. Why this happens? Huge misunderstanding on hardware features… «System is slow, we need an upgrade to improve performance» «Here’s 2 TB of more space» «WTF!?!?!?»
  • 9. Balanced Systems The only way to go is to have balanced systems Balanced: pay and use everything no single bottleneck nothing more than what you can consume
  • 10. Just wasting money Unbalanced system is just a money black hole Wasted money on Licenses Hardware HW/Storage Consultants DBA SYS Admins Developers
  • 11. Performance Pillars Database Design • Logical • Physical Server Index Query Hardware • Configuration • Maintenance • Definition • Maintenance • Evolution • Good T-SQL • Tuning • No bottlenecks
  • 12. The (simplified) I/O full stack SQL Server Windows CPU Memory I/O Controller Disk Array Performance
  • 13. Is that a good system? 40 Cores (80 with HT) 128 GB RAM SAN with 2 TB of disk space ?
  • 14. Answer My feeling? Not really. Some important data is missing. How many disks? How the SAN is connected to the server?
  • 15. How to evaluate & balance a server No easy way…but! How do you evaluate a car? Put it on a standard test track Measure peak performance Measure peak resource consumption Declare results Compare results
  • 16. How to evaluate & balance a server Of course you’ll never get the declared values in real-life usage Still they are a good way to Understand if that car is good for your Compare it against other cars
  • 17. Use published data Let’s do some math with published or wellknown values TPC Benchmarks Let’s start to evaluate a Data Warehouse since is much more simpler than a OLTP system
  • 18. CPU A minimum of 300MB/s of Maximum Consumption Rate per core For today’s CPUs A four core processor is able to consume 1.2GB/sec of raw data Is your system able to give that throughput?
  • 19. Memory Memory usually has a very high bandwidth A DDR3 Memory Pair can provide 10GB/Sec No problems here 
  • 20. PCI-X o PCIe BUS PCI-X v1 X4 slot: 750 MB/sec PCI-X v2 X4 slot: 1.5 – 1.8GB/sec
  • 21. PCI-X o PCIe BUS PCIe (per lane) v1.x: 250 MB/s v2.x: 500 MB/s v3.0: 985 MB/s v4.0: 1969 MB/s PCIe v2.0 x16 8 GB/sec
  • 22. Storage: Spindles A «classic» HDD (a «spindle») the following numbers: Sequential IO 90MB/sec to 125MB/sec for a single drive Random IO usually much lower SQL Server tries to convert rnd to seq
  • 23. Storage: Interconnection How are your drives connected to the server? DAS: Direct Attached Storage SAN: Storage Area Network
  • 24. Storage: DAS Standards: (SCSI), SAS, SATA Typically Integrated controller on the server PCI Direct Access Host-Bus Adapter (HBA) may or may be used
  • 25. Storage: SAN Host-Bus Adapter (HBA) FC Switch Cache Storage Processor
  • 26. Storage: SAN – The Numbers 4Gbit FC = 400MB/sec 8Gbit FC = 800MB/Sec PCI-x4 or faster needed! (Anyway PCIe is becoming the standard)
  • 27. Building the server  4 x 8-Core CPU  4 * 8 * 300 MB/Sec = 9600 Mb/Sec = ~10Gb/Sec  12 x 8Gbit FC HBA  12 * 800 MB/Sec = 9600Mb/Sec = ~10Gb/Sec  64 x 15K RPM Discs  64 * 150MB/Sec = 9600 Mb/Sec = ~10Gb/Sec
  • 28. Building the server  SAN & PCIe Slots  # Vary depending on model  Eg: SAN supports 16Gbit:  6 SAN  12 PCIe 8x  RAM  As much as you can 
  • 29. Database File Placing LUN 1 DataFile1.ndf LUN 2 DataFile2.ndf LUN 3 DataFile3.ndf LUN 4 DataFile4.ndf LUN «n» DataFileN.ndf SAN 1 FILEGROUP SAN 2 SAN «n»
  • 30. Was it all worth it?
  • 31. Performance Baselining: Storage SQLIO Free tool to measure IO from Microsoft IOMeter Free, open source, tool
  • 32. Performance Baselining: System Use TPC Databases and tools to measure performance and compare different systems www.tpc.org OLTP TPC-C & TPC-E DW/BI/DSS TPC-H & TPC-DS
  • 33. Is that all?  It’s ALL about hardware!  Just keep in mind that it’s only a part of the game  Remember to measure latency (continuously!)  Use SQL Server DMVS to monitor Wait Stats  Use H/W monitoring tools
  • 34. OLTP Workload Type Notes Mainly random read / writes Depending how much “pure” OLTP is Read-Head are sequential Optimize for Random I/O Spindle count IOPS & Latency is the key measure
  • 35. DW Workload Type Notes 64-512KB reads table and range scan 128-256KB writes bulk load Optimize for high aggregate throughput I/O MB/Sec is the value to monitor
  • 36. SSAS Workload Type Notes Up to 64KB random reads, (Avg. 32KB) Highly random and often fragmented data Optimize for Random, 32KB blocks IOPS & Latency is the key measure
  • 37. Fast Track Data Warehouse Reference architecture Guide to create a balanced system optimized for DW workload Large Scans of Data IBM, HP & DELL provides hardware
  • 38. Parallel Data Warehouse  Massively Parallel Processing (MPP) Architecture  Basically several Fast Track all together   Query is split and executed across all nodes
  • 40. OLTP Appliance  Unfortunately missing in action…  Generalization much more complex than DWH  HP, IBM & DELL have specific whitepapers
  • 41. OLTP Appliance  Microsoft® SQL Server® 2012 OLTP Workload Benefits Using IBM® XIV® Storage System Gen3 SSD Cache  Achieving a High Performance OLTP Database using SQL Server® and Dell™ PowerEdge™ R720 with Internal PCIe SSD Storage
  • 42. OLTP Appliance  HP Reference Architecture for High Performance SQL Server

Editor's Notes

  • #2: All images usedeare © of respectiveauthors
  • #21: http://en.wikipedia.org/wiki/PCI-X
  • #22: http://h20566.www2.hp.com/portal/site/hpsc/template.PAGE/public/kb/docDisplay/?sp4ts.oid=254869&spf_p.tpst=kbDocDisplay&spf_p.prp_kbDocDisplay=wsrp-navigationalState%3DdocId%253Demr_na-c01647212-2%257CdocLocale%253D%257CcalledBy%253D&javax.portlet.begCacheTok=com.vignette.cachetoken&javax.portlet.endCacheTok=com.vignette.cachetokenhttp://en.wikipedia.org/wiki/PCI_Express