+ All Categories
Home > Technology > Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

Date post: 20-Aug-2015
Category:
Upload: atidan
View: 2,104 times
Download: 1 times
Share this document with a friend
Popular Tags:
102
BLAZING-FAST PERFORMANCE Mission Critical Confidence
Transcript
Page 1: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

BLAZING-FAST PERFORMANCE

Mission Critical Confidence

Page 2: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

THE FANTASTIC 12 OF 2012

4 3 2 1

11 12 10 9

8 5 7 6

Page 3: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

BLAZING-FAST PERFORMANCE GAIN BREAKTHROUGH & PREDICTABLE PERFORMANCE BACKED BY INDUSTRY-LEADING BENCHMARKS

Page 4: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

XVELOCITY MEMORY OPTIMIZED COLUMNSTORE INDEX Boosts query performance by up to 100x

Page 5: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

WHAT IS A COLUMNSTORE INDEX?

Page 6: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

HOW DOES IT WORK? – ROWS VS. COLUMNS

ID Name Region

1 Phillip West

2 Pam East

3 Cindy West

4 Mohamed Canada

5 Tim East

1 Phillip West

2 Pam East

3 Cindy West

4 Mohamed Canada

5 Tim East

Row Store

Column Store

Phillip Pam Cindy Mohamed Tim

1 2 3 4 5

West East West Canada East

Page 7: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

EXAMPLE QUERY

Page 8: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

INDEX CREATION AND STORAGE

A B C D

Page 9: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 10: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 11: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 12: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 13: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

I/O AND CACHING

Page 14: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

DATA REDUCTION

Early segment elimination based on segment metadata Min and max values stored in metadata for each segment

Simple filters evaluated in storage engine during CS index scan Conjunctions of comparisons, in-list

Bitmap filters Evaluated during index scan

Built by Hash Table Build operator

Page 15: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 16: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

LET THE QUERY OPTIMIZER DO THE WORK

Optimizer makes a cost-based decision

Data access method Columnstore index

Clustered (row-based) index

Nonclustered (row-based) index

Heap

Processing mode Batch mode

Row mode

Page 17: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 18: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

COLUMNSTORE INDEX OBSERVATIONS

Page 19: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

DOUBLING OF THROUGHPUT IN BENCHMARK TEST SQL Server 2012 Columnstore Indexes

Test System Fast Track Data Warehouse 3.0 HP DL380 reference architecture

SQL Server 2008 R2

20 TB data warehouse

2.4 GB/s throughput on 1TB benchmark schema

Configuration Changes Upgrade to SQL Server 2012

Apply Columnstore indexes to benchmark schema

No query changes

No hardware changes

Page 20: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 21: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

LOADING NEW DATA

Data can not be directly modified in a table with a

Columnstore index

Partition switching is allowed

Ways to load data: Disable index, update (add/delete data), rebuild index

Switch in new partition

Page 22: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

BEST PRACTICES FOR LOADING

Switch-in a partition for each load, or

Disable, update, rebuild index

Query on Columnstore table

Query on rowstore “delta” table

Page 23: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 24: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 25: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 26: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

PARTITION SWITCHING EXAMPLE (PART 4)

Page 27: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 28: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

Build CS index on fact tables

Consider for large dimension tables

Don’t use to seek into a row

Order of listed columns not important

Page 29: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

Star joins

Inner joins

Group By

Page 30: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

COLUMNSTORE INDEX BEST PRACTICES Building Columnstore Indexes

Include all “relevant” table columns in the columnstore index Avoid completely unique fields

Avoid Unique identifiers

Avoid Comment field

Use columnstore indexes on only larger fact and dimension tables

Page 31: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

COLUMNSTORE INDEX BEST PRACTICES (CONT.) Querying Columnstore Indexes

Structure queries as *star* joins maximizing grouping/aggregation benefits

Avoid joins & filters using strings against columns of columnstore indexed tables

Minimize queries using “Outer join”, “Union all”, and “Not in”

Lean towards integers, surrogate keys, and *star schema*

Leverage table partitions

Page 32: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

COLUMNSTORE INDEX BEST PRACTICES (CONT.) Settings and Memory Management

Maximum Degree of Parallelism (MAXDOP) No higher than 32, 16-24 sweet spot

