41
Microsoft SQL Server: The Platform for SAP Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Embed Size (px)

Citation preview

Page 1: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Microsoft SQL Server: The Platform for SAPJuergen ThomasPrincipal Program ManagerMicrosoft Corporation

SESSION CODE: DAT314

Page 2: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

OVERVIEW

Hardware DevelopmentSQL Server Database CompressionSAP/SQL Server HA ConfigurationsVirtualization

Page 3: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Hardware TendenciesCommodity hardware surpassed performance requirements of most SAP customers and will continue to increase throughput dramaticallyNew standard deployment unit will become 2-socket server4-socket server will become consolidation/virtualization platform plus high-end database serverStandard 4-socket Intel driven server has 64 CPUs, AMD driven one has 48 CPUsBoth server types are expected to be in performance range which could be achieved only with 64 CPU Superdome or similar proprietary hardware so farNew x64 based 8-socket servers offer support of up to 128 CPUs with throughput so far never experienced on Windows supported hardware

Page 4: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Hardware Tendencies (cont’d)Customers implementing SAP usually get sizing from SAP expressed in SAPS

SAPS result out of SAP SD benchmarks and characterize the hardware in terms of throughputSAP maps all vital business transactions into SAPS and with that can estimate customer’s SAPS requirement

SAPS determined out of customer questionnaires or from existing implementationCustomers also want to leverage least expensive and most solid hardware and OS platform for their implementationMulti-Core development of AMD and Intel mainly benefitted Windows/SQL Server platform by increasing throughput dramatically

Page 5: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

SAPS sizing base for 4-socket servers over last 12 years

1998 2000 2002 2004 2006 2008 20100

5000

10000

15000

20000

25000

30000

35000

40000

45000

50000

500 1000 20004000

10000

25000

50000

SAPS used for Sizing on 4-socket commodity servers

SAPS used for Sizing on 4-socket commodity servers

The base server of these SAPS numbers used by HW vendors to size our platform are 4-socket servers which dependent on customer and memory installed come to a price point of around USD 30K. Price of the servers remained stable over the last 12 years. SAPS already reflect increasing resource demands of new SAP releaseand usage of Unicode SAP releases for 2010 SAPS numbers

Page 6: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Hardware Tendencies (cont’d)Storage surpasses server hardware in costs because:

HA/DR requirements force multiple copies of SAP production systemsE.g. some of our customers have 10 copies of productive SAP ERP database

More and more data volume is generated by more and more SAP applicationsCompliancy regulations make it complex to perform archiving A lot of customers don’t archive aggressivelySAN devices didn’t follow price decline of hard disk marketMost customers deploy on SAN devices for most of their deployments Commodity servers range in 10-30K USD range, whereas SAN ranges from 250K to 1000K

Page 7: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Hardware Tendencies (cont’d)What does this mean for product development directions of SQL Server and joint MS/SAP development team?

Implement technologies in SQL Server which can cut down space consumption dramatically Integrate these functionalities into SAP BasisInvest into alternate SAP landscape approaches using commodity hardware as consolidation platforms

SQL Server HotelMulti-SID ClusteringVirtualization

Goal: Be the best and most efficient platform on Industry Standard Hardware

Page 8: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Overview

Hardware DevelopmentSQL Server Database Compression

SAP/SQL Server HA configurationsVirtualization

Page 9: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Evolution on Space Efficiency/Compression Features

SQL Server 2005 SP2 VarDecimal Compression to improve Space Efficiency for SAP BI

SQL Server 2008: Introduction of ROW level and Page Dictionary Compression for all SAP products

SQL Server 2008 R2 delivers UCS2 space efficiency features –

no additional porting effort for SAP

Page 10: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Database CompressionSQL Server introduced two different types of ‘compression’

Row compressionPage Dictionary compression

SQL Server allows compression of data and clustered/non-clustered indexesSAP so far supports Compression of Data Layer including clustered IndexROW compression applied to clustered indexes is default for new SAP installations against SQL Server 2008 and later SQL Server releasesCompression of non-clustered indexes and usage of Page Dictionary Compression as default compression method will be released by MS/SAP Joint Development team in Fall 2010Results customers saw with current compression are outstanding

Page 11: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Data Compression – Results

Customers saved up to 72% Disk Space w/o more on CPU consumptionCustomers applied Page Dictionary compression carefully since it will cause more on CPU resource consumption

CustomerOriginal DB Size

Compression Method

Space saved

Percentage Saving

more CPU consumption

SAP System

Quanta5.3TB Row + Page on

250 largest tables 2.4TB 45% 20% ERP

