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!
Ad

Recommended

AWS basics
AWS basics
mbaric
 
MySQL Deep dive with FusionIO
MySQL Deep dive with FusionIO
I Goo Lee
 
HBaseCon 2013: Apache HBase Table Snapshots
HBaseCon 2013: Apache HBase Table Snapshots
Cloudera, Inc.
 
Azure Synapse Analytics Overview (r2)
Azure Synapse Analytics Overview (r2)
James Serra
 
Cassandra an overview
Cassandra an overview
PritamKathar
 
Lessons from Large-Scale Cloud Software at Databricks
Lessons from Large-Scale Cloud Software at Databricks
Matei Zaharia
 
Apache Cassandra at the Geek2Geek Berlin
Apache Cassandra at the Geek2Geek Berlin
Christian Johannsen
 
Ceph Performance and Sizing Guide
Ceph Performance and Sizing Guide
Jose De La Rosa
 
The Future of Data Science and Machine Learning at Scale: A Look at MLflow, D...
The Future of Data Science and Machine Learning at Scale: A Look at MLflow, D...
Databricks
 
Oracle RAC 19c - the Basis for the Autonomous Database
Oracle RAC 19c - the Basis for the Autonomous Database
Markus Michalewicz
 
New Generation Oracle RAC Performance
New Generation Oracle RAC Performance
Anil Nair
 
Ceph c01
Ceph c01
Lâm Đào
 
Relational RDBMS : MySQL, PostgreSQL and SQL SERVER
Relational RDBMS : MySQL, PostgreSQL and SQL SERVER
Dalila Chouaya
 
Storage Basics
Storage Basics
Murali Rajesh
 
Dell Boomi AtomSphere - A presentation by RapidValue Solutions
Dell Boomi AtomSphere - A presentation by RapidValue Solutions
RapidValue
 
The Oracle RAC Family of Solutions - Presentation
The Oracle RAC Family of Solutions - Presentation
Markus Michalewicz
 
Sql Server Performance Tuning
Sql Server Performance Tuning
Bala Subra
 
Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...
Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...
Michael Rys
 
Power BI for Big Data and the New Look of Big Data Solutions
Power BI for Big Data and the New Look of Big Data Solutions
James Serra
 
Introduction to Azure Data Lake
Introduction to Azure Data Lake
Antonios Chatzipavlis
 
Object storage의 이해와 활용
Object storage의 이해와 활용
Seoro Kim
 
Building Reliable Data Lakes at Scale with Delta Lake
Building Reliable Data Lakes at Scale with Delta Lake
Databricks
 
Spark etl
Spark etl
Imran Rashid
 
Sql server basics
Sql server basics
Dilfaroz Khan
 
NetApp & Storage fundamentals
NetApp & Storage fundamentals
Shashidhar Basavaraju
 
Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...
Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...
DataStax
 
Introduction to Microsoft Power BI
Introduction to Microsoft Power BI
Exilesoft
 
Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...
Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...
HostedbyConfluent
 
Right-Sizing your SQL Server Virtual Machine
Right-Sizing your SQL Server Virtual Machine
heraflux
 
Cybercrime Research Paper
Cybercrime Research Paper
Whitney Bolton
 

More Related Content

What's hot (20)

The Future of Data Science and Machine Learning at Scale: A Look at MLflow, D...
The Future of Data Science and Machine Learning at Scale: A Look at MLflow, D...
Databricks
 
Oracle RAC 19c - the Basis for the Autonomous Database
Oracle RAC 19c - the Basis for the Autonomous Database
Markus Michalewicz
 
New Generation Oracle RAC Performance
New Generation Oracle RAC Performance
Anil Nair
 
Ceph c01
Ceph c01
Lâm Đào
 
Relational RDBMS : MySQL, PostgreSQL and SQL SERVER
Relational RDBMS : MySQL, PostgreSQL and SQL SERVER
Dalila Chouaya
 
Storage Basics
Storage Basics
Murali Rajesh
 