Resource Governor Memory Grant for workload groups Higher than normal, Columnstore queries need lots of memory

Page 33: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

COLUMNSTORE INDEX BEST PRACTICES (CONT.) Settings and Memory Management (cont.)

Maximum server memory No higher than 92% of total available RAM

Page 34: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

COLUMNSTORE INDEX BEST PRACTICES (CONT.) Settings and Memory Management (cont.)

Trace Flag T834 and “lock pages in memory” Do not use if you are using columnstore indexes.

(Until Cumulative Update in November)

Page 35: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

ADDITIONAL RESOURCES

Columnstore FAQ: http://social.technet.microsoft.com/wiki/contents/articles/sql-server-

columnstore-index-faq.aspx

Includes a resource list

http://social.technet.microsoft.com/wiki/contents/articles/sql-server-columnstore-

index-faq.aspx#More_details_on_columnstore_technology

Columnstore Tuning Guide: http://social.technet.microsoft.com/wiki/contents/articles/sql-server-

columnstore-performance-tuning.aspx

Page 36: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 37: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SCENARIO: CONSISTENT PERFORMANCE WITH RESOURCE GOVERNOR

Page 38: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SCHEDULER LOAD BALANCING CHANGES

Page 39: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SCENARIO: MULTI-TENANCY WITH RESOURCE GOVERNOR

Page 40: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

CONTINUED ENHANCEMENTS Blazing-fast queries via columnar architecture with high compression rates

Page 41: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

FULL TEXT SEARCH IMPROVEMENTS IN SQL SERVER 2012

• Improved Performance and Scale:

• Scale-up to 350M documents

• iFTS query perf 7-10 times faster than in SQL Server 2008

• Worst-case iFTS query response times < 3 sec for corpus

• At par or better than main database search competitors

• New Functionality:

• Property Search

• customizable NEAR

• New Word Breakers: update existing WB, add Czech and Greek

• Innovation in Search:

• Semantic Similarity Search

Page 42: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

FULL TEXT SEARCH PERFORMANCE & SCALE IMPROVEMENTS

• Architectural Improvements

• Improved internal implementation

• Queries no longer block Index updates

• Improved Query Plans:

o Better Plans for common queries

o Fulltext predicate folding

o Parallel Plan execution

• Index and Query tested on scale up to 350Million documents with <

~2 Sec Response

• ~3X better w/o DML and ~9X better with DML throughput

• Scale easily with increasing number of connections

Page 43: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

FTS CODE IMPROVEMENTS

Page 44: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

FULLTEXT PROPERTY SCOPED SEARCH

• Setup once per database instance to load the office filters

exec sp_fulltext_service 'load_os_resources',1

go

exec sp_fulltext_service 'restart_all_fdhosts'

go

• Create a property list

CREATE SEARCH PROPERTY LIST p1;

• Add properties to be extracted

ALTER SEARCH PROPERTY LIST [p1] ADD N'System.Author' WITH

(PROPERTY_SET_GUID = 'f29f85e0-4ff9-1068-ab91-08002b27b3d9',

PROPERTY_INT_ID = 4, PROPERTY_DESCRIPTION = N'System.Author');

• Create/Alter Fulltext index to specify property list to be extracted

ALTER FULLTEXT INDEX ON fttable... SET SEARCH PROPERTY LIST = [p1];

• Query for properties

SELECT * FROM fttable WHERE CONTAINS(PROPERTY(ftcol, 'System.Author'), 'fernlope');

New Search Filter for Document Properties CONTAINS (PROPERTY ( { column_name }, 'property_name' ), ‘contains_search_condition’ )

Page 45: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

FULL-TEXT CUSTOMIZABLE NEAR

OLD NEAR SYNTAX select * from fttable where contains(*, 'test near Space')

NEW NEAR USAGES

• SPECIFY DISTANCE select * from fttable where contains(*, 'near((test, Space), 5,false)')

• REDUCE DISTANCE select * from fttable where contains(*, 'near((test, Space), 2,false)')

• ORDER OF WORDS IS SPECIFIED AS IMPORTANT select * from fttable where contains(*, 'near((test, Space), 5,true)')

Page 46: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 47: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

FTS THROUGHPUT & EXECUTION TIME

Page 48: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

