01 - SAP System Architecture

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 56

What Does SAP R/3 Do?

Production Planning

Materials Management

Financial Controlling

Sales & Distribution Human Resources

BC010_01.1

What is Basis?

SAP R/3 Basis Software Is the Middleware of the R/3 System


R/3 Basis Computing components (middleware)environment

External

UNIX

Request for computing resources

BC010_01.2

What is Basis?

The R/3 Basis System

Materials Management Production Planning

Finance and Controlling

Sales and Distribution Human Resources

SAP R/3 Basis Software Hardware and Operating System


BC010_01.3 What is Basis?

Logical Groupings or Layers of SAP R/3 Components


The Presentation Layer
Those SAP R/3 software components that specialise in interacting with end-users form the presentation layer.

The Application Layer


Those SAP R/3 software components that specialise in processing business applications form the application layer.

The Database Layer


Those SAP R/3 software components that specialise in the management , storage and retrieval of data form the database layer.
BC010_01.4 What is Basis?

Three-Tiered Client/Server Architecture Logical Layers


Communication The Presentation Layer collects user input and creates process requests. The Application Layer uses the application logic of SAP programs to collect and process the process requests. The Database Layer stores and retrieves all data.

BC010_01.5

What is Basis?

Physical Distribution of R/3s Logical Layers

Presentation Layer components

Application Layer components

Database Layer components

reside in:

reside in:

reside in:

Presentation servers: Systems capable of providing a graphical interface. BC010_01.6

Application servers: Specialised systems multiple CPUs and vast amounts of

Database servers: Specialised systems with fast and large What is Basis?

Client/Server Defined
PC Software Program SAP Client/Server Software Presentation Layer

Application Layer

MS Excel Components

Database Layer

A
BC010_01.7

C
What is Basis?

Physical Distribution of R/3s Three Layered Client/Server Architecture


Presentation Layer components are installed across many PCs.

The Application Layer components are installed across one or more high-end servers. The Database Layer components are installed on one high-end database server.
BC010_01.8 What is Basis?

R/3s Client/Server Configurations- Centralistic


Centralistic

Computer A

Presentation Layer Application Layer


BC010_01.9

Database Layer
What is Basis?

R/3s Client/Server ConfigurationsDistributed Presentation


Computer A Computer A-1 Computer A-2 Comput er A-n Presentation Layer Application Layer
BC010_01.10

Distributed Presentation

Computer B

Database Layer
What is Basis?

R/3s Client/Server ConfigurationsTwo-tier Client/Server


Comput er A Comput er A-1 Comput er A-2 Comput er A-n Presentation Layer Application Layer
BC010_01.11

Two-tier Client/Server

Computer B

Database Layer
What is Basis?

R/3s Client/Server ConfigurationsThree-tier Client/Server


Compute r A Compute r A Compute r A Compute r A

Three-tier Client/Server
Compute r B Compute r B Compute r B Comput er C

Presentation Layer Application Layer


BC010_01.12

Database Layer
What is Basis?

R/3s Client/Server Configurations- Multi-Tier, Cooperative Client/Server


Compute r A Compute r A-1 Compute r A-2 Compute r A-n

Multi-tier, cooperative Client/Server


Compute r B Compute r B-1 Compute r B-n

Comput er C Comput er C-n

Presentation Layer Application Layer


BC010_01.13

Database Layer
What is Basis?

R/3s Client/Server Configurations- Multi-Tier, Cooperative Client/Server - ALE


Computer A Computer A-1 Computer A-2 Computer A-n Computer B-1 Computer B-1

Compute r C Compute r C-n

Computer B-n

Presentation Layer Application Layer


BC010_01.14

Database Layer
What is Basis?

SAPGUI: The Presentation Layer Software


Example components of SAPGUI: SAP SAP SAP SAP SAP SAP SAP SAP SAP SAP Business Graphics Hierarchy Graphics Pushbutton Graphics Statistical Graphics Gantt Chart Graphics HPGL Display Network Graphics Portfolio Graphics Bar Chart Graphics Structural Graphics

Presentation Layer Software: SAPGUI


BC010_01.15 What is Basis?

Exchanging Data between the Presentation and Application Layers

1 to 2 Kilobytes
Easily achieved over a WAN

Presentation Layer Software: SAPGUI


BC010_01.16

Application Layer Software: R/3 Runtime System


What is Basis?

Business Transactions
Business Transaction FD02 Change customer information

