andreas kampert enterprise architect microsoft gmbh

39
SAP auf SQL Server 2008 {Lerneffekte - Neuerungen - Migrationen} Andreas Kampert Enterprise Architect Microsoft GmbH

Upload: han-zelle

Post on 06-Apr-2015

120 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Andreas Kampert Enterprise Architect Microsoft GmbH

SAP auf SQL Server 2008

{Lerneffekte - Neuerungen - Migrationen}Andreas KampertEnterprise ArchitectMicrosoft GmbH

Page 2: Andreas Kampert Enterprise Architect Microsoft GmbH

AgendaManagement

Datenkomprimierung BackupkomprimierungResource Governor

SicherheitAuditing Einfache Datenverschlüsselung

PerformanceVerbesserungen beim LoggingGranulare Lock EskalationStar Join

HochverfügbarkeitMicrosoft Cluster ServerDatabase Mirroring

VirtualisierungKompatibilität

Page 3: Andreas Kampert Enterprise Architect Microsoft GmbH

Datenkomprimierung - ZielsetzungenBalance zwischen optimaler Speicherung und

Performance

Daten effizient speichernGröße der Tabellen, Indizes verkleinern

Verbesserung der Performance bei AbfragenGeringere Kosten

Verringerung der HardwareanforderungenManagement Kosten

Backup/RecoveryCreate/Rebuild of indexesBulk Import Consistency Checking (e.g. CheckDB)

Page 4: Andreas Kampert Enterprise Architect Microsoft GmbH

Verfahren Datentyp Bemerkungen

Vardecimal Decimal, Numeric Ab SQL Server 2005 SP2 verfügbar

Row Datentypen fester Länge

Page – Column Prefix

Datentyp unabhängig – Byte Pattern

Column

Page - Dictionary Datentyp unabhängig – Byte Pattern

Muster auf Page

Datenkomprimierung – Verfahren

Enabled für Tabelle und/oder IndexCREATE TABLE T_Part (c1 int, c2 char(2000) )   ON somePartScheme (c1) WITH

(DATA_COMPRESSION = PAGE ON PARTITIONS (1-7), DATA_COMPRESSION = NONE ON PARTITIONS (8) )

Page 5: Andreas Kampert Enterprise Architect Microsoft GmbH

Row Komprimierung - Technologie

Neues Satzformat Variable Länge für Datentypen fester Länge (Bsp: INT, CHAR, FLOAT, MONEY, DATE/TIME)

Spezielle Handhabung von NULL und 0

0 0 0 1

4-byte integer

1SQL Server 2008 (compression enabled)

4 bytes

1 byte + 4 bits per value

SQL Server 2005

Page 6: Andreas Kampert Enterprise Architect Microsoft GmbH

Page Komprimierung Column Prefix – Technologie

Suche nach Byte MusterUnabhängig vom Datentyp

aaabb aaaab abcd

aaabcc [0bbbb] abcd

aaaccc aaaacc bbbb

aaabcc aaaacc abcd

4b 4b [empty]

[empty] bbbb [empty]

3ccc [empty] [0bbbb]

PAGE Header

Anchor Record

Page 7: Andreas Kampert Enterprise Architect Microsoft GmbH

Page Komprimierung Dictionary Komprimierung – TechnologieIdentifizierung und Referenzierung

identischer Einträge

aaabcc aaaacc abcd

[empty]

4b [0bbbb]

4b 4b [empty]

[empty]

3ccc [0bbbb]

PAGE Header

[empty] [0bbbb]

0

1

1

0

Anchor Record

Dictionary

Page 8: Andreas Kampert Enterprise Architect Microsoft GmbH

Komprimierung im Beispiel

Die letzte Partion wird nicht komprimiert

Jan-Mar Apr-June July-Sept Oct-Dec

PAGE Compressed

Uncompressed

ROW Compressed

Page 9: Andreas Kampert Enterprise Architect Microsoft GmbH

Datenkomprimierung Bisherige Erfahrungen

ROW Komprimierung:Reduziert den Platz für SAP ERP um ~15%

Für spezifische Lösungen wie IS-U oder Banking sogar mehr