FTS THROUGHPUT ON REAL WORKLOAD 2X Query performance improvement compared with SQL Server 2005

Page 49: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SCALE-UP: FULL-TEXT SEARCH

Queries over 350M documents database and random DMLs running in background.

Beating SQL Server 2005 with a scale factor more than 2x and with avg 60x times better throughput

2012

2005/8

2005/8 vs. 2012

Page 50: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SCALE-UP: FULL-TEXT SEARCH

Query avgExecTime (ms) under various number of connections (50 ~ 2000 users) for customer playback benchmark

2005/8

2005/8 vs. 2012

2012

Page 51: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 52: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SERVER PLATFORMS – MANY CORE PROCESSORS

Commodity hardware on x64 surpassed performance requirements of a lot of customers and will continue to increase throughput dramatically

Most recent generation of processors look like: Intel Xeon E5 26xx: 1 socket=8 cores=16 threads

Intel Xeon E7 87xx: 1 socket=10 cores=20 threads

AMD Opteron 617x: 1 socket=16cores=16threads

2-socket server does have 32 CPU threads

4-socket server does have 64 (AMD)/80 CPU threads

8-socket server does have 160 CPU threads (Intel only)

New Intel Ivybridge-EX expected next year. Expect up to 30 CPU threads per socket

Expected that in a few years we are going to look into 25-core processors

Page 53: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SERVER PLATFORMS – MANY CORE PROCESSORS

Experience was that moving up with many more cores from processor generation to processor

generation, single CPU thread performance remained the same or even fell back

Performance of a single CPU thread often vital for queries which are single threaded

Other sensitive areas critical sections within SQL Server. E.g. Writing into the Log Buffer,

Lockhash, etc

Looking at Single CPU performance using an ISV benchmark which measures a unit of SAPS

looks like:

Large proprietary Unix server even worse:

Sun SPARC M9000, 32 sockets, 256 cores,512 CPUs: 340SAPS/CPU

IBM Power 795, 32 sockets, 256 cores,1024 CPUs: 650SAPS/CPU

IBM Flex System p460 , 4sockets, 32 cores, 128 CPUs: 730SAPS/CPU

IBM Power 795, 16 sockets, 128 cores, 512 CPUs: 750SAPS/CPU

HP DL980, 8 sockets, 80 cores, 160 CPUs: 860SAPS/CPU

HP DL580, 4 sockets, 40 cores, 80 CPUs: 920SAPS/CPU

HP DL380 Gen8, 2 sockets, 16 cores, 32 CPUs: 1340SAPS/CPU

Page 54: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SERVER PLATFORMS – HYPERTHREADING

Learnings: Current implementation of Intel Simultaneous HT seems to provide 20-30% better

throughput under most types of workloads

New Intel Hyperthreading did show throughput performance increase under all possible SQL Server workloads

Certainly does not speed up a single batch where none of the queries can be executed in parallel

Throughput increase usually in the area of 20-30% means per CPU thread performance drops

Page 55: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SERVER PLATFORM - NUMA

What is NUMA? Non-Uniform-Memory-Access

Which hardware uses it? AMD and Intel based architectures of Opteron and Xeon

What is the principle problem for applications like SQL Server with NUMA architectures Memory Access time varies dependent on local memory access or remote memory access

Applications like SQL Server need to balance memory allocations over different

NUMA nodes

Page 56: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SERVER PLATFORM – NUMA

Page 57: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SERVER PLATFORM – NUMA

What is so special? Usually ‘remote’ memory access is 3-5 times slower than ‘local’ memory access

Especially in chipsets >4 sockets one can eventually get 2 steps to memory

node furthest away

Conclusion Software needs to be aware of hardware architecture

Windows and SQL Server adapted massively over the last 10 years to keep vital

structure NUMA or even CPU aligned in order to provide local memory access

Every release of both products gets improvements in this space – continuous

work in that space

Page 58: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SERVER PLATFORM – NUMA

How does SQL Server recognize NUMA configuration?

Hardware Vendors describe NUMA processor and memory configuration in HAL via SRAT interface to Windows

SQL Server checks hardware configuration via Win32 APIs and configures to NUMA accordingly

Standard by hardware vendors today: Intel Xeon E5: 1-socket = 1 NUMA node