Microsoft 6.5TB ROW all tables 1.9TB 29.20% None ERP

Microsoft1.5TB PAGE all tables 1.2TB 80% 60% BW

CLP2.3TB Page all tables 1.7TB 74% 25% BW

Australian Customer in

Sales and Retail

505GB ROW all tables 365GB 72% None BW

Page 12: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Database Compression – UCS2 compressionIntroduced with SQL Server 2008 R2Problem: SAP pushes hard on customer to deploy Unicode SAP releasesProblem specific to SQL Server: Unicode encoding on disk is less efficient than SAP’s implementation on Oracle and DB2UCS2 compression What does it do?

Reduces # of bytes used especially for one byte

locales to 1 instead of 2Reduction effect not only on typical one byte localesComparison of UCS2 and UTF-8 to original UCS2 implementation can be found in tableoriginal UCS2: 100%

Locale SCSU in SQL

Server 2008 R2 UTF-8 English 50% 50%

Kanji 85% 100%

Korean 100% 100%

Turkish 52% 53%

German 50% 50%

Vietnamese 61% 68%

Hindi 50% 100%

Page 13: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Database Compression – UCS2 compressionUCS2 compression is transparent to SAPUCS2 compression is automatically enabled when ROW or PAGE compression is used

Without using either one of those compression no UCS2 compression is in effect

UCS2 compression immediately in effect when database with compressed tables is attached/restored to SQL Server 2008 R2

New/modified rows are inserted in UCS2 compressed manner into compressed tablesSAP standard installation will leverage UCS2 compressionNo changes necessary from SAP side

Page 14: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Data Compression – How to apply?Clustered index needs to be rebuild with an option defining the Compression typeCan be done in online mode for most tablesMS/SAP joint development team will release report to perform action on whole SAP databasesMost customers so far used procedure released here: http://blogs.msdn.com/b/saponsqlserver/archive/2010/03/17/updated-version-of-sp-use-db-compression-version-2-42.aspxFor larger systems activity can stretch over multiple weekendsApplying Row compression: ALL tables should be compressedApplying Page Compression: Focus on tables with largest return of investment

Page 15: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Data Compression – Sourceshttp://blogs.msdn.com/saponsqlserverhttp://download.microsoft.com/download/d/9/4/d948f981-926e-40fa-a026-5bfcf076d9b9/SAP_SQL2008_Best%20Practices_Part_I.docxhttp://www.microsoft.com/casestudies/Case_Study_Detail.aspx?casestudyid=4000003962http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?casestudyid=4000004312

Page 16: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Overview

Hardware DevelopmentSQL Server Database Compression

SAP/SQL Server HA configurationsVirtualization

Page 17: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

HA/DR – What works?Local HA – minimum:

Cluster SAP CI/ASCS/SCSCluster SQL Server

SQL

BI

HR/FI

WEB

BTC

WEB

BTC

BTC

SD

HR/FI

SD

HR/FI

CIF

BTC

7+ TB

SAN

SQL Server 20084 x 2.9Ghz six-core

64Gb RAMx64

7 Application Server Instances4 x 2.9GHz quad-core

64Gb RAMX64

CI

BI

SQL

Page 18: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

HA/DR – Cluster for SAP and SQL ServerUsed by thousands of SAP installationsSAP does provide resource.dll for their CI/ASCS/SCSSAP Installer does support Windows Cluster InstallationProblem still remains SAN which represents single point of failureRecommendable to run SAP components and SQL Server on the same cluster node by default way better patching storyRTO dependent on availability of SAN or duration for eventual emergency restoreRPO dependent on backup cycle (especially around Transaction Logs)

Page 19: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

HA/DR – What works? (cont’d)Local HA – Avoid SAN as single point of failure:

Cluster SAP CI/ASCS/SCSDBM for SQL Server

BI

HR/FI

WEB

BTC

WEB

BTC

BTC

SD

HR/FI

SD

HR/FI

CIF

BTC

5+ TbEMC

CX3-80SAN

CI

7+ TB

SAN

Primary & Secondary SQL Server 20084 x 2.9Ghz six-core

64Gb RAM

7 Application Server Instances4 x 2.9GHz quad-core

64Gb RAMCentral Instance

2 x 2.3Ghz quad-core16Gb RAM

DB Mirroring

CI

7+ TB

SAN

BI

Page 20: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

