SlideShare a Scribd company logo
High Performance and
High Availability with
SQL Server 2012 AlwaysOn
Sumeet Bansal, Fusion-IO
Kevin Kline, SQL Sentry
2
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Introduction
A Tale of Two Teams
Two rival teams …
… each working to satisfy an important customer.
What’s the hardware solution? What’s the software solution?
3
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
The Customer
 A real-world major financial institution headquartered in London.
 A core banking application - credit card transactions from ATM and
Branches
 Requirement: 10,000 Business Transactions / sec (Not IOPs!)
 Highly available using AlwaysOn across hundreds of nodes in many
Availability Groups
 ... AND IT LOOKS LIKE THIS AT LOAD...
o
4
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Meeting the Requirements: Hardware
 High Performance on SQL Server means tuning
the FULL STACK.
 Key Takeaway: This is NOT going to be easy…
OS 
SQL 
CPU 
HBA 
NIC 
Array 
Cache 
Spindles 
5
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
First Surprise - Memory
 At scale, SQL Server does a generally good job of
memory management by default.
 Some improvements are possible on large
CPU/Memory boxes dedicated to SQL Server:
 Lock Pages in Memory
 Big performance gain!
 Use gpedit.msc to grant it to SQL Service account
 Large page Allocations (-TF834)
 On Windows 2008R2 previous issues with this TF are fixed
 Around 10% throughput increase
 NUMA node memory distribution: Beware!
 Set max memory close to box max if dedicated box available
o
6
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Second Surprise - NICs
 At scale, network traffic will generate a LOT of
interrupts for the CPU
 These must be handled by CPU Cores
 Must distribute packets to cores for processing
 Rule of thumb (OTLP): 1 NIC / 16 Cores
 Watch the DPC activity in Taskmanager
 Remove SQL Server (using affinity masking) from the NIC cores
o
7
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Drive Selection - General
 Number of files matter for SQL Server
 TempDB and user database has multiple files, on segregated arrays
 Other important configs:
 NTFS allocation size at 64-KB; HBA queue depth at 64; Storport HBA Driver
 Number of drives matter
 More drives = more speed
 True for both SAN and DAS
 ... Less so for SSD, but still relevant (especially for NAND)
 If designing for performance, make sure the topology can
handle it!
 Understand the path to the drives
 Consider workload: Random or Sequential?
 Key Takeaway: Validate and compare configurations prior to
deployment
8
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Rules of Thumb – Disk IO
 Traditional Spindle throughput
 10K RPM – 100-130 IOPs, ‘full
stroke’
 15K RPM – 150-180 IOPs, ‘full
stroke’
 Can achieve 2x or more when
‘short stroking’ the disks (using
less than 20% capacity of the
physical spindle)
 These are for random 8K I/O
 Aggregate throughput when
sequential access:
 Between 90MB/sec and
125MB/sec for a single drive
 If truly sequential, any block size
over 8K will give you these
numbers
 Some 3.5” drives slightly faster
than 2.5”
 Approximate latency: 3-5ms
 Cable speed
 Theoretical: 1.5GB/sec
 Typical: 1.2GB/sec
 PCI-e v2 Bus
 X4 slot: 1.5 – 1.8GB/sec
 X8 slot: 3GB/sec
 HBA speed
 4Gbit – ~500MB/sec
 8Gbit – ~1GB/sec on PCI-e X4 v2
bus
 Typical: 350-400MB/sec on 4Gbit,
doubled on 8Gbit
u
9
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
What’s Causing these Non-Disk
Bottlenecks?
Added
disk pair
Backplane
limit
140
140
110
Added
controller
10
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Understand the Full Stack to the drives
 Key Takeaway: The deeper the topology, the
greater latency, the more important the
tuning
 Best Practices:
 Understand topology, potential bottlenecks and
theoretical throughput of each component in the path!
 Engage storage engineers early in the process
 Two major topologies for SQL Server
Storage
 DAS – Direct Attached Storage
 SAN – Storage Area Networks
11
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Traditional Centralized Architecture
11
Application
CPU and
Memory
HBA Switches
Target
Adapters
CPU and
Memory
RAID
Controllers
HDD/SSD
SERVERS
Active and
Archive Data
STORAGE (Performance Optimized)NETWORK
Milliseconds
Databases
Virtualization
Web-scale
Latency and Processing
Time
12
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Shared Data Decentralization
12
Active Data
Application CPUs NAND Flash Raid Controller HDD/SSD
SERVERS
Latency and Processing
Time
Archive Data
Microseconds Milliseconds
Databases
Virtualization
Web-scale
13
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
The SAN – Panacea to All IO Issues…
….YEAH RIGHT! 
Green: Checkpoint, Red: tx/sec, Black: Disk Latency
o
14
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
DAS vs. SAN - Summary
Feature SAN DAS
Cost High, offset by better utilization Low, may waste space
Flexibility More, abstraction allows online
configuration changes
Less, get it right the first
time!
Skills required Complex with steep learning
curve
Simple and well
understood
Additional
Features
Snapshots; Storage
Replication; Thin Provisioning
None
Performance Not high performance
technology
High performance for
small investment
Reliability More, very high reliability Less, depending on RAID
level
Clustering
Support
Yes No (special
implementations exist)
So, which should we choose?
SAN DAS
o
15
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Let’s See What It Can Do!
1 x MS SQL Server 25 Billion Transactions/Day
(Equivalent to the number
of estimated Credit card
transactions around the
globe in a single day)
http://www.fusionio.com/blog/powering-global-commerce-with-sql-server-iomemory/
4 x 1.2TB
Demo
Turn difficult disk IO tuning into easy
ioMemory plug-n-play.
17
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Meeting the Requirements: Software
 Highly transparent instrumentation means