Intel Xeon E7: 1-socket = 1 NUMA node

Intel Xeon 56xx: 1-socket = 1 NUMA node

AMD Opteron 61xx: 1-socket = 2 NUMA nodes

AMD Opteron 62xx: 1-socket = 2 NUMA nodes

Page 59: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

MEMORY

Memory for commodity is relatively cheap

No reason not to equip these servers with ample memory

In typical scenarios 6-8GB per processor core is good

Eventually more needed for specific OLAP purposes when data should remain in memory

E.g. SQL Server 2012 Column Store

Column Store keeps the data in segments of 4-16MB

One segment at least per column

Hence single I/Os to load a segment are taking longer

Desire to keep the segments of column store as long as possible in the cache

Page 60: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

DISK SUBSYSTEM – ROTATING MEDIA

Volume over last 10 years grew by 100 times. Disk access times only decreased by

factor 10. E.g.: 1990: Seagate Hard Disk could provide 37.5 IOPS/GB volume

2007: Seagate Hard Disk could provide 2.4 IOPS/GB volume

Sizing of # of disks in high-end systems is not a matter of predicted data volume but

matter of expected I/O workload and I/O volume

Rotating 2.5’’ 15K RPM is good to deliver around 150 -200 random reads of 8KB size with

response times of <10ms

Sequential Read bandwidth around 10 times higher than random read bandwidth. E.g. Read

3TB from one rotating spindle: Takes 31 days with 140 random IOPS of 8KB

Takes 8.3h reading sequentially

No increase in RPM expected anymore – Major SAN vendors use 10K RPM

Only slow improvements in seek times in the future

Price: <<USD 1/GB. Power: 7-15W

Page 61: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

DISK SUBSYSTEM – SSD, ETC

Major difference between consumer products (Laptop/Desktop) and server storage Laptop/Desktop are Multi Layer Cells( MLC), less sophisticated write logic results in lower lifetime with costs of around

USD 1/GB

Server Storage products are eMLC with more sophisticated write logic providing higher lifetime (MTB) with a price of

around USD 5-6/GB

Server Storage products are Single Layer Cell with extreme sophisticated write logic providing high lifetime (MTB) with a

price of around USD >10/GB

Consume between 1-3 Watt per unit

Mostly NAND based Flash devices

Laptop/Desktop MLCs are NOT suitable for servers and applications usually running on a server

Minimum required is eMLC

Page 62: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

DISK SUBSYSTEM – SSD

Common capabilities of SSDs and other non-rotating media: Read rate often factor 20-40 times higher than rotating media with dramatically

lower latency

Especially for SLCs write latency similar to latency of rotating media by SAN

Cache

Exercises with different workloads proofed that moving from rotating spindles

to SSD can reduce # of units by factor of 10 with same and often even better

I/O latency

Reduction provides large boost in Power Savings

Page 63: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

DISK SUBSYSTEM – SSD

What to use them for in SQL Server? Log File: shows great effect in cases where limit of outstanding log I/Os (128 since SQL Server 2008)

and/or amount of outstanding bytes (3.84MB since SQL Server 2008) is hit despite having latencies 3-

4 ms – usually seen in workload with massive data changes in highly concurrent manner or massive

parallel inserts

Ideal to be covered with Direct attached SSD, FusionIO or Violin type of storage

TempDB: Usually shows great effects in workloads which either perform massive hash spill outs or load

tempDB with a lot of versioning traffic (read committed snapshot, snapshot isolation).

Ideal to be covered with Direct attached SSD or FusionIO

Data files: shows great effect when massive amount of random I/O are requiring large amounts of

disks which are in not ratio to the volume of data

Ideal are all sorts of SSD

For SSDs in SAN still expect latencies for random I/O in the space of 2-3ms Reason is the stack of Hardware/SW before you hit the spindle

Page 64: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

DISK SUBSYSTEM – SAN/NAS

Configurations of different devices by different vendors always is different and requires

proprietary tools

Don’t overestimate huge SAN/NAS caches. Real life cache hit ratio around 30-40%

Throughput can be impacted by SAN Replication Test I/O throughput carefully with any type of SAN replication. Especially sequential writes into SQL Server

Transaction Log

Check HBA Queue Depth – Default of 32 usually too low. Good values 128 to 256