Screen 1

Screen 2

Complete transaction ?
BC010_01.17 What is Basis?

Business Transactions and the R/3 Runtime System

Screen 2

Screen 1

R/3 Runtime System


LOCK business object XYZ then, Prepare to ROLLBACK if necessary
BC010_01.18 What is Basis?

Processes

A Process is essentially a program. Each process has memory and access to system resources.

Process

BC010_01.19

What is Basis?

Threads

A Thread is the actual component of a process that is executing at one time. Each thread is capable of completing a different task that its process requests.

Process

Thread 1 Thread 2 Thread 3

BC010_01.20

What is Basis?

The O/S Kernel


Process

Process

Process

OS Kernel CPU
BC010_01.21 What is Basis?

Work Processes and the Dispatcher


SAP Diaolg Update Enqueue Spool Background

SAP Dispatcher

OS Kernel
BC010_01.22

CPU

A component of the SAP Kernel called the Dispatcher must manage process access to the OS What is Basis?

The R/3 Runtime System


Dispatcher
Dialog Update Spool Background

Application Server A

Dispatcher
Dialog Update Spool Background

Application Server B

Dispatcher
Dialog Update Enqueue Spool

Application Layer on Background Database Server


What is Basis?

BC010_01.23

Dispatcher

USER 1

USER 3

Dispatcher

USER 2
BC010_01.24

USER 4
What is Basis?

Work Processes

Dialog

Update

Enqueue

Spool

Background or Batch

BC010_01.25

What is Basis?

Dispatcher in Action
Presentation level Various types of processing requests

Application level

Dispatcher

Reque st queue s
Batch

Dialog

Update

Enqueue

Spool

BC010_01.26

What is Basis?

Inside the R/3 Runtime System


Various types of processing requests

Process Request User: Fred Jones Activity: Read data XYZ Screen: 1

Dispatcher
BC010_01.27

Reques t queues
What is Basis?

The Code Behind R/3


SAP R/3 Transactions are written in ABAP, SAPs 4th generation interpreted programming language.

Dispatcher
Dialog

SAP R/3 Runtime System is written in ANSI-C

Update Enqueue Spool Background or Batch

BC010_01.28

What is Basis?

Inside the R/3 Runtime System


Task Handler DYNPRO Processor ABAP Processor
memory

BC010_01.29

Work Process

What is Basis?

Inside the R/3 Runtime System


Various types of processing requests

Process Request Read data XYZ or Write data XYZ Request queues
What is Basis?

Dispatcher
BC010_01.30

Reading Data in the R/3 System


Transaction Screen 1
Screen 1. I want to run a customer report for customer 00017.

Screen 2

Screen n.
Screen 3. But only for product XYZ.

BC010_01.31

Screen 2. I only want to include data in my report that pertains to orders that were filled within the last 2

What is Basis?

Reading Data in the R/3 System


Transaction Screen 1 Screen 2 Screen n.

Process Process Process Request 1 Request 2 Request 3

Dispatcher
BC010_01.32

Request queues

What is Basis?

Reading Data in the R/3 System


Shared Memory Segments

Dispatcher Reques t Queue s

Transaction

Screen 1 Screen 2 Screen n.

R/3 Buffer s

Process Requests

Dialog

Dialog

Requested data retrieved from the R/3 Buffers

memory

AV
BC010_01.33

LE AB AIL

memor y

Y US B

Y US B
What is Basis?

memory

Task Handl er DYN P ABAP

Task Handler DYNP ABAP

Task Handler DYNP ABAP

Dialog

Reading Data in the R/3 System


Dispatcher Extended Memory Manager
Extended Memory
What is Basis?

R/3 Buffers
Task Handl er DYNP

Shared Memory Segments memory

Request Queues

The data retrieved for the last screen is stored in extended ABAP memory in an area The process request called the user for the next screen is context. LE copied down. B ILA A AV
BC010_01.34

Dialog

SAP Logical Unit of Work

SAP Logical Unit of Work (SAPLUW) Update Transaction Screen 1 Screen 2 Screen n.

BC010_01.35

What is Basis?

Distribution of a Business Transaction Across Multiple WPs


SAP Logical Unit of Work (SAPLUW) Update Transaction Screen 1 Screen 2 Screen n.
Handled by: Handled by: Handled by:

+
Handled by:

Dialog A

Dialog B Dialog C

Update

BC010_01.36

What is Basis?

Asynchronous Updating: The Online Phase