monitoring the FULL STACK.
 Key Takeaway: This is NOT going to be easy…
OS 
SQL 
CPU 
HBA 
NIC 
Array 
Cache 
Spindles 
o
v
18
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Instrumentation: PerfMon
 Throughput: Measured in MB/sec or IOPs by PerfMon: Logical Disk
 Disk Read Bytes / Sec
 Disk Write Bytes / Sec
 Disk Read / Sec
 Disk Writes / Sec
 Latency: Measured in milliseconds (ms) by PerfMon: Logical Disk
 Avg. Disk Sec / read
 Avg. Disk Sec / write
 More on healthy latency values later
 Key Takeway: For transparency, PerfMon gives a limited picture of
performance.
o
19
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Instrumentation: Profiler / Trace
 High overhead
 Lots of experience needed to filter the results
 Deprecated! (But only for relational engine).
 Key Takeway: Shows triggered events, but not a comprehensive view of
whole system. Not a reliable long-term solution.
o
20
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Instrumentation: DMVs
-- SQL Server 2012 Diagnostic Information Queries, by Glenn Berry, @GlennAlanBerry
-- http://sqlserverperformance.wordpress.com/
-- http://sqlskills.com/blogs/glenn/
-- Get total buffer used by DB for current instance
SELECT DB_NAME(database_id) AS [Database Name],
COUNT(*) * 8/1024.0 AS [Cached Size (MB)]
FROM sys.dm_os_buffer_descriptors WITH (NOLOCK)
WHERE database_id > 4 -- system databases
AND database_id <> 32767 -- ResourceDB
GROUP BY DB_NAME(database_id)
ORDER BY [Cached Size (MB)] DESC OPTION (RECOMPILE);
 Great information! Built in for SQL Server 2005+.
 No history. No correlation. No interpretation.
 Key Takeway: Very useful. Not very useable.
o
21
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Instrumentation: Extended Events
 Low overhead
 Lots of experience needed to filter the results
 How much memory or space? Other administrative questions to
answer…
 Key Takeway: Deep data, but is it actionable and proactive information?
o
22
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Instrumentation: Notifications
 Per server setup
 Requires SQLAgent service
 Can only capture error msg/lvl, WMI metrics, PerfMon metrics
 Key Takeway: Alerts are available, but high support requirements and
limited proactivity.
o
Demo
Bringing all the instrumentation together
for meaningful, actionable
performance information.
o
w
24
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Meeting the Requirements: HA
 Need more flexibility than in legacy approaches
like log shipping and database mirroring.
 Need a shared nothing architecture.
 Key Takeaway: This is not too bad UNTIL we
scale up …
OS 
SQL 
CPU 
HBA 
NIC 
Array 
Cache 
Spindles 
25
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Availability Groups Fundamentals
o
26
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Special Considerations: AlwaysOn
 Granular control and some visibility into AlwaysOn through SSms Rt-
Click  Show Dashboard.
 Designed for small scale implementations.
 As with earlier tools, user carries the risk and requirement for expertise.
o
Demo
HA + DR management and
monitoring at scale.
o
x
28
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
How Did We Do It?OS 
SQL 
CPU 
HBA 
NIC 
Array 
Cache 
Spindles 
OS +
SQL 
CPU 
Fusion-io +
SQL Sentry 
29
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
References
 Thomas Kejser, SQLCAT, and high performance IO tuning:
 http://blog.kejser.org/tag/sqlcat/
 http://blog.kejser.org/
 Jonathan Kehayias & xEvents:
 http://www.sqlskills.com/blogs/jonathan/category/extended-events/
 Joe Sack & AlwaysOn:
 http://www.sqlskills.com/blogs/joe/answering-questions-with-the-
alwayson-dashboard/
 SQLPerformance.com (Jonathan Kehayias) instrumentation overhead
analysis:
 http://www.sqlperformance.com/2012/10/sql-trace/observer-overhead-
trace-extended-events
30
© SQLintersection. All rights reserved.
http://www.SQLintersection.com
Review
 High performance IO is very hard when restricted to
disk-only architectures.
 ioMemory from Fusion-IO is the solution!
 Highly transparent monitoring and alerting,
especially for HA, is very hard with native tools and
features.
 Performance Advisor from SQL Sentry is the solution!
 Visit our booths to see the latest releases and sign
up for free trials and demonstrations!
Don’t forget to enter your evaluation
of this session using EventBoard!
Questions?
Thank you!

More Related Content

What's hot

IMCSummit 2015 - Day 2 IT Business Track - Drive IMC Efficiency with Flash E...
IMCSummit 2015 - Day 2  IT Business Track - Drive IMC Efficiency with Flash E...IMCSummit 2015 - Day 2  IT Business Track - Drive IMC Efficiency with Flash E...
IMCSummit 2015 - Day 2 IT Business Track - Drive IMC Efficiency with Flash E...
In-Memory Computing Summit
 
Exadata Patching Demystified
Exadata Patching DemystifiedExadata Patching Demystified
Exadata Patching Demystified
Enkitec
 
Exadata 12c New Features RMOUG
Exadata 12c New Features RMOUGExadata 12c New Features RMOUG
Exadata 12c New Features RMOUG
Fuad Arshad
 