Dell Boomi AtomSphere - A presentation by RapidValue Solutions
Dell Boomi AtomSphere - A presentation by RapidValue Solutions
RapidValue
 
The Oracle RAC Family of Solutions - Presentation
The Oracle RAC Family of Solutions - Presentation
Markus Michalewicz
 
Sql Server Performance Tuning
Sql Server Performance Tuning
Bala Subra
 
Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...
Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...
Michael Rys
 
Power BI for Big Data and the New Look of Big Data Solutions
Power BI for Big Data and the New Look of Big Data Solutions
James Serra
 
Introduction to Azure Data Lake
Introduction to Azure Data Lake
Antonios Chatzipavlis
 
Object storage의 이해와 활용
Object storage의 이해와 활용
Seoro Kim
 
Building Reliable Data Lakes at Scale with Delta Lake
Building Reliable Data Lakes at Scale with Delta Lake
Databricks
 
Spark etl
Spark etl
Imran Rashid
 
Sql server basics
Sql server basics
Dilfaroz Khan
 
NetApp & Storage fundamentals
NetApp & Storage fundamentals
Shashidhar Basavaraju
 
Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...
Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...
DataStax
 
Introduction to Microsoft Power BI
Introduction to Microsoft Power BI
Exilesoft
 
Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...
Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...
HostedbyConfluent
 
The Future of Data Science and Machine Learning at Scale: A Look at MLflow, D...
The Future of Data Science and Machine Learning at Scale: A Look at MLflow, D...
Databricks
 
Oracle RAC 19c - the Basis for the Autonomous Database
Oracle RAC 19c - the Basis for the Autonomous Database
Markus Michalewicz
 
New Generation Oracle RAC Performance
New Generation Oracle RAC Performance
Anil Nair
 
Relational RDBMS : MySQL, PostgreSQL and SQL SERVER
Relational RDBMS : MySQL, PostgreSQL and SQL SERVER
Dalila Chouaya
 
Dell Boomi AtomSphere - A presentation by RapidValue Solutions
Dell Boomi AtomSphere - A presentation by RapidValue Solutions
RapidValue
 
The Oracle RAC Family of Solutions - Presentation
The Oracle RAC Family of Solutions - Presentation
Markus Michalewicz
 
Sql Server Performance Tuning
Sql Server Performance Tuning
Bala Subra
 
Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...
Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...
Michael Rys
 
Power BI for Big Data and the New Look of Big Data Solutions
Power BI for Big Data and the New Look of Big Data Solutions
James Serra
 
Object storage의 이해와 활용
Object storage의 이해와 활용
Seoro Kim
 