In SAP BI wird die Größe um ~35% reduziertKein messbarer negativer Einfluss auf die PerformancePerformance Verbesserungen in Situationen mit I/O BottleneckMöglicherweise Default für SAP Installationen

Page 10: Andreas Kampert Enterprise Architect Microsoft GmbH

DatenkomprimierungBisherige Erfahrungen

Page-Dictionary Komprimierung:Angewandt auf alle Tabellen in ERP kann die Größe des SAP ERP auf 50% der Originalgröße reduziert werdenTabellen wie GLPCA schrumpfen auf 15% ihrer OriginalgrößeAndere Tabellen schrumpfen kaum (z.B. customizing tables)Nicht zu empfehlen für Queuing Tabellen wie VBHDR, VBMOD, VBDATA, ARFCSSTATE, ARFCSDATA, TRFC…~25% höhere CPU Auslastung, wenn alle ERP Tabellen komprimiert werden (außer den Queuing Tabellen)Kann die Performance in extremen IO Bottleneck Situationen deutlich verbessernSAP wird die Möglichkeit zur Page-Dictionary Komprimierung für bestimmte Tabellen anbieten

Page 11: Andreas Kampert Enterprise Architect Microsoft GmbH

Backup KomprimierungMinimierung der Ausfallzeiten

Deutlich weniger Speicherplatz

Bisherige Testergebnisse vergleichbar mit SQL Litespeed

Backups sind deutlich schneller, da weniger IO notwendig istIntegration mit 3rd Party Backup Herstellern über VDI oder VSS Interface gewährleistet

Restore erkennt Komprimierung automatisch

Backup Size

Backup Time

Restore Time

0

1

2

3

4

5

6

No CompressionCompression

Backup Compression

BACKUP DATABASE E61 to DISK = N'D:\E61full_compress.bak' WITH COMPRESSION

Page 12: Andreas Kampert Enterprise Architect Microsoft GmbH

Konsolidierte WorkloadsResource Governor

Ressourcen - Management

Allokiert Ressourcen Zuweisung der Workloads beim LoginZuordnung von Workloads zu Ressourcen

Definition von GrenzwertenVerhindert Run-away QueriesUnterstützt bei Online Mmaintenance

Priorisierung der Workloads

Definition von PrioritätenDynamische Neuzuordnung

Backup

Admin Tasks

Continuous Loading

ExecReports

Ad-hoc Reports

Report Workload

OLTP Workload

HighAdmin

Workload

Admin Pool Application Pool

Min Memory 10%

Max Memory 20%

Max CPU 20%

Max CPU 90%

Page 13: Andreas Kampert Enterprise Architect Microsoft GmbH

AgendaManagement

Datenkomprimierung BackupkomprimierungResource Governor

SicherheitAuditing Einfache Datenverschlüsselung

PerformanceVerbesserungen beim LoggingGranulare Lock EskalationStar Join

HochverfügbarkeitMicrosoft Cluster ServerDatabase Mirroring

VirtualisierungKompatibilität

Page 14: Andreas Kampert Enterprise Architect Microsoft GmbH

AuditingSimplify Compliance

AUDIT wird zu einer zentralen ServerfunktionalitätGranulare Audit Funktionen für Datenbankobjekte und/oder BenutzerMultiple Ausgabeformen (File, Windows Application Log, Security Event Log)Volle Unterstützung von Analysis Services und Reporting Services zur Auswertung konsolidierter Daten

Page 15: Andreas Kampert Enterprise Architect Microsoft GmbH

Auditing - Beispiel

Target

Server Audit

Database Audit

CREATE AUDIT HIPAA_Audit   TO FILE ( FILENAME=’\\PRO1\Aud\HIP_ADT.aud’, MAX_SIZE=100 MB, RESERVE_DISK_SPACE ) WITH (SHUTDOWN_ON_FAILURE = ON);

CREATE AUDIT SPECIFICATION SvrACON SERVERTO HIPAA_Audit    ADD FAILED_LOGIN_GROUP;

CREATE AUDIT SPECIFICATION AuditACON DATABASETO HIPAA_Audit    ADD SELECT ON table::Customers(payment);

Page 16: Andreas Kampert Enterprise Architect Microsoft GmbH