Whitepaper: Running Oracle e-Business Suite Database on Oracle Database Appli...
Whitepaper: Running Oracle e-Business Suite Database on Oracle Database Appli...Whitepaper: Running Oracle e-Business Suite Database on Oracle Database Appli...
Whitepaper: Running Oracle e-Business Suite Database on Oracle Database Appli...
Maris Elsins
 
Storage and performance- Batch processing, Whiptail
Storage and performance- Batch processing, WhiptailStorage and performance- Batch processing, Whiptail
Storage and performance- Batch processing, Whiptail
Internet World
 
Oracle Database Appliance - RAC in a box Some strings attached
Oracle Database Appliance - RAC in a box Some strings attached Oracle Database Appliance - RAC in a box Some strings attached
Oracle Database Appliance - RAC in a box Some strings attached
Fuad Arshad
 
Impact of Intel Optane Technology on HPC
Impact of Intel Optane Technology on HPCImpact of Intel Optane Technology on HPC
Impact of Intel Optane Technology on HPC
MemVerge
 
3PAR and VMWare
3PAR and VMWare3PAR and VMWare
3PAR and VMWare
vmug
 
download it from here
download it from heredownload it from here
download it from here
webhostingguy
 
Moving to PCI Express based SSD with NVM Express
Moving to PCI Express based SSD with NVM ExpressMoving to PCI Express based SSD with NVM Express
Moving to PCI Express based SSD with NVM Express
Odinot Stanislas
 
Using preferred read groups in oracle asm michael ault
Using preferred read groups in oracle asm michael aultUsing preferred read groups in oracle asm michael ault
Using preferred read groups in oracle asm michael ault
Louis liu
 
UKOUG Tech15 - Deploying Oracle 12c Cloud Control in Maximum Availability Arc...
UKOUG Tech15 - Deploying Oracle 12c Cloud Control in Maximum Availability Arc...UKOUG Tech15 - Deploying Oracle 12c Cloud Control in Maximum Availability Arc...
UKOUG Tech15 - Deploying Oracle 12c Cloud Control in Maximum Availability Arc...
Zahid Anwar (OCM)
 
IMCSummit 2015 - Day 1 Developer Track - Evolution of non-volatile memory exp...
IMCSummit 2015 - Day 1 Developer Track - Evolution of non-volatile memory exp...IMCSummit 2015 - Day 1 Developer Track - Evolution of non-volatile memory exp...
IMCSummit 2015 - Day 1 Developer Track - Evolution of non-volatile memory exp...
In-Memory Computing Summit
 
New lessons in connection management
New lessons in connection managementNew lessons in connection management
New lessons in connection management
Toon Koppelaars
 
DAOS - Scale-Out Software-Defined Storage for HPC/Big Data/AI Convergence
DAOS - Scale-Out Software-Defined Storage for HPC/Big Data/AI ConvergenceDAOS - Scale-Out Software-Defined Storage for HPC/Big Data/AI Convergence
DAOS - Scale-Out Software-Defined Storage for HPC/Big Data/AI Convergence
inside-BigData.com
 
Revisiting CephFS MDS and mClock QoS Scheduler
Revisiting CephFS MDS and mClock QoS SchedulerRevisiting CephFS MDS and mClock QoS Scheduler
Revisiting CephFS MDS and mClock QoS Scheduler
Yongseok Oh
 
Running E-Business Suite Database on Oracle Database Appliance
Running E-Business Suite Database on Oracle Database ApplianceRunning E-Business Suite Database on Oracle Database Appliance
Running E-Business Suite Database on Oracle Database Appliance
Maris Elsins
 
Oracle Storage a ochrana dat
Oracle Storage a ochrana datOracle Storage a ochrana dat
Oracle Storage a ochrana dat
MarketingArrowECS_CZ
 
Simplifying Ceph Management with Virtual Storage Manager (VSM)
Simplifying Ceph Management with Virtual Storage Manager (VSM)Simplifying Ceph Management with Virtual Storage Manager (VSM)
Simplifying Ceph Management with Virtual Storage Manager (VSM)
Ceph Community
 
EDB Postgres DBA Best Practices
EDB Postgres DBA Best PracticesEDB Postgres DBA Best Practices
EDB Postgres DBA Best Practices
EDB
 

What's hot (20)

IMCSummit 2015 - Day 2 IT Business Track - Drive IMC Efficiency with Flash E...
IMCSummit 2015 - Day 2  IT Business Track - Drive IMC Efficiency with Flash E...IMCSummit 2015 - Day 2  IT Business Track - Drive IMC Efficiency with Flash E...
IMCSummit 2015 - Day 2 IT Business Track - Drive IMC Efficiency with Flash E...
 
Exadata Patching Demystified
Exadata Patching DemystifiedExadata Patching Demystified
Exadata Patching Demystified
 
Exadata 12c New Features RMOUG
Exadata 12c New Features RMOUGExadata 12c New Features RMOUG
Exadata 12c New Features RMOUG
 
Whitepaper: Running Oracle e-Business Suite Database on Oracle Database Appli...
Whitepaper: Running Oracle e-Business Suite Database on Oracle Database Appli...Whitepaper: Running Oracle e-Business Suite Database on Oracle Database Appli...
Whitepaper: Running Oracle e-Business Suite Database on Oracle Database Appli...
 