HA/DR – Cluster for SAP/DBM for SQL ServerUsed by several dozen SAP installations in async or sync modeSync mode usually with failover (SAP supports DBM failover) in same datacenterA few customers use async case for bridging 10-20 miles to bridge into second datacenterNeed to keep distance in low range when local application layer should connect to mirror server. SAP is an extreme chatty application and very sensitive to latency between application layer and DBMSAdvantage: allows great rolling maintenance and SAN maintenanceSynchronous Mirroring should be possible up to 60 milesDeployed in SAP space so far only a few miles for synchronousUsage and SAP setup considerations documented in SAP OSS note #965908 or here: http://download.microsoft.com/download/d/9/4/d948f981-926e-40fa-a026-5bfcf076d9b9/SAP_SQL2005_Best%20Practices.docUsually good RTO and RPO

Page 21: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

HA/DR – What works? (cont’d)Local HA – Avoid SAN as single point of failure:

Cluster SAP CI/ASCS/SCSCluster SQL ServerLocal Storage Replication

BI

HR/FI

WEB

BTC

WEB

BTC

BTC

SD

HR/FI

SD

HR/FI

CIF

BTC

5+ TbEMC

CX3-80SAN

CI

7+ TB

SAN

SQL Server 20084 x 2.9Ghz six-core

64Gb RAM

7 Application Server Instances4 x 2.9GHz quad-core

64Gb RAMCentral Instance

2 x 2.3Ghz quad-core16Gb RAM

Storage ReplicationCI

7+ TB

SAN

BI

Page 22: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

HA/DR – Cluster SAP & DB + Local Storage ReplicationStorage Replication for database layer is transparent to SAP – hence supported with all types of different technologiesNo automatic failoverImportant for SQL Server is write orderingAttention: Some methods offered by SAN vendors are not honoring write order!Synchronous Storage Replication on storage side usually good for up to 60 Miles

Useless to go that far if not a whole SAP installation is on same site with storage replicaProblem: SAP applications are chatty sending up to a few thousand database requests/sec. Extremely sensitive on database latency

Critical are SQL Server Tlog-Writes. Need to keep them under 10ms latency

Page 23: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

HA/DR – What works? (cont’d)HA and DR as deployed with SAP customer. DB Volume of SAP ERP system 8.5TB

Cluster SAP CI/ASCS/SCSLocal and Remote Storage ReplicationCluster SQL Server

BI

HR/FI

WEB

BTC

WEB

BTC

BTC

SD

HR/FI

SD

HR/FI

CIF

BTC

5+ TbEMC

CX3-80SAN

CI

7+ TB

SAN

SQL Server 20084 x 2.9Ghz six-core

64Gb RAM

7 Application Server Instances4 x 2.9GHz quad-core

64Gb RAMCentral Instance

2 x 2.3Ghz quad-core16Gb RAM

Synch. Storage Replication

CI

7+ TB

SAN

BI

Same Campus or

Metropolitan area,E.g. East Coast U.S.

DR SiteE.g. London U.K.

7+ TB

SAN

Asynch. Storage Replication

Page 24: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

HA/DR – Cluster SAP & DB + Storage ReplicationCustomer decided to have synchronous storage replication within campus on East Coast of U.S.The component they wanted to cover was storage onlyMeans DB Server in main datacenter needs to be upDR site is in Europe supplied by async storage replicationSAP Test system located on DR site. Would become productive system in case of failover to DR siteDR site is second global datacenter hence extreme good network bandwidthWorks out for customerSo far RPO in case of failover to DR site would have been <2min

Page 25: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

HA/DR – What works? (cont’d)HA and DR as deployed with SAP customer. DB Volume of SAP ERP system: 5TB

Cluster SAP CI/ASCS/SCSLocal DBM and Remote SQL Server Logshipping BI

HR/FI

WEB

BTC

WEB

BTC

BTC

SD

HR/FI

SD

HR/FI

CIF

BTC

5+ TbEMC

CX3-80SAN

CI

7+ TB

SAN

Primary & Secondary SQL Server 20084 x 2.9Ghz six-core

64Gb RAM

7 Application Server Instances4 x 2.9GHz quad-core

64Gb RAMCentral Instance

2 x 2.3Ghz quad-core16Gb RAM

DB MirroringCI

7+ TB

SAN

BI

7+ Tb

SAN

SQL Server Logshipping

DR Site x miles away

Page 26: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

HA/DR – Cluster for SAP/DBM for SQL Server + LogshippingSeveral customers use this method. DR sites in distance of a few dozen miles up to 1000+ milesThe component they wanted to cover was storage onlySAP Test system located on DR site. Would become productive system in case of failover to DR siteRPO dependent on transaction log backup intervalSome customers execute Tlog Backup every minute

Theoretical RPO then around 2-3min