(dependent on vendor)

Configure for multipathing and workloadbalancing

Scale volume throughput with # of adapters

Storage-Tiering by SAN providers using SSDs combined with different grade rotating

spindle media not yet proven to work great under all load profiles of business applications

Page 65: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

DISK SUBSYSTEM - VOLUMES

In Windows Server 2012, SMB got improved majorly

SQL Server 2012 will support deployment of database and transaction log files over Windows Server 2012 SMB

Windows Server 2012 SMB 3.0 doesn’t lose any in flight IOPS anymore

Hence alternative model of storage backend could be: Two clustered servers connecting to shared JBODs acting as file server

SQL Server instance deployed on different nodes placing accessing their files

over SMB from file server

Page 66: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

NETWORK - INTRODUCTION

10GBit Ethernet adapters are commodity

10GBit NICs are lowering demand for # of NICs. However keep eventual failure

of NIC in mind (minimum 2 NICs)

Be careful… Network can become a bottleneck even if bandwidth not

exhausted. Possible factors: Excessively high interrupts/sec

DPCs localized to single processor

Processor handling interrupts/DPCs is maxed out

SQL Server IO completion thread overburdened

With Network intensive client/server applications we usually don’t see issues in

regards to bandwidth, but more around interrupt/DPC handling

With applications loading intensive data, the bandwidth is becoming important

Page 67: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

PERFORMANCE

Page 68: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

PERFORMANCE FEATURES

Page 69: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

TOP STATISTICS

Page 70: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SQL SERVER PROOF POINTS

Page 71: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

World’s biggest publicly listed online gaming platform

15 million page views and up to

980,000 unique users a day

Environment 5 DBA’s & 1 Database Architect

100+ SQL Server Instances

120+ TB of data,

1,400+ Databases

1,600+ TB storage

5,000+ GB RAM

450,000+ SQL Statements per second on a single server

500+ Billion database transactions per day

No downtime allowed

Page 72: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

HIGH AVAILABILITY USING SQL SERVER 2012

Page 73: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

Scale UP and Scale OUT Scale UP main financial transactions

Scale OUT other application functions

High Availability 3 data centers

2 Synchronous Availability Group copies adds 1-4 ms per transaction

Replication for reporting

Log Shipping for DR replaced by Async Availability Group replica

Backup 2 TB per hour over the network http://sqlcat.com/whitepapers/archive/2009/08/13/a-technical-case-study-fast-and-reliable-backup-

and-restore-of-a-vldb-over-the-network.aspx

Case study http://www.microsoft.com/casestudies/Microsoft-SQL-Server-2012/bwin.party/Company-Cuts-

Reporting-Time-by-up-to-99-Percent-to-3-Seconds-and-Boosts-Scalability/710000000087

Page 74: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

GEO-DR USING SQL SERVER 2012

High-Volume OLTP application

Data Centers 500 miles apart

Basis for the “Last Man Standing” whitepaper

Page 75: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

LG ELECTRONICS

Customer Profile LG Electronics is a manufacturing corporation with more than 115 businesses worldwide and more

than 80,000 employees

Business Situation New demands for analysis based on Demand Forecasting System, the heart of SCM are Increasing.

Solution To meet this challenge, LG Electronics built demand forecasting related BI system based on SQL Server

2008 R2, offering much improved performance and convenience than the legacy system.

Benefits Improved transaction performance

Deployed adaptable BI with effective investment

Increased usage value of BI system

Page 76: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 77: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

KEY FACTS

Technologies used: Analysis Services 2008 R2 – writeback

Custom application built by Wise, local ISV

Key Facts: Database Size: 5TB

Avg query response time: 30 seconds.

3,500 registered users with average 11 concurrent users.

LGE used writeback for the bottom-up level changes when they used t-sql updates and MOLAP

partitions for the top-down changes to balance performance levels.

The cubes were partitioned by divisions so each one can process their partitions frequently without affecting

the rest.

History is 5 years * 80 million * 6 = 2.4 billion records

Data is increasing daily by minimum of 100 thousand to maximum of 5 million cells.

Page 78: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SCALING OUT SQL SERVER

How do you: Manage an 80 TB database

Back up a petabyte

Build an index on a trillion row table

Answer Break it into manageable size pieces