Storage and performance- Batch processing, Whiptail
Storage and performance- Batch processing, WhiptailStorage and performance- Batch processing, Whiptail
Storage and performance- Batch processing, Whiptail
 
Oracle Database Appliance - RAC in a box Some strings attached
Oracle Database Appliance - RAC in a box Some strings attached Oracle Database Appliance - RAC in a box Some strings attached
Oracle Database Appliance - RAC in a box Some strings attached
 
Impact of Intel Optane Technology on HPC
Impact of Intel Optane Technology on HPCImpact of Intel Optane Technology on HPC
Impact of Intel Optane Technology on HPC
 
3PAR and VMWare
3PAR and VMWare3PAR and VMWare
3PAR and VMWare
 
download it from here
download it from heredownload it from here
download it from here
 
Moving to PCI Express based SSD with NVM Express
Moving to PCI Express based SSD with NVM ExpressMoving to PCI Express based SSD with NVM Express
Moving to PCI Express based SSD with NVM Express
 
Using preferred read groups in oracle asm michael ault
Using preferred read groups in oracle asm michael aultUsing preferred read groups in oracle asm michael ault
Using preferred read groups in oracle asm michael ault
 
UKOUG Tech15 - Deploying Oracle 12c Cloud Control in Maximum Availability Arc...
UKOUG Tech15 - Deploying Oracle 12c Cloud Control in Maximum Availability Arc...UKOUG Tech15 - Deploying Oracle 12c Cloud Control in Maximum Availability Arc...
UKOUG Tech15 - Deploying Oracle 12c Cloud Control in Maximum Availability Arc...
 
IMCSummit 2015 - Day 1 Developer Track - Evolution of non-volatile memory exp...
IMCSummit 2015 - Day 1 Developer Track - Evolution of non-volatile memory exp...IMCSummit 2015 - Day 1 Developer Track - Evolution of non-volatile memory exp...
IMCSummit 2015 - Day 1 Developer Track - Evolution of non-volatile memory exp...
 
New lessons in connection management
New lessons in connection managementNew lessons in connection management
New lessons in connection management
 
DAOS - Scale-Out Software-Defined Storage for HPC/Big Data/AI Convergence
DAOS - Scale-Out Software-Defined Storage for HPC/Big Data/AI ConvergenceDAOS - Scale-Out Software-Defined Storage for HPC/Big Data/AI Convergence
DAOS - Scale-Out Software-Defined Storage for HPC/Big Data/AI Convergence
 
Revisiting CephFS MDS and mClock QoS Scheduler
Revisiting CephFS MDS and mClock QoS SchedulerRevisiting CephFS MDS and mClock QoS Scheduler
Revisiting CephFS MDS and mClock QoS Scheduler
 
Running E-Business Suite Database on Oracle Database Appliance
Running E-Business Suite Database on Oracle Database ApplianceRunning E-Business Suite Database on Oracle Database Appliance
Running E-Business Suite Database on Oracle Database Appliance
 
Oracle Storage a ochrana dat
Oracle Storage a ochrana datOracle Storage a ochrana dat
Oracle Storage a ochrana dat
 
Simplifying Ceph Management with Virtual Storage Manager (VSM)
Simplifying Ceph Management with Virtual Storage Manager (VSM)Simplifying Ceph Management with Virtual Storage Manager (VSM)
Simplifying Ceph Management with Virtual Storage Manager (VSM)
 
EDB Postgres DBA Best Practices
EDB Postgres DBA Best PracticesEDB Postgres DBA Best Practices
EDB Postgres DBA Best Practices
 

Similar to SQLintersection keynote a tale of two teams

Accelerating Ceph Performance with High Speed Networks and Protocols - Qingch...
Accelerating Ceph Performance with High Speed Networks and Protocols - Qingch...Accelerating Ceph Performance with High Speed Networks and Protocols - Qingch...
Accelerating Ceph Performance with High Speed Networks and Protocols - Qingch...
Ceph Community
 
VMworld 2014: Extreme Performance Series
VMworld 2014: Extreme Performance Series VMworld 2014: Extreme Performance Series
VMworld 2014: Extreme Performance Series
VMworld
 
Ceph Day Taipei - Accelerate Ceph via SPDK
Ceph Day Taipei - Accelerate Ceph via SPDK Ceph Day Taipei - Accelerate Ceph via SPDK
Ceph Day Taipei - Accelerate Ceph via SPDK
Ceph Community
 
Ceph Day Seoul - Ceph on All-Flash Storage
Ceph Day Seoul - Ceph on All-Flash Storage Ceph Day Seoul - Ceph on All-Flash Storage
Ceph Day Seoul - Ceph on All-Flash Storage
Ceph Community
 
Ceph Day KL - Ceph on All-Flash Storage
Ceph Day KL - Ceph on All-Flash Storage Ceph Day KL - Ceph on All-Flash Storage
Ceph Day KL - Ceph on All-Flash Storage
Ceph Community
 
Ceph Day Taipei - Ceph on All-Flash Storage
Ceph Day Taipei - Ceph on All-Flash Storage Ceph Day Taipei - Ceph on All-Flash Storage
Ceph Day Taipei - Ceph on All-Flash Storage
Ceph Community
 
Ceph Day Melbourne - Ceph on All-Flash Storage - Breaking Performance Barriers
Ceph Day Melbourne - Ceph on All-Flash Storage - Breaking Performance BarriersCeph Day Melbourne - Ceph on All-Flash Storage - Breaking Performance Barriers
Ceph Day Melbourne - Ceph on All-Flash Storage - Breaking Performance Barriers
Ceph Community
 