Local RTO in case of storage of DBMS server failure <1minRTO in move to DR site around 2-3hCustomer just tested DR site failover

Page 27: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Backup/Restore

RTO demands qualify backup/restore as HA method for small systems onlySystems in TB space, backup/restore necessary for other purposes, but not for HA/DR anymoreDirect tape backups not used anymore – Most customers have centralized backup infrastructureDirect backups by centralized tape robot didn’t satisfy many customers due to unpredictability in time

Page 28: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Backup/RestoreCommon Customer scenario

Perform SQL Server online backups against disk – slower disks or near-line storageCentralized Backup Infrastructure picks SQL Server backups files upCatch: Backup Services charge by bytes copiedSolution: Usage of SQL Server 2008 Backup CompressionUsable by all 3rd party backup vendors via VDI or VSS interface

Savings observedCompression rate of 4-5 for Full and Differential backupCompression rate of 2-2.5 for Transaction Log backups

Larger customers executeOne weekly full backupDaily diffsTlog backup in low minute interval

Page 29: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Overview

Hardware DevelopmentSQL Server Database CompressionSAP/SQL Server HA configurations

Virtualization

Page 30: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Virtualization – What is supported by SAP?SAP does support VMWare and Hyper-V for Windows – No XEN support for Windows by SAPSAP supports using Windows Server 2008 R2 and Windows Server 2008 as host OSNo SAP support for Windows Server 2008 R2 as guest OS yet. However SAP supports W2K8 R2 as host and W2K8 as guestSAP has some strong demands on SAP Kernel Patch Level, Support Packages and configurations when moving into virtualized environment

See OSS notes #1409604 and #1409608

Page 31: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Virtualization – What does work? Great to catch low hanging fruits:

SAP landscapes have masses of small SAP development, test and sandbox systems which require small CPU and memory resourcesSmall productive systems which fit into restrictions of VMs and where HA/DR is not as important

Aim behind virtualizing such systems:Reduce # of server hardware radically

From Sizing calculate with 80% CPU usable for VMs on host server. Stay on conservative side

Proved true so far for all vendors of Virtualization platforms (VMWare, Hyper-V, etc)

Page 32: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Customer example – Catch low hanging fruitAll non-prod SAP systems sit on 1 single Hyper-V server

128 GB RAM16 Cores (4 x Quad Core)VHD are fixed size file system

16 VM’s on one server5 x Windows 2008 SP13 x Windows XP (BI PreCalc Servers)8 x Windows 2003 SP3 (being upgraded)Server load approx. 40 to 70% avg.

Page 33: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Virtualization – What does work? (cont’d)The larger the workload volume and the more restrict HA requirements are, the harder it gets to use Virtualization in productive environmentsHarder to apply to SAP system as introduced in HA scenarios:

Virtualization of SQL Server instance not possible due to restriction on # of Virtual CPUs by Hyper-V or VMWareIf large SAP application instances/multiple instances per server are defined now, then Virtualization will result in many more OS images to administrate and operate

7 servers = 7 OS images on bare metal7 servers = ~35 OS images when using Hyper-V

Patching hardly easier than before

Page 34: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Virtualization – RecommendationSmaller SAP systems fitting into VM restrictionsSmaller SAP application server layers or application server layers where company already runs most of their applications on VMsSmaller SAP database instances where HA requirements were not that high

Page 35: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Customer example – Productive SAP Application Layer

DB layerConsolidatedPhysicalWSFC“SQL Server Hotel”

SAP Application LayerConsolidatedVirtualHyper-VLive Migration Cluster“SAP Hotel”

Page 36: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

DAT Track Scratch 2 Win

Find the DAT Track Surface Table in the Yellow Section of the TLCTry your luck to win a Zune HDSimply scratch the game pieces on the DAT Track Surface Table and Match 3 Zune HDs to win

Page 37: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Resources

www.microsoft.com/teched

Sessions On-Demand & Community Microsoft Certification & Training Resources

Resources for IT Professionals Resources for Developers

www.microsoft.com/learning

http://microsoft.com/technet http://microsoft.com/msdn

Learning

Page 38: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Complete an evaluation on CommNet and enter to win!

Page 39: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

Sign up for Tech·Ed 2011 and save $500 starting June 8 – June 31st

http://northamerica.msteched.com/registration

You can also register at the

North America 2011 kiosk located at registrationJoin us in Atlanta next year

Page 40: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

© 2010 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.

Page 41: Juergen Thomas Principal Program Manager Microsoft Corporation SESSION CODE: DAT314

JUNE 7-10, 2010 | NEW ORLEANS, LA