Page 79: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 80: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 81: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 82: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

PDW APPLIANCE Compute Rack

Page 83: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

INTEGRATION WITH PDW: “HUB AND SPOKE”

Page 84: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SCALABILITY CONCEPT: SODA – SERVICES ORIENTED DATABASE ARCHITECTURE

Separate your data by business function Example: HR, Payroll, Accounting, etc

Or by user function Example: Login, chat, email, pictures, etc

Each function goes in a different database

A common database for shared tables

Page 85: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SERVICE BROKER

Service broker (SB) is asynchronous, transactional, message, queuing embedded

into sqlservr.exe Asynchronous: parallel stored procedures

Queuing: handle peak workloads

Distributed: scalability

Decoupled: availability

Features Automatic activation

Single queue with multiple readers

Related messages locked and processed by the same reader

Cross database, instance and machine boundaries

without changing application code

Any program issuing TSQL, (e.g., a C# middle

tier Windows Service), is a SB endpoint

Page 86: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck
Page 87: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

ENABLE LIVE-LIVE USING SERVICE BROKER

SB bi-di data sync across DCs

R/W on both sites

transparently

Application load balancing

cross DCs

Local HA using MSCS

Real-time DR with zero

downtime if one DC goes

offline for planned

maintenance or unplanned

outages

Availability: ~99.999%

Page 88: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

ACTIVE-ACTIVE 5 9’S – IN PRODUCTION

Local LB: NetScaler SQLMonitor to load balance between local DB clusters Minimize chance of user

latency increase due to DC

offline..or mobile users from

difference geo

Reduce the need to DC failover

for planned maintenance

4 x 3 SB routes

Removed log shipping

Page 89: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

ACTIVE-ACTIVE 5 9’S – AG

Always On non-shared storage Additional data protection

Faster failover

Multi-cast

NetScaler SQLMonitor for local load balancing Site resiliency

Page 90: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

NEW CAPABILITIES IN SQL SERVER 2012

Message_enqueue_time How long a message has been waiting in a destination queue

Option to disable poison message handling Allow application to CATCH the error without disabling the queue with its own

poision message handling

Multicast Sending message to multiple destinations without multiple SEND statements

SEND

ON CONVERSATION (@conv_handle_1 [,.. @conv_handle_n]) [ MESSAGE TYPE message_type_name ]

[ ( message_body_expression ) ]

AlwaysOn Support via AG listener SSB route specifics a VIP

VIP maps to the primary of an AG

Automatic re-connection after failover

Page 91: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

INDUSTRY LEADERS RUN ON SQL SERVER

Page 92: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

TEMENOS’S T24 SCALES TO 11,500 TRANSACTIONS / SEC BENCHMARK

TEMENOS T24 is a fully integrated, modular core

banking solution that covers a broad spectrum of

functional requirements for the retail, private,

corporate, universal, and Islamic banking and

microfinance sectors.

Benchmark testing was completed in September, 2011 Temenos’s T24

SQL Server 2012

Database server with Intel Xeon processor E7-2870 (80x2.4 GHz)

The results beat the performance goals 11,592 transactions / sec

Below 75% CPU utilization during peak

Page 93: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

OPENTEXT’S ECM SUITE SCALES TO 14.8 MILLION MESSAGES BENCHMARK

OPENTEXT ECM SUITE, the flagship product from

OpenText, is designed to help customers create

value from content by empowering people,

fostering process agility, and controlling the risk

and cost of content.

Benchmark testing was completed in February, 2012 OpenText ECM Suite

SQL Server 2012

The results beat the performance goals Peak email ingestion: 14.8 million messages in 24 hours

Concurrent email ingestion: 82 messages per second sustained

Page 94: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

MISYS’S SUMMIT FT SCALES TO 400,000 TRANSACTIONS BENCHMARK

Summit FT is the Misys cross-asset, front-to-back

solution that specializes in derivatives and structured

products for global investment banks.

Benchmark testing was completed in January, 2012 Misys’s Summit FT

SQL Server 2012

Database server with Intel Xeon processor E7-4870 (8x2.40 GHz)

The results beat the performance goals Peak loads: Burst 5,000 trades FX Spot and FX Swap

Sustained loads: 400,000 trades a day FX Spot and FX Swap

Page 95: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