Inter connect2016 yps-2749_02232016_aspresented
Inter connect2016 yps-2749_02232016_aspresentedInter connect2016 yps-2749_02232016_aspresented
Inter connect2016 yps-2749_02232016_aspresented
Bruce Semple
 
Low-level Graphics APIs
Low-level Graphics APIsLow-level Graphics APIs
Low-level Graphics APIs
Johan Andersson
 
Ceph Day Tokyo -- Ceph on All-Flash Storage
Ceph Day Tokyo -- Ceph on All-Flash StorageCeph Day Tokyo -- Ceph on All-Flash Storage
Ceph Day Tokyo -- Ceph on All-Flash Storage
Ceph Community
 
Oracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningOracle R12 EBS Performance Tuning
Oracle R12 EBS Performance Tuning
Scott Jenner
 
Ceph Day Beijing - Ceph all-flash array design based on NUMA architecture
Ceph Day Beijing - Ceph all-flash array design based on NUMA architectureCeph Day Beijing - Ceph all-flash array design based on NUMA architecture
Ceph Day Beijing - Ceph all-flash array design based on NUMA architecture
Ceph Community
 
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA ArchitectureCeph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Danielle Womboldt
 
DPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitch
DPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitchDPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitch
DPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitch
Jim St. Leger
 
Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph
Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph
Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph
Ceph Community
 
Presentation architecting a cloud infrastructure
Presentation   architecting a cloud infrastructurePresentation   architecting a cloud infrastructure
Presentation architecting a cloud infrastructure
solarisyourep
 
Presentation architecting a cloud infrastructure
Presentation   architecting a cloud infrastructurePresentation   architecting a cloud infrastructure
Presentation architecting a cloud infrastructure
xKinAnx
 
OWF14 - Plenary Session : Thibaud Besson, IBM POWER Systems Specialist
OWF14 - Plenary Session : Thibaud Besson, IBM POWER Systems SpecialistOWF14 - Plenary Session : Thibaud Besson, IBM POWER Systems Specialist
OWF14 - Plenary Session : Thibaud Besson, IBM POWER Systems Specialist
Paris Open Source Summit
 
@IBM Power roadmap 8
@IBM Power roadmap 8 @IBM Power roadmap 8
@IBM Power roadmap 8
Diego Alberto Tamayo
 
Sparc m6 32 in-memory infrastructure for the entire enterprise
Sparc m6 32 in-memory infrastructure for the entire enterpriseSparc m6 32 in-memory infrastructure for the entire enterprise
Sparc m6 32 in-memory infrastructure for the entire enterprise
solarisyougood
 

Similar to SQLintersection keynote a tale of two teams (20)

Accelerating Ceph Performance with High Speed Networks and Protocols - Qingch...
Accelerating Ceph Performance with High Speed Networks and Protocols - Qingch...Accelerating Ceph Performance with High Speed Networks and Protocols - Qingch...
Accelerating Ceph Performance with High Speed Networks and Protocols - Qingch...
 
VMworld 2014: Extreme Performance Series
VMworld 2014: Extreme Performance Series VMworld 2014: Extreme Performance Series
VMworld 2014: Extreme Performance Series
 
Ceph Day Taipei - Accelerate Ceph via SPDK
Ceph Day Taipei - Accelerate Ceph via SPDK Ceph Day Taipei - Accelerate Ceph via SPDK
Ceph Day Taipei - Accelerate Ceph via SPDK
 
Ceph Day Seoul - Ceph on All-Flash Storage
Ceph Day Seoul - Ceph on All-Flash Storage Ceph Day Seoul - Ceph on All-Flash Storage
Ceph Day Seoul - Ceph on All-Flash Storage
 
Ceph Day KL - Ceph on All-Flash Storage
Ceph Day KL - Ceph on All-Flash Storage Ceph Day KL - Ceph on All-Flash Storage
Ceph Day KL - Ceph on All-Flash Storage
 
Ceph Day Taipei - Ceph on All-Flash Storage
Ceph Day Taipei - Ceph on All-Flash Storage Ceph Day Taipei - Ceph on All-Flash Storage
Ceph Day Taipei - Ceph on All-Flash Storage
 
Ceph Day Melbourne - Ceph on All-Flash Storage - Breaking Performance Barriers
Ceph Day Melbourne - Ceph on All-Flash Storage - Breaking Performance BarriersCeph Day Melbourne - Ceph on All-Flash Storage - Breaking Performance Barriers
Ceph Day Melbourne - Ceph on All-Flash Storage - Breaking Performance Barriers
 
Inter connect2016 yps-2749_02232016_aspresented
Inter connect2016 yps-2749_02232016_aspresentedInter connect2016 yps-2749_02232016_aspresented
Inter connect2016 yps-2749_02232016_aspresented
 
Low-level Graphics APIs
Low-level Graphics APIsLow-level Graphics APIs
Low-level Graphics APIs
 
Ceph Day Tokyo -- Ceph on All-Flash Storage
Ceph Day Tokyo -- Ceph on All-Flash StorageCeph Day Tokyo -- Ceph on All-Flash Storage
Ceph Day Tokyo -- Ceph on All-Flash Storage
 
Oracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningOracle R12 EBS Performance Tuning
Oracle R12 EBS Performance Tuning
 