SAP Logical Unit of Work (SAPLUW) Update Transaction Screen 1 Screen 2 Screen n.
Database Commit
Dialog A

+
The Online Phase of an update ends here.

Databa se Commit

Database Commit
Dialog C

Dialog B

Write

Write

Write

VBLOG
What is Basis?

BC010_01.37

Asynchronous Updating: The Posting (Update) Phase


SAP Logical Unit of Work (SAPLUW) Update Transaction Screen 1 Screen 2 Screen n.
Database Commit
Dialog A

Databas e Commit

Database Commit
Dialog C

Dialog B

Read

Update

The Posting Phase of an update starts here.


BC010_01.38

VBLOG
What is Basis?

VBLOG Records
Dialog A

VBLOG Posting RoutineData U1 Screen 1 of 3

SAPLUW

Dialog B

Posting RoutineData U2 Screen 2 of 3

Dialog C

Posting RoutineData U2 Screen 3 of 3


What is Basis?

BC010_01.39

Errors during Posting (Update) Phase

BC010_01.40

What is Basis?

Handling of Error Situations


(U1 Termination)
Update
Dialog A Posting Routine Data

VBLOG
U1 Screen 1 of 3 ..ROLLBACK

SAPLUW

Dialog B Posting Routine Data U1 Screen 2 of 3

..ROLLBACK

Dialog C Posting Routine Data U2 Screen 2 of 3 ..Ignored

BC010_01.41

What is Basis?

Handling of Error Situations


(U2 Termination)
Update
Dialog A Posting Routine Data

VBLOG
U1 Screen 1 of 3

SAPLUW

Dialog B Posting Routine Data U2 Screen 2 of 3

Dialog C Posting Routine Data U2 Screen 2 of 3

Continue

BC010_01.42

What is Basis?

The Enqueue Work Process

Dialog

Lock Request
Message Service Enqueue

Lock Table

BC010_01.43

What is Basis?

The Background Work Process

Background

Background Job A Step # 1 Step # 2


Defining a background job.
BC010_01.44 What is Basis?

The Spool Work Process

The Operating System spooler assumes the print queue management.

Print

O/S Spooler

BC010_01.45

What is Basis?

A Service
Service A Online Process A1 Process A2

Requesting a particular function or service.

BC010_01.46

What is Basis?

The Message Service

Online

Lock Request
Enqueue

Messag e Service

Lock Table

BC010_01.47

What is Basis?

The SAP Gateway Service

Communication to an external R/3 System An external R/3 System


SAP Gateway Service

Gateway server

BC010_01.48

What is Basis?

CPI-C API
Work Process Work Process

Example: Work process communication

BC010_01.49

What is Basis?

Remote Function Calls

Non SAP system

Example: Communication with an external system


BC010_01.50 What is Basis?

EDI Architecture
MM (Customer) Intermediate Document Type SD (Vendor) Intermediate Document

EDI Subsystem

EDI Subsystem

Communication
BC010_01.51 What is Basis?

An SAP Instance
SAP Instance Work Processes

SAP Dispatcher Operatin g System TCP/IP Software

BC010_01.52

What is Basis?

An SAP Central Instance


SAP Central Instance Work Processes
Enqueue Work Process

Peripheral Instance A

SAP Dispatcher Operatin g System TCP/IP Softwar e

Message Service

Peripheral Instance B

BC010_01.53

What is Basis?

An SAP System
SAP Instance
Work Processes

SAP Instance

Work Processes

SAP Dispatcher Operating System TCP/IP Software

SAP Dispatcher Operating System TCP/IP Software

Work Processes

Enqueque Work Process

DATABASE

SAP Central Instance

SAP Dispatcher
Operati ng System TCP/IP Softwar e

Message Service

BC010_01.54

What is Basis?

SAP Servers
SAP Server/ Instance 8 Dialog Work Processes 3 Background Work Processes 1 Spool Work Processes SAP Server/ Instance 3 Dialog Work Processes 8 Background Work Processes 1 Spool Work Processes
BC010_01.55 What is Basis?

The GTC Training System

Database Louis Oracle

Central Instance Instance LOC A Instance LOC B Louis 2 Dialog 2 Background 3 Update 1 Enqueue 1 Spool Msg Service Gateway Julio 8 Dialog 3 Background 1 Spool Clint 8 Dialog 3 Background 1 Spool

BC010_01.56

What is Basis?

You might also like