Verschlüsselung transparent für die Applikation

Erweiterung der Verschlüsselung von SQL Server 2005

Kann pro Datenbank aktiviert werden

Führt neuen Database Encryption Key (DEK) ein

Verschlüsselungsschutz für jede persistente Datenspeicherung

Verschlüsselung auch für Backups

Einfache Datenverschlüsselung

  CREATE DATABASE ENCRYPTION KEYWITH ALGORITHM =

AES_128ENCRYPTION BY SERVER

CERTIFICATE ent_cert

SQL Server 2008

DEK

Client Application

Encrypted Data Page

Page 17: Andreas Kampert Enterprise Architect Microsoft GmbH

Einfache Datenverschlüsselung

4 unterschiedliche Verschlüsselungsalgorithmen

AES_128, AES_196, AES_256, TRIPLE_DES

Einschalten der Verschlüsselung führt zur Verschlüsselung aller auf die Platte geschriebenen Pages UND startet Hintergrund Threads um den Rest der Datenbank zu verschlüsselnBester Durchsatz und geringster Overhead mit AES Algorithmen

TRIPLE_DES kann nicht empfohlen werden

SAP spezifisches Whitepaper wird vor Freigabe SQL Server 2008 RTM erscheinen

Page 18: Andreas Kampert Enterprise Architect Microsoft GmbH

AgendaManagement

Datenkomprimierung BackupkomprimierungResource Governor

SicherheitAuditing Einfache Datenverschlüsselung

PerformanceVerbesserungen beim LoggingGranulare Lock EskalationStar Join

HochverfügbarkeitMicrosoft Cluster ServerDatabase Mirroring

VirtualisierungKompatibilität

Page 19: Andreas Kampert Enterprise Architect Microsoft GmbH

Verbesserungen Transaction Log

SQL Server 2008Logik für minimales Logging vollständig überarbeitetLogging auf Speicherseitenebene ist ausreichend für das Zurückrollen von Einfüge-Operationen3x-5x Performance Steigerung

Index Insert

Heap Insert

SQL Server 2008SQL Server

Laufzeit

Page 20: Andreas Kampert Enterprise Architect Microsoft GmbH

Verbesserungen für Minimal Logging

Auswirkungen des Minimal Logging auf R3LoadLaden der Tabellen in einer SAP Installation oder während einer Unicode/Plattform Migration:

Anlegen einer leeren TabelleDefinition des Clustered IndexLaden der Daten in Batches von 10.000 RowsDefinition der non-clustered Indexes

SQL Server bisherDer erste Batch wird minimal geloggtAlle weiteren Batches werden vollständig geloggtProblem: In Unicode/Plattform Migrationen wird extrem viel in das SQL Server Transaction Log geschrieben

Mit SQL Server 2008 wird Minimal Logging für alle Batches genutztReduzierung des Transaction Log Volumen um bis zu Faktor 50 in Tests bei Unicode/Plattform Migrationen

Page 21: Andreas Kampert Enterprise Architect Microsoft GmbH

Lock Eskalation Ereignisse in SQL Server 2005:40% des Buffer Pool wird für Locks verwendetMehr als 5000 Row Locks werden durch ein DML Statement auf einer Tabelle gehalten

Versuch auf Table Lock zu eskalierenEskalation kann durch Trace Flag verhindert werden

Storage Engine entscheidet mit Page-Level Locks zu beginnen

Kann durch sp_indexoption abgeschaltet werden

Problem: kein zentrales Kommando, um die Lock Eskalation bei #2 und #3 zu verhindernSQL Server 2008:

Lock Eskalation kann auf Objekt oder Tabelleneben ausgeschaltet werden

ALTER TABLE VBDATA set (LOCK_ESCALATION = DISABLE)

Granulare Lock Eskalation

Page 22: Andreas Kampert Enterprise Architect Microsoft GmbH

Optimierung der PerformanceDW Query Optimierung

Bessere Erkennung bei StarJoin AbfragenVerbesserte Regeln um alternative Abfragepläne zu generierenBesseres Kostenmodell bei Star Join PlänenZusätzliche Bitmap Filter Ausführungsstrategien