Ceph Day Beijing - Ceph all-flash array design based on NUMA architecture
Ceph Day Beijing - Ceph all-flash array design based on NUMA architectureCeph Day Beijing - Ceph all-flash array design based on NUMA architecture
Ceph Day Beijing - Ceph all-flash array design based on NUMA architecture
 
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA ArchitectureCeph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
Ceph Day Beijing - Ceph All-Flash Array Design Based on NUMA Architecture
 
DPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitch
DPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitchDPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitch
DPDK Summit - 08 Sept 2014 - NTT - High Performance vSwitch
 
Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph
Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph
Ceph Day Seoul - AFCeph: SKT Scale Out Storage Ceph
 
Presentation architecting a cloud infrastructure
Presentation   architecting a cloud infrastructurePresentation   architecting a cloud infrastructure
Presentation architecting a cloud infrastructure
 
Presentation architecting a cloud infrastructure
Presentation   architecting a cloud infrastructurePresentation   architecting a cloud infrastructure
Presentation architecting a cloud infrastructure
 
OWF14 - Plenary Session : Thibaud Besson, IBM POWER Systems Specialist
OWF14 - Plenary Session : Thibaud Besson, IBM POWER Systems SpecialistOWF14 - Plenary Session : Thibaud Besson, IBM POWER Systems Specialist
OWF14 - Plenary Session : Thibaud Besson, IBM POWER Systems Specialist
 
@IBM Power roadmap 8
@IBM Power roadmap 8 @IBM Power roadmap 8
@IBM Power roadmap 8
 
Sparc m6 32 in-memory infrastructure for the entire enterprise
Sparc m6 32 in-memory infrastructure for the entire enterpriseSparc m6 32 in-memory infrastructure for the entire enterprise
Sparc m6 32 in-memory infrastructure for the entire enterprise
 

Recently uploaded

Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Zilliz
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
Pixlogix Infotech
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 

Recently uploaded (20)

Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 

