SAP® MaxDB™ Expert Session
SAP® MaxDB™: Introduction into MaxDB Database Architecture Christiane Hienger April 16, 2013
Public
SAP® MaxDB™ – Expert Session Introduction into SAP ® MaxDB™ Database Architecture
Christiane Hienger
Heike Gursch
IMS MaxDB/liveCache Development Support
April 16, 2013
© 2013 SAP AG. All rights reserved. 3 Public
Agenda
Data Storage (Disk Area)
Software Directories
Data-, Log-Volumes
Database Kernel
SQL Manager
Data Access Manager
Process Layer
Threads, User Kernel Threads,
Pager, Timer; Garbage Collectors, LogWriter, TraceWriter
Remote SQL Server, DBMServer
Memory Level
I/O Buffer Cache, Converter Cache, Catalog Cache, File Directory, Shared SQL
Cache
© 2013 SAP AG. All rights reserved. 4 Public
First level
Second level
Third level
Introduction - Environment
Log Log‘
Database Kernel
Global Memory
DB
Analyzer
Database
Studio Tools
SAP Work
Processes
Data 1
Data 2
Data Volumes Log Volumes
Data 3
© 2013 SAP AG. All rights reserved. 5 Public
Database Instance
User-Kernel-Threads (UKT)
Me
mo
ry L
eve
l H
ard
Dis
ks
Data L LOG‘
Pro
cess L
evel Runtime
environment
(RTE)
Coordinator
Console
(Clock)
IO Worker 0 - n
Task Worker 0 - n
User-Kernel-Threads (UKT) Tasks:
Lo
gw
rite
r
Uti
lity
Tim
er
Tra
cew
rite
r
Garb
. C
olleco
tor
Us
er
Se
rve
r
Pa
ger
DATA
File Dir Sequence Cache
Catalog Cache
Log Queue
I/O Buffer Cache
Shared SQL Cache
© 2013 SAP AG. All rights reserved. 6 Public
Disk Areas (Software and Data)
/sapdb
Data Volumes
Log Volumes
Database Software
Log Log‘
Data 1
Data 2
Data 3
bin pgm env etc lib misc incl sap
<SID>
db bin pgm
programs
wrk
config
data
<SID>
wrk
config
<SID>
data
sapdb
© 2013 SAP AG. All rights reserved. 7 Public
Database Kernel
Data Access Manager communication base layer (KB)
SQL Manager (AK)
Data Access Manager base data layer (BD)
Buffer Interface
Buffer Interface
Procedural Interface
© 2013 SAP AG. All rights reserved. 8 Public
Data Access Manager
Data Access Manager
SQL Manager
Access strategy:
1) Perform Range Scan
on Index with ID 3422
located on node p15714
2) Select Rows by Primary Key
on table with ID 3421
located on node p15709
SELECT name1, name2, tel1
FROM kna1
WHERE name1 = 'GARDENER'
or name1 = 'GARDENERS'
SQL Manager
Catalog entries for table kna1
Table kna1: ID 3421; Node
p15709
Column Type Length
mandt NUMCHAR 3
kunnr NUMCHAR 8
.
name1 CHAR 20
.
tel1 CHAR 20
.
Index kna1__1: ID 3422;
Node p15714
Column Type Length
Name1 CHAR 20
Name2 CHAR 20
Prim.Key NUMCHAR 13
© 2013 SAP AG. All rights reserved. 9 Public
SQL Manager
Data Access Manager
Data Access Manager (KB Layer)
Locking
No locks held on table with ID 3422
SELECT name1, name2, tel1
FROM kna1
WHERE name1 = 'GARDENER'
or name1 = 'GARDENERS'
Data Access Manager Select statement
No log Information required
© 2013 SAP AG. All rights reserved. 10 Public
Data-Access Manager
SQL Manager
Data Access Manager
Data Access Manager (BD layer)
GARDENER...CHANCEY...00112345678
GARDENER...VINCE.....00187654321
GARDENERS..ZARAH.....00187654321
select NAME1, NAME2, TEL1
from KNA1
where NAME1 = 'GARDENER' or NAME1 = 'GARDENERS'
© 2013 SAP AG. All rights reserved. 11 Public
Database Instance
User-Kernel-Threads (UKT)
Me
mo
ry L
eve
l H
ard
Dis
ks
Data L LOG‘
Pro
cess L
evel Runtime
environment
(RTE)
Coordinator
Console
(Clock)
IO Worker 0 - n
Task Worker 0 - n
User-Kernel-Threads (UKT) Tasks:
Lo
gw
rite
r
Uti
lity
Tim
er
Tra
cew
rite
r
Garb
. C
olleco
tor
Us
er
Se
rve
r
Pa
ger
DATA
File Dir Sequence Cache
Catalog Cache
Log Queue
I/O Buffer Cache
Shared SQL Cache
© 2013 SAP AG. All rights reserved. 12 Public
Process Structure
User -Kernel- Process (UKT)
Tasks User-Kernel-Thread (UKT) Tasks
Logwriter
Utility
Server Pager
Tracewriter
Garbage Col
User
Timer
Event
Coordinator
Requestor
Console
Timer
IO Worker 0 - n
Task Worker 0 - n
© 2013 SAP AG. All rights reserved. 13 Public
Threads I
Coordinator
Requestor
Console
Clock / Timer
User-Kernel-Process (UKT)
Tasks User-Kernel-Thread (UKT) Tasks
Logwriter
Utility
Server Pager
Tracewriter
Garbage Col
User
Timer
Event
Restart Client -
Connect
Select * From ..0,0005 sec.
x_cons
I/O Worker 0 - n
Task Worker 0 - n
© 2013 SAP AG. All rights reserved. 14 Public
Threads II
User-Kernel-Process (UKT)
Tasks User-Kernel-Thread (UKT) Tasks
Logwriter
Utility
Server Pager
Tracewriter
Garbage Col
User
Timer
Event
Coordinator
Requestor
Console
Clock / Timer Ticket
Queue
DATA
I/O Worker 0 - n
Task Worker 0 - n
© 2013 SAP AG. All rights reserved. 15 Public
User Kernel Threads and Tasks
Coordinator
Requestor
Console
Clock / Timer
User-Kernel-Thread
Tasks
UKT 2
user user
user
Parameter: MaxUserTasks
Parameter: MaxCPUs & UseableCPUs
user user
user
execute
SELECT * FROM tab
WHERE col1 = 5
I/O Worker 0 - n
Task Worker 0 - n
© 2013 SAP AG. All rights reserved. 16 Public
Server Tasks
UKT 3
server server
server
DATA
Coordinator
Requestor
Console
Clock / Timer
User -Kernel- Thread
Tasks
UKT 2
user user
user
user user
user
I/O Worker 0 - n
Task Worker 0 - n
© 2013 SAP AG. All rights reserved. 17 Public
Pager and Timer Tasks
UKT 4
DATA
timer
session
timeout
pager pager
Coordinator
Requestor
Console
Clock / Timer
UKT 3
server server
server
Coordinator
Requestor
Console
User -Kernel- Thread
Tasks
UKT 2
user user
user
user user
user
I/O Worker 0 - n
Task Worker 0 - n
© 2013 SAP AG. All rights reserved. 18 Public
Logwriter
UKT 4
timer pager pager Clock / Timer
UKT 3
server server
server
Coordinator
Requestor
Console
UKT 1
Tasks
UKT 2
user user
user
user user
user
UKT 5
Log
logwriter
I/O Worker 0 - n
Task Worker 0 - n
© 2013 SAP AG. All rights reserved. 19 Public
Garbage Collectors and Event Tasks
UKT 4
timer pager pager Clock / Timer
UKT 3
server server
server
Coordinator
Requestor
Console
UKT 1
Tasks
UKT 2
user user
user
user user
user
UKT 6
Data free free
garbage
collector
event event
dbmcli …
auto_update_statistics ON
auto_extend ON 100
UKT 5
Log
logwriter logwriter
Log
I/O Worker 0 - n
Task Worker 0 - n
© 2013 SAP AG. All rights reserved. 20 Public
Utility–, Tracewriter Task
UKT 4
timer pager pager
Coordinator
Requestor
Console
Clock / Timer
UKT 3
server server
server
Coordinator
Requestor
Console
UKT 1
Tasks
UKT 2
user user
user
user user
user
UKT 5
logwriter
UKT 6
garbage
collector
event event
UKT 7
tracewriter
knltrace
UKT 8
utility
CREATE INSTANCE ...
ADD VOLUME ...
logwriter
I/O Worker 0 - n
Task Worker 0 - n
© 2013 SAP AG. All rights reserved. 21 Public
Remote SQL Server
Coordinator
Requestor
Console
Clock / Timer
Coordinator
Requestor
Console
xserver xserver X Server
UKT 1 UKT 2
user user
user
user user
user
Remote Host
Database Server Global Listener
X Server
© 2013 SAP AG. All rights reserved. 22 Public
DBM-Server
Requestor
Console
Clock / Timer
Coordinator
Requestor
Console
xserver xserver DBM Server
UKT 1 UKT 2
user user
user
user user
user
UKT 3
server server
server
xserver xserver
xserver
Database
Studio dbmcli
DBM-Commands
dbmcli SQL-Commands
Remote Host
Database Server
© 2013 SAP AG. All rights reserved. 23 Public
Database Instance
User-Kernel-Threads (UKT)
Me
mo
ry L
eve
l H
ard
Dis
ks
Data L LOG‘
Pro
cess L
evel Runtime
environment
(RTE)
Coordinator
Console
(Clock)
IO Worker 0 - n
Task Worker 0 - n
User-Kernel-Threads (UKT) Tasks:
Lo
gw
rite
r
Uti
lity
Tim
er
Tra
cew
rite
r
Garb
. C
olleco
tor
Us
er
Se
rve
r
Pa
ger
DATA
File Dir Sequence Cache
Catalog Cache
Log Queue
I/O Buffer Cache
Shared SQL Cache
© 2013 SAP AG. All rights reserved. 24 Public
I/O Buffer Cache
I/O Buffer Cache
DATA 2
DATA 1
© 2013 SAP AG. All rights reserved. 25 Public
Catalog Cache, Log Queue
Log Queue
I/O Buffer Cache
Log
Volume
Catalog Cache
Shared SQL Cache
Catalog entries for table kna1
Table kna1: ID 3421; Node p15709
Column Type Length
mandt NUMCHAR 3
kunnr NUMCHAR 8
.
.
name1 CHAR 20
.
tel1 CHAR 20
.
Index kna1__1: ID 3422; Node p15714
Column Type Length
Name1 CHAR 20
Name2 CHAR 20
Prim.Key NUMCHAR 13
Select * from kna1
select * from bkpf where
…
© 2013 SAP AG. All rights reserved. 26 Public
File Directory, Sequence Cache
File Directory
Table ID root
Class ID root
Insert into T100 (col1) values (seq.nextval)
Log-Queue
File Dir
Sequence-
Cache
I/O Buffer Cache
Catalog-Cache
Shared-SQL-Cache
© 2013 SAP AG. All rights reserved. 27 Public
Cache Access
Critical sections in memory are protected by
synchronization mechanisms (Regions)
File Dir
Sequence-
Cache
I/O Buffer Cache
Catalog-Cache
Log-Queue
Share-SQL-Cache
Questions SAP® MaxDB™ Database Architecture
© 2013 SAP AG. All rights reserved. 29 Public
SAP® MaxDB™ – Expert Sessions Learning Map (1)
SAP® MaxDB ™
Administration
SAP® MaxDB ™
Installation/Upgrade
SAP® MaxDB ™
Problem Analysis
SAP® MaxDB ™
Features
Session 1: Low TCO with the SAP
MaxDB Database
Session 6: New Features in SAP
MaxDB Version 7.7
Session 8: New Features in SAP
MaxDB Version 7.8
Session 2: Basic Administration
with Database Studio
Session 3: CCMS Integration into
the SAP System
Session 11: SAP MaxDB Backup
and Recovery
Session 13: Third-Party Backup
Tools
Session 5:
SAP MaxDB Data Integrity
Session 14:
SAP MaxDB Tracing
Session 7: SAP MaxDB Software
Update Basics
Session 12: Analysis of SQL
Locking Situations
All Expert Sessions (recording and slides) are available for download
http://maxdb.sap.com/training/
© 2013 SAP AG. All rights reserved. 30 Public
SAP® MaxDB™ – Expert Sessions Learning Map (2)
SAP® MaxDB™
Architecture Session 18: Introduction
MaxDB Database Architecture
SAP® MaxDB ™
Performance
Session 4: Performance
Optimization with SAP MaxDB
Session 9: SAP MaxDB
Optimized for SAP BW
Session 16: SAP MaxDB SQL
Query Optimization (Part 1)
Session 16: SAP MaxDB SQL
Query Optimization (Part 2)
Session 15: SAP MaxDB
No-Reorganization Principle
Session 17: SAP MaxDB
Shadow Page Algorithm
Session 12: Analysis of SQL
Locking Situations
Session 10:
SAP MaxDB Logging
All Expert Sessions (recording and slides) are available for download
http://maxdb.sap.com/training/
© 2013 SAP AG. All rights reserved. 31 Public
Feedback and further information:
http://www.sdn.sap.com/irj/sdn/maxdb
Next Session: 11.06.2013
SAP® MaxDB™ Parameter - Handling
Thank You!
Bye, Bye – And Remember Next Session
Top Related