Building Reliable Data Lakes at Scale with Delta Lake
Building Reliable Data Lakes at Scale with Delta Lake
Databricks
 
Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...
Apache Cassandra Multi-Datacenter Essentials (Julien Anguenot, iLand Internet...
DataStax
 
Introduction to Microsoft Power BI
Introduction to Microsoft Power BI
Exilesoft
 
Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...
Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...
HostedbyConfluent
 

Viewers also liked (20)

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

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

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

More from Davide Mauri (20)

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

Recently uploaded (20)

Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
caoyixuan2019
 
Curietech AI in action - Accelerate MuleSoft development
Curietech AI in action - Accelerate MuleSoft development
shyamraj55
 
The Future of AI Agent Development Trends to Watch.pptx
The Future of AI Agent Development Trends to Watch.pptx
Lisa ward
 
From Manual to Auto Searching- FME in the Driver's Seat
From Manual to Auto Searching- FME in the Driver's Seat
Safe Software
 
Using the SQLExecutor for Data Quality Management: aka One man's love for the...
Using the SQLExecutor for Data Quality Management: aka One man's love for the...
Safe Software
 
Security Tips for Enterprise Azure Solutions
Security Tips for Enterprise Azure Solutions
Michele Leroux Bustamante
 
UserCon Belgium: Honey, VMware increased my bill
UserCon Belgium: Honey, VMware increased my bill
stijn40
 
9-1-1 Addressing: End-to-End Automation Using FME
9-1-1 Addressing: End-to-End Automation Using FME
Safe Software
 
2025_06_18 - OpenMetadata Community Meeting.pdf
2025_06_18 - OpenMetadata Community Meeting.pdf
OpenMetadata
 
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
biswajitbanerjee38
 
Securing Account Lifecycles in the Age of Deepfakes.pptx
Securing Account Lifecycles in the Age of Deepfakes.pptx
FIDO Alliance
 
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
Fwdays
 
FIDO Seminar: Authentication for a Billion Consumers - Amazon.pptx
FIDO Seminar: Authentication for a Billion Consumers - Amazon.pptx
FIDO Alliance
 
Lessons Learned from Developing Secure AI Workflows.pdf
Lessons Learned from Developing Secure AI Workflows.pdf
Priyanka Aash
 
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
revolcs10
 
You are not excused! How to avoid security blind spots on the way to production
You are not excused! How to avoid security blind spots on the way to production
Michele Leroux Bustamante
 
Cluster-Based Multi-Objective Metamorphic Test Case Pair Selection for Deep N...
Cluster-Based Multi-Objective Metamorphic Test Case Pair Selection for Deep N...
janeliewang985
 
OpenPOWER Foundation & Open-Source Core Innovations
OpenPOWER Foundation & Open-Source Core Innovations
IBM
 
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
Priyanka Aash
 
Creating Inclusive Digital Learning with AI: A Smarter, Fairer Future
Creating Inclusive Digital Learning with AI: A Smarter, Fairer Future
Impelsys Inc.
 
Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
caoyixuan2019
 
Curietech AI in action - Accelerate MuleSoft development
Curietech AI in action - Accelerate MuleSoft development
shyamraj55
 
The Future of AI Agent Development Trends to Watch.pptx
The Future of AI Agent Development Trends to Watch.pptx
Lisa ward
 
From Manual to Auto Searching- FME in the Driver's Seat
From Manual to Auto Searching- FME in the Driver's Seat
Safe Software
 
Using the SQLExecutor for Data Quality Management: aka One man's love for the...
Using the SQLExecutor for Data Quality Management: aka One man's love for the...
Safe Software
 
Security Tips for Enterprise Azure Solutions
Security Tips for Enterprise Azure Solutions
Michele Leroux Bustamante
 
UserCon Belgium: Honey, VMware increased my bill
UserCon Belgium: Honey, VMware increased my bill
stijn40
 
9-1-1 Addressing: End-to-End Automation Using FME
9-1-1 Addressing: End-to-End Automation Using FME
Safe Software
 
2025_06_18 - OpenMetadata Community Meeting.pdf
2025_06_18 - OpenMetadata Community Meeting.pdf
OpenMetadata
 
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
biswajitbanerjee38
 
Securing Account Lifecycles in the Age of Deepfakes.pptx
Securing Account Lifecycles in the Age of Deepfakes.pptx
FIDO Alliance
 
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
Fwdays
 
FIDO Seminar: Authentication for a Billion Consumers - Amazon.pptx
FIDO Seminar: Authentication for a Billion Consumers - Amazon.pptx
FIDO Alliance
 
Lessons Learned from Developing Secure AI Workflows.pdf
Lessons Learned from Developing Secure AI Workflows.pdf
Priyanka Aash
 
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
revolcs10
 
You are not excused! How to avoid security blind spots on the way to production
You are not excused! How to avoid security blind spots on the way to production
Michele Leroux Bustamante
 
Cluster-Based Multi-Objective Metamorphic Test Case Pair Selection for Deep N...
Cluster-Based Multi-Objective Metamorphic Test Case Pair Selection for Deep N...
janeliewang985
 
OpenPOWER Foundation & Open-Source Core Innovations
OpenPOWER Foundation & Open-Source Core Innovations
IBM
 
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
Priyanka Aash
 
Creating Inclusive Digital Learning with AI: A Smarter, Fairer Future
Creating Inclusive Digital Learning with AI: A Smarter, Fairer Future
Impelsys Inc.
 

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