01.12.1999Projektgruppe SAP R/3 auf Linux Cluster© 1999 Stephan Homeyer
SAP R/3
-
Speichermanagement
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 2© 1999 Stephan Homeyer
Gliederung
Klassifikation der Speicherbereiche
Speichermanagement auf Prozeß oder System - Ebene
Die verschiedenen Speicherbereiche des R/3-Systems
Größe der Speicherbereiche
Performanceaspekte und das ZAMM
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 3© 1999 Stephan Homeyer
Klassifikation der Speicherbereiche
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 4© 1999 Stephan Homeyer
Gliederung
Klassifikation der Speicherbereiche
Speichermanagement auf Prozeß oder System - Ebene
Die verschiedenen Speicherbereiche des R/3-Systems
Größe der Speicherbereiche
Performanceaspekte und das ZAMM
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 5© 1999 Stephan Homeyer
Speichermanagement auf Prozeß oder System - Ebene
Motivation
– unabhängige Speicherschnittstellen
– zugewiesene Speicherbereiche werden zentral verwaltet
– Schutzmechanismen überwachen die Speichergröße des
jeweiligen Benutzers und isolieren Programme voneinander
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 6© 1999 Stephan Homeyer
Speichermanagement auf Prozeß oder System - Ebene
Lokaler Speicher (Permanent Memory)
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 7© 1999 Stephan Homeyer
Speichermanagement auf Prozeß oder System - Ebene
Globaler Speicher (Shared Memory)
– mehrere Prozesse können gleichzeitig darauf zugreifen
(z.B. auf einen Texteditor; auf Bibliotheken)
– Prozesse brauchen geeignete Protokolle
– das Semaphor synchronisiert die Anfragen und die Zugriffe
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 8© 1999 Stephan Homeyer
Speichermanagement auf Prozeß oder System - Ebene
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 9© 1999 Stephan Homeyer
Gliederung
Klassifikation der Speicherbereiche
Speichermanagement auf Prozeß oder System - Ebene
Die verschiedenen Speicherbereiche des R/3-Systems
Größe der Speicherbereiche
Performanceaspekte und das ZAMM
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 10© 1999 Stephan Homeyer
Die verschiedenen Speicherbereiche des R/3-Systems
Benutzerkontext
– Speicherung von Daten (Variablen, interne Tabellen, etc.)
– wird im R/3-Roll-Memory, im R/3-Extended Memory oder im
R/3-Heap-Memory abgelegt
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 11© 1999 Stephan Homeyer
Die verschiedenen Speicherbereiche des R/3-Systems
R/3-Roll-Memory
– jeder Workprozeß hat eigenen lokalen Roll-Bereich
– verlassen eines Workprozesses ruft Roll-out - Funktion auf
– Roll-out kopiert lokalen in globalen Roll-Bereich
– globaler Roll-Bereich ist ein Speicherbereich im globalen
Speicher und/oder eine Datei auf einer Festplatte
– Zuweisung eines neuen Workprozesses ruft Roll-in - Funktion auf
– Roll-in kopiert globalen Roll-Speicher in den lokalen
Roll-Speicher
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 12© 1999 Stephan Homeyer
Die verschiedenen Speicherbereiche des R/3-Systems
R/3-Roll-Vorgang im Überblick
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 13© 1999 Stephan Homeyer
Die verschiedenen Speicherbereiche des R/3-Systems
R/3-Extended Memory
– Benutzerkontexte werden zum Großteil hier gespeichert
(ab R/3-Release 3.0)
– R/3-Extended Memory ist globaler Speicher
– beim Roll-in werden nur noch die Adressen kopiert
– der Umfang der kopierten Daten wird dadurch reduziert
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 14© 1999 Stephan Homeyer
Die verschiedenen Speicherbereiche des R/3-Systems
R/3-Heap Memory
– auch hier können Benutzerkontexte abgelegt werden
– wird als variabler lokaler Speicher bei Bedarf allokiert
– Freigabe nach Beendigung einer Transaktion
– kann nicht in den globalen Speicher ausgelagert werden
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 15© 1999 Stephan Homeyer
Die verschiedenen Speicherbereiche des R/3-Systems
Reihenfolge der Speicherbelegung von Benutzerkontexten
1.) kleiner festgelegter Teil des lokalen Roll-Bereichs
2.) R/3-Extended Memory
3.) restliche Roll-Bereich
4.) R/3-Heap Memory
5.) sind alle Speicherbereiche erschöpft, dann folgt der
Programmabbruch
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 16© 1999 Stephan Homeyer
Die verschiedenen Speicherbereiche des R/3-Systems
Übersicht der Reihenfolge der Speicherbelegung
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 17© 1999 Stephan Homeyer
Die verschiedenen Speicherbereiche des R/3-Systems
R/3-Paging Memory
– nicht zu verwechseln mit dem Betriebssystem-Paging
– Speicherung von internen Tabellen und Bildschirmlisten
(vor R/3-Release 2.2)
– Objekte, die weiterhin hier abgelegt werden:
• ABAP-Daten-Cluster (ist nicht am Benutzerkontext gebunden)
• Parameter, die beim Aufruf von Programmen und Transaktionen
übergeben werden
• Daten-Extrakte, die von der ABAP-Anweisung EXTRACT erzeugt
werden
(bis R/3-Release 4.5)
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 18© 1999 Stephan Homeyer
Die verschiedenen Speicherbereiche des R/3-Systems
Übersicht der Speicherbereiche des R/3-Systems
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 19© 1999 Stephan Homeyer
Gliederung
Klassifikation der Speicherbereiche
Speichermanagement auf Prozeß oder System - Ebene
Die verschiedenen Speicherbereiche des R/3-Systems
Größe der Speicherbereiche
Performanceaspekte und das ZAMM
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 20© 1999 Stephan Homeyer
Größe der Speicherbereiche
Speicher-bereich
Realisierung Größe (MByte)
Inhalt
R/3-Roll Memory
Shared Memory (Roll-Puffer), Roll-Datei
n x 10 Benutzerkontexte: temporäre, transaktionsbezogene Daten, die einem Benutzermodus zugeordnet sind
R/3-Extended Memory
Shared Memory
n x 100 bis n x 1000
z.B. Bildschirmlisten, interne Tabellen, Variablen, administrative Daten
R/3-Heap Memory
Lokaler Speicher
n x 100 bis n x 1000
R/3-Paging Memory
Shared Memory (Paging-Puffer), R/3-Paging-Datei
n x 100 Temporäre Daten, die zwischen Benutzerkontexten ausgetauscht werden; Daten-Extrakte
R/3-Work-prozesse
Lokaler Speicher
n x 10 pro WP
Ausführbare Programme, lokale Daten, lokaler Roll- und lokaler Paging-Speicher
Größe der Speicherbereiche einer R/3-Instanz
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 21© 1999 Stephan Homeyer
Größe der Speicherbereiche
Größenordnungen der Speicherbereiche
– der lokale Roll-Bereich liegt bei:
• 6,5 MByte für UNIX
• 2 MByte für Windows NT
– das R/3-Heap Memory hat eine maximale Größe von 2 GByte
– das R/3-Paging Memory hat eine durchschnittliche Größe
von 256 MByte
– der Auslagerungsspeicher beträgt mindestens das Dreifache des
physischen Speichers bzw. mindestens 2 GByte
– die Quote eines Benutzerkontextes liegt bei 512 MByte
vom R/3-Extended Memory
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 22© 1999 Stephan Homeyer
Größe der Speicherbereiche
64-Bit-Architektur
– die Größe des adressierbaren Speichers fällt „weg“
– die Empfehlungen zur R/3-Speicherverwaltung können und
werden sich ändern
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 23© 1999 Stephan Homeyer
Gliederung
Klassifikation der Speicherbereiche
Speichermanagement auf Prozeß oder System - Ebene
Die verschiedenen Speicherbereiche des R/3-Systems
Größe der Speicherbereiche
Performanceaspekte und das ZAMM
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 24© 1999 Stephan Homeyer
Performanceaspekte und das ZAMM
Performanceaspekte
– optimale Performance bei Benutzung von wenig R/3-Roll Memory
– was geschieht, wenn das R/3-Extended Memory voll belegt ist?
• Benutzerkontexte werden im lokalen Roll-Bereich abgelegt, oder
• Roll-Bereich reduzieren, damit die Kontextdaten im R/3-Heap
Memory abgelegt werden
01.12.1999Projektgruppe SAP R/3 auf Linux Cluster Seite: 25© 1999 Stephan Homeyer
Performanceaspekte und das ZAMM
Zero Administration Memory Management
– für Windows NT ab R/3-Release 4.0A
– erfordert keine manuellen Einstellungen
– Hardwareänderungen werden automatisch erkannt