SQLintersection keynote a tale of two teams

  • 1. High Performance and High Availability with SQL Server 2012 AlwaysOn Sumeet Bansal, Fusion-IO Kevin Kline, SQL Sentry
  • 2. 2 © SQLintersection. All rights reserved. http://www.SQLintersection.com Introduction A Tale of Two Teams Two rival teams … … each working to satisfy an important customer. What’s the hardware solution? What’s the software solution?
  • 3. 3 © SQLintersection. All rights reserved. http://www.SQLintersection.com The Customer  A real-world major financial institution headquartered in London.  A core banking application - credit card transactions from ATM and Branches  Requirement: 10,000 Business Transactions / sec (Not IOPs!)  Highly available using AlwaysOn across hundreds of nodes in many Availability Groups  ... AND IT LOOKS LIKE THIS AT LOAD... o
  • 4. 4 © SQLintersection. All rights reserved. http://www.SQLintersection.com Meeting the Requirements: Hardware  High Performance on SQL Server means tuning the FULL STACK.  Key Takeaway: This is NOT going to be easy… OS  SQL  CPU  HBA  NIC  Array  Cache  Spindles 
  • 5. 5 © SQLintersection. All rights reserved. http://www.SQLintersection.com First Surprise - Memory  At scale, SQL Server does a generally good job of memory management by default.  Some improvements are possible on large CPU/Memory boxes dedicated to SQL Server:  Lock Pages in Memory  Big performance gain!  Use gpedit.msc to grant it to SQL Service account  Large page Allocations (-TF834)  On Windows 2008R2 previous issues with this TF are fixed  Around 10% throughput increase  NUMA node memory distribution: Beware!  Set max memory close to box max if dedicated box available o
  • 6. 6 © SQLintersection. All rights reserved. http://www.SQLintersection.com Second Surprise - NICs  At scale, network traffic will generate a LOT of interrupts for the CPU  These must be handled by CPU Cores  Must distribute packets to cores for processing  Rule of thumb (OTLP): 1 NIC / 16 Cores  Watch the DPC activity in Taskmanager  Remove SQL Server (using affinity masking) from the NIC cores o
  • 7. 7 © SQLintersection. All rights reserved. http://www.SQLintersection.com Drive Selection - General  Number of files matter for SQL Server  TempDB and user database has multiple files, on segregated arrays  Other important configs:  NTFS allocation size at 64-KB; HBA queue depth at 64; Storport HBA Driver  Number of drives matter  More drives = more speed  True for both SAN and DAS  ... Less so for SSD, but still relevant (especially for NAND)  If designing for performance, make sure the topology can handle it!  Understand the path to the drives  Consider workload: Random or Sequential?  Key Takeaway: Validate and compare configurations prior to deployment
  • 8. 8 © SQLintersection. All rights reserved. http://www.SQLintersection.com Rules of Thumb – Disk IO  Traditional Spindle throughput  10K RPM – 100-130 IOPs, ‘full stroke’  15K RPM – 150-180 IOPs, ‘full stroke’  Can achieve 2x or more when ‘short stroking’ the disks (using less than 20% capacity of the physical spindle)  These are for random 8K I/O  Aggregate throughput when sequential access:  Between 90MB/sec and 125MB/sec for a single drive  If truly sequential, any block size over 8K will give you these numbers  Some 3.5” drives slightly faster than 2.5”  Approximate latency: 3-5ms  Cable speed  Theoretical: 1.5GB/sec  Typical: 1.2GB/sec  PCI-e v2 Bus  X4 slot: 1.5 – 1.8GB/sec  X8 slot: 3GB/sec  HBA speed  4Gbit – ~500MB/sec  8Gbit – ~1GB/sec on PCI-e X4 v2 bus  Typical: 350-400MB/sec on 4Gbit, doubled on 8Gbit u
  • 9. 9 © SQLintersection. All rights reserved. http://www.SQLintersection.com What’s Causing these Non-Disk Bottlenecks? Added disk pair Backplane limit 140 140 110 Added controller
  • 10. 10 © SQLintersection. All rights reserved. http://www.SQLintersection.com Understand the Full Stack to the drives  Key Takeaway: The deeper the topology, the greater latency, the more important the tuning  Best Practices:  Understand topology, potential bottlenecks and theoretical throughput of each component in the path!  Engage storage engineers early in the process  Two major topologies for SQL Server Storage  DAS – Direct Attached Storage  SAN – Storage Area Networks
  • 11. 11 © SQLintersection. All rights reserved. http://www.SQLintersection.com Traditional Centralized Architecture 11 Application CPU and Memory HBA Switches Target Adapters CPU and Memory RAID Controllers HDD/SSD SERVERS Active and Archive Data STORAGE (Performance Optimized)NETWORK Milliseconds Databases Virtualization Web-scale Latency and Processing Time
  • 12. 12 © SQLintersection. All rights reserved. http://www.SQLintersection.com Shared Data Decentralization 12 Active Data Application CPUs NAND Flash Raid Controller HDD/SSD SERVERS Latency and Processing Time Archive Data Microseconds Milliseconds Databases Virtualization Web-scale
  • 13. 13 © SQLintersection. All rights reserved. http://www.SQLintersection.com The SAN – Panacea to All IO Issues… ….YEAH RIGHT!  Green: Checkpoint, Red: tx/sec, Black: Disk Latency o
  • 14. 14 © SQLintersection. All rights reserved. http://www.SQLintersection.com DAS vs. SAN - Summary Feature SAN DAS Cost High, offset by better utilization Low, may waste space Flexibility More, abstraction allows online configuration changes Less, get it right the first time! Skills required Complex with steep learning curve Simple and well understood Additional Features Snapshots; Storage Replication; Thin Provisioning None Performance Not high performance technology High performance for small investment Reliability More, very high reliability Less, depending on RAID level Clustering Support Yes No (special implementations exist) So, which should we choose? SAN DAS o
  • 15. 15 © SQLintersection. All rights reserved. http://www.SQLintersection.com Let’s See What It Can Do! 1 x MS SQL Server 25 Billion Transactions/Day (Equivalent to the number of estimated Credit card transactions around the globe in a single day) http://www.fusionio.com/blog/powering-global-commerce-with-sql-server-iomemory/ 4 x 1.2TB
  • 16. Demo Turn difficult disk IO tuning into easy ioMemory plug-n-play.
  • 17. 17 © SQLintersection. All rights reserved. http://www.SQLintersection.com Meeting the Requirements: Software  Highly transparent instrumentation means monitoring the FULL STACK.  Key Takeaway: This is NOT going to be easy… OS  SQL  CPU  HBA  NIC  Array  Cache  Spindles  o v
  • 18. 18 © SQLintersection. All rights reserved. http://www.SQLintersection.com Instrumentation: PerfMon  Throughput: Measured in MB/sec or IOPs by PerfMon: Logical Disk  Disk Read Bytes / Sec  Disk Write Bytes / Sec  Disk Read / Sec  Disk Writes / Sec  Latency: Measured in milliseconds (ms) by PerfMon: Logical Disk  Avg. Disk Sec / read  Avg. Disk Sec / write  More on healthy latency values later  Key Takeway: For transparency, PerfMon gives a limited picture of performance. o
  • 19. 19 © SQLintersection. All rights reserved. http://www.SQLintersection.com Instrumentation: Profiler / Trace  High overhead  Lots of experience needed to filter the results  Deprecated! (But only for relational engine).  Key Takeway: Shows triggered events, but not a comprehensive view of whole system. Not a reliable long-term solution. o
  • 20. 20 © SQLintersection. All rights reserved. http://www.SQLintersection.com Instrumentation: DMVs -- SQL Server 2012 Diagnostic Information Queries, by Glenn Berry, @GlennAlanBerry -- http://sqlserverperformance.wordpress.com/ -- http://sqlskills.com/blogs/glenn/ -- Get total buffer used by DB for current instance SELECT DB_NAME(database_id) AS [Database Name], COUNT(*) * 8/1024.0 AS [Cached Size (MB)] FROM sys.dm_os_buffer_descriptors WITH (NOLOCK) WHERE database_id > 4 -- system databases AND database_id <> 32767 -- ResourceDB GROUP BY DB_NAME(database_id) ORDER BY [Cached Size (MB)] DESC OPTION (RECOMPILE);  Great information! Built in for SQL Server 2005+.  No history. No correlation. No interpretation.  Key Takeway: Very useful. Not very useable. o
  • 21. 21 © SQLintersection. All rights reserved. http://www.SQLintersection.com Instrumentation: Extended Events  Low overhead  Lots of experience needed to filter the results  How much memory or space? Other administrative questions to answer…  Key Takeway: Deep data, but is it actionable and proactive information? o
  • 22. 22 © SQLintersection. All rights reserved. http://www.SQLintersection.com Instrumentation: Notifications  Per server setup  Requires SQLAgent service  Can only capture error msg/lvl, WMI metrics, PerfMon metrics  Key Takeway: Alerts are available, but high support requirements and limited proactivity. o
  • 23. Demo Bringing all the instrumentation together for meaningful, actionable performance information. o w
  • 24. 24 © SQLintersection. All rights reserved. http://www.SQLintersection.com Meeting the Requirements: HA  Need more flexibility than in legacy approaches like log shipping and database mirroring.  Need a shared nothing architecture.  Key Takeaway: This is not too bad UNTIL we scale up … OS  SQL  CPU  HBA  NIC  Array  Cache  Spindles 
  • 25. 25 © SQLintersection. All rights reserved. http://www.SQLintersection.com Availability Groups Fundamentals o
  • 26. 26 © SQLintersection. All rights reserved. http://www.SQLintersection.com Special Considerations: AlwaysOn  Granular control and some visibility into AlwaysOn through SSms Rt- Click  Show Dashboard.  Designed for small scale implementations.  As with earlier tools, user carries the risk and requirement for expertise. o
  • 27. Demo HA + DR management and monitoring at scale. o x
  • 28. 28 © SQLintersection. All rights reserved. http://www.SQLintersection.com How Did We Do It?OS  SQL  CPU  HBA  NIC  Array  Cache  Spindles  OS + SQL  CPU  Fusion-io + SQL Sentry 
  • 29. 29 © SQLintersection. All rights reserved. http://www.SQLintersection.com References  Thomas Kejser, SQLCAT, and high performance IO tuning:  http://blog.kejser.org/tag/sqlcat/  http://blog.kejser.org/  Jonathan Kehayias & xEvents:  http://www.sqlskills.com/blogs/jonathan/category/extended-events/  Joe Sack & AlwaysOn:  http://www.sqlskills.com/blogs/joe/answering-questions-with-the- alwayson-dashboard/  SQLPerformance.com (Jonathan Kehayias) instrumentation overhead analysis:  http://www.sqlperformance.com/2012/10/sql-trace/observer-overhead- trace-extended-events
  • 30. 30 © SQLintersection. All rights reserved. http://www.SQLintersection.com Review  High performance IO is very hard when restricted to disk-only architectures.  ioMemory from Fusion-IO is the solution!  Highly transparent monitoring and alerting, especially for HA, is very hard with native tools and features.  Performance Advisor from SQL Sentry is the solution!  Visit our booths to see the latest releases and sign up for free trials and demonstrations!
  • 31. Don’t forget to enter your evaluation of this session using EventBoard! Questions? Thank you!