Page 23: Andreas Kampert Enterprise Architect Microsoft GmbH

StarJoin Query Processing

Voraussetzung für Starjoin Processingmaxdop>1

Die Implementierung des maxdop Query Hints in SAP BI Code ist in ArbeitVorgehen:

Hinzufügen von maxdop=2 hint bei Abfragen, die der StarJoin Optimierung profitieren könnenTests mit SAP TAP und Beta Kunden laufen

Kann deutliche Performancegewinne erbringen

Page 24: Andreas Kampert Enterprise Architect Microsoft GmbH

AgendaManagement

Datenkomprimierung BackupkomprimierungResource Governor

SicherheitAuditing Einfache Datenverschlüsselung

PerformanceVerbesserungen beim LoggingGranulare Lock EskalationStar Join

HochverfügbarkeitMicrosoft Cluster ServerDatabase Mirroring

VirtualisierungKompatibilität

Page 25: Andreas Kampert Enterprise Architect Microsoft GmbH

SQL Server und SAPHigh-Availability FunktionalitätenMSCS Cluster Implementierung

Automatischer FailoverVirtual SQL Server InstanceMehrere Instanzen sind möglichBis zu 8 Knoten mit Win2003 und Win2008 IA64Bis zu 16 Knoten mit Win2008 x64

DB MirroringAutomatischer Failover (mit Witness)Zweite Kopie einer Datenbank

Log ShippingSchatten-Datenbank an einer zweiten LokationTime delay möglichErmöglicht kopieren über große Distanzen

Page 26: Andreas Kampert Enterprise Architect Microsoft GmbH

Single Point Of FailureSAP 7.00 (ABAP und JAVA)ABAP Central Services (ASCS)

Primary Application Server

Spool W

P

Dia

log W

P

Batc

h W

P

Upd

ate

WP

Message Server

ABAP Dispatcher

Gateway

IP Address and Hostname

\\sapmnt

S:\usr\sap\<SID>\SYS

Enqueue Server

JControl

Jlau

nc

h SD

M

JAVA Central Services (SCS)

Message Server

Gateway

IP Address and HostnameEnqueue Server

• SPOF‘s:IP AddressHostnameMessage ServerEnqueue Serversapmnt ShareDisk mit \usr\sap\<SID>\SYS Verzeichnis

Page 27: Andreas Kampert Enterprise Architect Microsoft GmbH

MSCS NetWeaver 7.0 (ABAP und JAVA)

Quorum Disk

MSSQL Data files

MSSQL Log files

SAP files (\\sapmnt)

Cluster Group

Virtual Name MSCS Node A MSCS Node B

Virtual ASCSHostname

SAP Group

Virtual DBHostname

MSSQL Group Database Instance

Database Instance

ABAP AS

ABAP AS

ABAP SCS

JAVA SCS

ABAP SCS

JAVA SCS

ERS

ERS

ERS

ERS

Page 28: Andreas Kampert Enterprise Architect Microsoft GmbH

Multi-SID Clustering und Junctions

Bis WAS 6.40 war nur ein SAP System pro MSCS Cluster möglichGrund: \\SAPMNT share

Cluster Share \\sapmnt konnte nur einer Clustergruppe und einem Shared Drive zugeordnet werden

Page 29: Andreas Kampert Enterprise Architect Microsoft GmbH

SAPMNT Share und Junctions

SAPSID<1>

SQL Data files

SAPSID<n>

SAP directories

SAPSID<n>

SQL Log files

SAPSID<1>

SQL Data files

SAPSID<n>

SQL Data files

SAPSID<1>

Quorum

Shared storage

WindowsMSCS SoftwareDatabase program files\usr\sap\<SID1>\[Junction]

…..\usr\sap\<SIDn>\[Junction]

WindowsMSCS SoftwareDatabase program files\usr\sap\<SID1>\[Junction]

…..\usr\sap\<SIDn>\[Junction]

Local Disk Local Disk

\\sapmnt share \\sapmnt share

Page 30: Andreas Kampert Enterprise Architect Microsoft GmbH

Heartbeat