MISYS’S OPICS PLUS SCALES TO 50,000 TRADES BENCHMARK

Opics Plus is a single platform, fully integrated

treasury and capital markets solution with rich

straight-through-processing (STP), treasury and back-

office functionality.

Benchmark testing was completed in February, 2012 Misys’s Opics Plus

SQL Server 2012

NEC Express 5800a-E database server with Intel Xeon processor

E7-4870 (2.4 GHz)

The results beat the performance goals Batch processing: 50,000 trades in 19 minutes

Trade entry through Web: 260 trades per second

Page 96: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

CSC’S INTEGRAL SCALES TO 1,000 CONCURRENT USERS BENCHMARK

CSC’S INTEGRAL is a comprehensive administration

suite for life insurance and annuities/pensions,

property and casualty (P&C), general insurance, and

group insurance.

Benchmark testing was completed in March, 2012 CSC’s Integral property and casualty (P&C) software

SQL Server 2012

Database server with Intel Xeon 4-socket processor (32x2.0 GHz)

The results beat the performance goals Average only 10 percent CPU utilization using less then 20 GB RAM

Linear Scalability:

1 application server test (333 concurrent users with 497 business transactions

per minute)

5 application servers test (1,000 concurrent users with 1,952 business transactions

per minute)

Page 97: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

SIEMENS PLM SOFTWARE’S TEAMCENTER 10,000 CONCURRENT USER BENCHMARK

Teamcenter is the leading mission-critical

product management lifecycle (PLM) solution

used by tier-1 enterprises around the world

Benchmark testing was run in Nov, 2011 Teamcenter 8.3

SQL Server 2012

NEC Express 5800/A 1080a database server with Intel Xeon processor

E7-8870 (2.4 GHz)

The results were impressive! Teamcenter scaled to 10,000 concurrent users with

excellent performance

Average CPU utilization was nearly linear with concurrent user count

Page 98: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

REDKNEE TCB 250-MILLION SUBSCRIBER BENCHMARK

Redknee is a leading global provider of real-time

converged billing and customer care solutions

for communications service providers

Benchmark testing was completed in Dec, 2011 Redknee Turnkey Converged Billing (TCB)

SQL Server 2012

NEC Express5800/A1080a database server with Intel Xeon processor

E7-8870 (2.4 GHz)

The results beat the performance goals Generated 26 million invoices within a 6 hour billing cycle

Mediated 4.9 billion call detail records (CDRs) within 12 hours,

showing a nearly linear scalability as number of subscribers increased

Processed an average of 1,249 invoices/sec at peak

Mediated an average of 113,402 CDRs/sec at peak

Page 99: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

A FEW CASE STUDIES…

• New 300K employee Kronos Work Force Central on SQL Sever 2008 benchmark published

• Customer wins include worlds largest retailers Costco Wholesale and , Home Depot

• New benchmark showing PTC Windchill up to 10% faster on SQL Server than on Oracle

• Customer wins include Quanta Computers (largest Taiwan computer maker), Penske Racing

• Successful 10M account benchmark shows 3,100 tps at significant cost savings over Oracle/IBM

• Customer wins include SinoPac Holdings (largest Taiwan bank), BSM (Indonesia’s largest Islamic bank)

• Siemens PLM software performs scales to 5,000 concurrent users on SQL Server 2008

• Customer wins include Volvo Aero, Sandvik, Callaway Golf

• Benchmark results show ENOVIA scales up to at least 5,000 collaborative users on SQL Server 2008

• Customer wins include ITER, Hoffman Pentair, Piaggio Aero

Page 101: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

NEXT STEPS

SQL Server 2012 Case Studies: http://www.microsoft.com/casestudies/Case_Study_Advanced_Search.aspx (Search on SQL Technologies)

SQL Server 2012 Hands On Labs: http://www.microsoft.com/sqlserver/en/us/learning-center/virtual-labs.aspx

SQL Server 2012 Certification: http://www.microsoft.com/learning/en/us/certification/cert-sql-server.aspx

SQL Server 2012 Best Practices: http://technet.microsoft.com/en-us/sqlserver/bb671430

Page 102: Sql server 2012_sp1_02_of_12_blazing-fast_performance_level300_dark_deck

© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.

MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.

MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.


Recommended