Editor's Notes

  1. Interestingly, the default configuration of the server is generally quite good. Even at very high scale there is not much additional work that can be done. The closest you get to a magic: make SQL Server go faster traceflag is 834 (http://support.microsoft.com/kb/920093 and http://msdn2.microsoft.com/en-us/library/aa366720.aspx) for Windows large-page allocations for the buffer pool.If you see a flat node, it will fill up eventually if you start doing enough work in SQL.
  2. On heavily OLTP systems, there’s enough NIC traffic that they need their own CPU cores to process the TCP work. Use affinity mask to segregate the NIC cores.Increasing connections to ~6000 (users had think time), you’ll started seeing waits on THREADPOOLSolution: increase sp_configure ‘max worker threads’Probably don’t want to go higher than 4096Gradually increase it, default max is 980Avoid killing yourself in thread management – bottleneck is likely somewhere else
  3. (Should be around 4:30 pm)PCI-e v1 busX4 slot: 750M/secX8 slot: 1.5GB/secX16 – fast enough, around the 3GB/secSome “v2 compliant” PCI-e bus still run at v1 speeds!
  4. Interesting Shape, what’s causing it?
  5. The hardware between the CPU and the physical drive is often complexDifferent topologies, depending on vendor and technologyTwo major topologies for SQL Server StorageDAS – Direct Attached StorageStandards: (SCSI), SAS, SATARAID controller in the machinePCI-X or PCI-E direct accessSAN – Storage Area Networks Standards: iSCSI or Fibre Channel (FC)Host Bus Adapters or Network Cards in the machineSwitches / Fabric access to the diskSAN &amp; Tiered Storage ArraysSANData is explicitly placed on various disk groups which the admin must track.Moving data between tiers is manual and typically offlineGranularity is whatever the admin decides to move.Depends on the admin tracking storage hot spots and usageTiered SANArray tracks usage patterns and automatically moves data between storage tiers.Data movement is in the background and fully onlineGranularity is LUN today, moving to finer-grainedDepends on the array, tracking storage hot spots and usage
  6. (Should be around 4:45-4:50 pm)
  7. (Should be around 5:00 – 5:10 pm)
  8. First image = basic AG for high availability and disaster recoverySecond image = Node and File Share Majority quorum modelThird image = Node Majority quorum model
  9. These are the default tools.
  10. Open up the Always On view for Instance/Group Matrix. Illustrate the thick green lines from SQL2 to SQL4.Start the job on SQL2, “Keynote workload”. The lines will begin to turn red. Discuss how the IO load on SQL2 (Fusion-IO) is backing up on SQL4 (slow disks).Start the job on SQL1, “Keynote move C/F to SQL1”. Takes a couple minutes. Nodes shut down then flip over to SQL1. The restore to create the database file is super fast. Super-low latency because of Fusion-IO. May have time to run “Keynote workload” again on the SQL1 after the flip.Start the job on SQL1, “Revert”. Takes even more time. Main point here is how long it takes because we have to restore and reinitialize database on the slow disks. Then it may not finish in time because the initialization and restore take so much longer.