Neuer Wizard zur ValidierungSupport für GUID partition table (GPT) Disks in cluster Verbesserter Cluster SetupIPv6 SupportMulti-site Clustering

NodeA

Active Node

NodeB

Passive Node

Was ist neu bei MSCS in Win2008

Page 31: Andreas Kampert Enterprise Architect Microsoft GmbH

Mirroring und MSCS

Location #1 Location #2

Storage

#1

Storage

#2

DB instance #1

DB instance #n

AS AS

SCS instance #1

SCS instance #n

DB mirroringPrincipal

Mirror

MS Cluster Server

Page 32: Andreas Kampert Enterprise Architect Microsoft GmbH

SQL Server Database Mirroring Verbesserungen

Performance Verbesserungen

Neben der Verschlüsselung werden die Log Informationen auch komprimiert

Automatischer Page Repair

“Corrupt” Datenpages führen nicht mehr zu einer nicht verfügbaren Datenbank“corrupt” Page wird erkannt und vom Partner angefordertErfordert: Synchrones Mirroring

Log Stream Compression

http://sqlcat.com/technicalnotes/archive/2007/09/17/ database-mirroring-log-compression-in-sql-server-2008-improves-throughput.aspx.

Page 33: Andreas Kampert Enterprise Architect Microsoft GmbH

AgendaManagement

Datenkomprimierung BackupkomprimierungResource Governor

SicherheitAuditing Einfache Datenverschlüsselung

PerformanceVerbesserungen beim LoggingGranulare Lock EskalationStar Join

HochverfügbarkeitMicrosoft Cluster ServerDatabase Mirroring

VirtualisierungKompatibilität

Page 34: Andreas Kampert Enterprise Architect Microsoft GmbH

Hyper-V Architektur

Windows HypervisorPowerful virtualization built into the Windows platform

VirtualizationPlatform andManagement

Management tools

VM 2“Child”

VM 1“Parent”

VM 2“Child”

Page 35: Andreas Kampert Enterprise Architect Microsoft GmbH

SAN Storage Subsystem

BW 3.5 QA System

Inactive VM

Windows Server 2003

R/3 4.6D Testsystem

Inactive VM

Windows Server 2000

R/3 4.6D App. Server

Inactive VM

Windows Server 2000

Enterprise Portal

Inactive VM

Windows Server 2003

SAP BW 3.5

Inactive VM

Windows Server 2003

R/3 4.6D App. Server

Active VM

Windows Server 2000

BW 3.5 QA System

Active VM

Windows Server 2003

R/3 4.6D Production

Active VM

Windows Server 2000

Hyper-V mit SAP

Central Backup Server

System Center Configuration Manager

Microsoft Operations Manager

System Center Virtual Machine Manager

DNS Server

DHCP Server

File- and Print Services

Active Directory Services

SAP Netweaver Administrator

R/3 4.6D Production

Active VM

Windows Server 2000

R/3 4.6D Production

Active VM

Windows Server 2000

Page 36: Andreas Kampert Enterprise Architect Microsoft GmbH

AgendaManagement

Datenkomprimierung BackupkomprimierungResource Governor

SicherheitAuditing Einfache Datenverschlüsselung

PerformanceVerbesserungen beim LoggingGranulare Lock EskalationStar Join

HochverfügbarkeitMicrosoft Cluster ServerDatabase Mirroring

VirtualisierungKompatibilität

Page 37: Andreas Kampert Enterprise Architect Microsoft GmbH

SAP Support of SQL Server 2008

SAP wird SQL Server 2008 unterstützen für:

Alle auf Netweaver 7.00 basierenden ProdukteNur auf 64Bit Plattformen: IA64 und x64

Kein Support für SQL Server 2008 32-Bit

Windows Server 2003 SP2Windows Server 2008Upgrades nur von SQL Server 2005

Kunden auf SQL Server 2000 müssen erst auf SQL Server 2005 upgraden

Page 38: Andreas Kampert Enterprise Architect Microsoft GmbH

Und was ich nicht besprochen habe

SSISSSRS Integration in SAP BISingle Sign-OnEinfrieren des Query PlanPartitioningBizTalk Adapter Pack….

Page 39: Andreas Kampert Enterprise Architect Microsoft GmbH

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