SAP性能优化的培训V2
© SPRO 2018/ Page 10
SAP性能监控工具
Workload Monitor
ST03 or ST03N
Work Process Overview
Transaction SM50 / SM66
Database
Setup
Monitor
Transaction ST04
Buffers
Transaction ST02
Extended Memory该行的值应该足够大。值e应该小于In memory的值,如果二者 相等就需要增加扩展内存的容量
SAP内存区域
内存区域 1 2 3 4 5 6 7 8 9
© SPRO 2018/ Page 21
作用 SAP Buffer (Program, Screen, Data Dictionary), Extended Memory, Roll Buffer, Paging Buffer Local Roll, Local Page, Heap Memory 主要存储user context,比如程序指针,set/get parameters,权限,内表,报表 主要存储程序相关数据。比方说 extract,Import and Export,call transction之类 对应Roll area,roll-in过程表示从roll buffer中 copy user context到rollArea roll 相反
© SPRO 2018/ Page 13
监控工具--工作进程监控 SM50
© SPRO 2018/ Page 14
监控工具--工作进程监控 SM66
© SPRO 2018/ Page 15
监控工具—数据库监控 ST04
© SPRO 2018/ Page 16
数据库的监控与分析
SAP系统支持很多种数据库(Oracle、DB2、MS SQL、HANA 、 SYBASE等), 针对于不同的数据库 SAP提供了统一的数据库监控事务代码:DB02, ST04。 对数据影响SAP系统性能的指标有: 1.数据库缓存: 缓存存储了经常读取的数据库表和索引,缓存命中率要达到95%以上 2.耗时占资源的SQL语句: 对CPU和I/O造成高负载
© SPRO 2018/ Page 25
内存分配原则
监控缓存区的原则:
SAP缓存区的HitRadio通常情况应该大于98%; 生产系统中的缓存区的SWAP应小于10000; 确保每个缓存区有足够的Free space和Free directory entries;
监控SAP内存区域的原则:
Roll area一行中,MaxUse的值不能超过In memory对应的值
SAP Extended Memory Dispatche r Queue ④
Table Buffers
DB ⑧ Databas e Buffers
SAP Roll Memory
Progra m Buffer
⑥
Work Process ⑤
⑦ DB Process
②
Work Process
Work Process Work Process ③
© SPRO 2018/ Page 11
ቤተ መጻሕፍቲ ባይዱ
监控工具—性能综合统计ST03N
© SPRO 2018/ Page 12
监控工具--单一性能统计 STAD
Processing time = response time - wait time - database request time - roll time - load time – enqueue time.
内存:内存页交换的速率不能太大。每小时内存页交换的物理主内存容量小 于20%。
I/O: 在ST06操作系统监控器中,Until(%)是用来表示硬盘负载的,当该 值越大,则表示硬盘的负载越大
© SPRO 2018/ Page 19
SAP内存管理
SAP内存结构
© SPRO 2018/ Page 20
SAP内存管理
非对话工作处理进程
本地SAP卷内存最大至 ztta/roll/area SAP堆内存直到 abap/heap_area_nondia的 值被达到或者直到SAP堆内存 空间被用完 — SAP扩展内存直到 ztta/roll_extension的值被达 到或者直到SAP的扩展程序空 间被用完
3 4
© SPRO 2018/ Page 23
High load and generation time: SAP buffers (Program, CUA or Screen) too small High enqueue time: very large Enqueue table , many lock requests High database request time: CPU/memory bottleneck on database server; communication problem with database server , expensive SQL statements, database locks, missing indexes, missing statistics or small database buffer(s) Processing time more than twice CPU time: CPU bottlenecks High CPU time: Expensive ABAP processing, for example, processing large tables; inefficient programming High roll-wait time: Communication problem with SAP GUI or an external system, or lar ge amount of data requested
独占SAP工作进程
占用数据库缓存 3.独占性锁等待: 当一个用户锁定数据库表时,另一个用户需要锁定该数据库表则进入等待时 间
© SPRO 2018/ Page 17
监控工具—操作系统监控 ST06
© SPRO 2018/ Page 18
硬件监控与分析
判断操作系统硬件影响SAP系统性能的依据:
CPU:在ST06中监测的OS的CPU utilization idle(CPU利用空闲容量)通常 情况下每小时至少为20%以上,这样能够保持系统能够在某一个时刻容纳下工 作高峰。
内存监控
ST02
© SPRO 2018/ Page 24
内存监控
ST02
SAP内存分配监控器中的字段:
Current use:各内存区域当前使用的内存容量 Max. Use:自SAP实例启动后,这个内存区域被使用过的最大的容量 In Memory:在系统启动的时候分配给这个区域主内存的容量 On disk:对于roll area和Page area,SAP卷文件和SAP的内存交换页文件位于服 务器的硬盘上
Performance Optimization
1
01
SAP 系统性能监控和分析 SAP参数调优 SAP程序优化 其它优化途径 工具的演示及讨论
目 录
02
CONTENT
03
04
05
© SPRO 2018/ Page 2
2
SAP性能优化是什么
SAP系统性能优化对于一个企业来说十分必要,拥有良好的SAP系统 的性能可以使用户的操作的响应时间缩短,工作效率提高,减少数据 库的负载,延长硬件投资的周期等等。SAP系统性能的优化是企业 SAP系统安全、高效、持久运行的前提条件之一。 SAP系统性能的优化主要包括三个方面:
Extended Memory(s) 存储同Roll area得数据,映射访问 Heap Memory
SAP内存管理
SAP内存分配
© SPRO 2018/ Page 22
SAP内存管理
对话工作处理进程和非对话工作处理进程分配内存的顺序 对话工作处理进程
1 2 本地SAP卷内存最大至 ztta/roll_first SAP扩展内存直到 ztta/roll_extension的值 达到或者直到SAP扩展内 存空间被用完 本地SAP卷内存最大至 ztta/roll_area SAP堆内存直到 abap/heap_dia的值被达 到或者直到SAP堆内存空 间被用完
DB Process
DB Process DB Process
© SPRO 2018/ Page 5
SAP系统工作负载分析
用户与服务器交互过程:
① 用户请求发送到分发器的队列
② 分发器队列将操作请求分配给空闲的分发器 ③ 分发器将用户请求分配给SAP的工作进程 ④ SAP的工作进程与用户在内存的信息进行数据交换 ⑤ SAP的工作进程与数据库表缓存和程序缓存进行数据交换
⑥ SAP的工作进程将处理任务移交给数据库进程
⑦ 数据库进程与数据库缓存进行数据交换 ⑧ 数据库缓存与数据库进行数据交换
© SPRO 2018/ Page 6
SAP系统工作负载分析
系统响应时间
© SPRO 2018/ Page 7
SAP系统工作负载分析
响应时间的组成部分:
调度器等待时间:调度器等待分发给工作进程 卷入时间(Roll-in):从内存区域复制用户背景信息到roll area 卷出时间(Roll-out):从roll area复制用户信息到内存区域 载入时间:载入ABAP程序和屏幕程序及缓存中的数据库表 数据库时间:当数据在数据库中被读取或者改变的时间 处理时间:执行DB处理程序所需要的时间
Average load (and generation) time Average database request time