SAP性能优化的培训V2
SAPABAP性能优化

SAPABAP性能优化SAPABAP(高级商务应用编程语言)是一种面向SAP应用程序开发的编程语言。
在开发SAPABAP应用程序时,性能优化是非常重要的,可以提高应用程序的响应速度和效率。
以下是一些优化SAPABAP性能的技术和实践。
1.数据库访问优化:在数据库访问方面,以下几种方法可以提高性能:-尽量避免对数据库频繁的读写操作,尽量减少数据库访问的次数。
-使用WHERE语句来限制查询结果的数量,尽量避免返回大量数据。
-使用索引来加速数据库查询操作。
对于频繁访问的字段,可以创建相应的索引。
-避免在循环中进行数据库查询操作,可以将多次查询合并为一次查询,提高效率。
2.代码优化:在编写ABAP代码时,以下几种方法可以提高性能:-避免使用SELECT*语句,尽量只选择需要的字段。
-避免在循环中进行复杂的计算操作,可以将计算提取到循环之外,减少计算次数。
-避免频繁使用长字段,例如TEXT字段,可以将其存储在辅助表中,减少数据库访问次数。
-使用内表来处理数据,避免频繁的数据库访问。
3.内存优化:在使用内存方面,以下几种方法可以提高性能:-尽量减少内存的使用,避免无用的变量和数据结构占用过多内存。
-对于大量数据的处理,可以使用ITAB或HASHEDTABLE来提高效率,尽量避免使用SORTEDTABLE。
-注意内存泄漏问题,及时释放不再使用的内存空间。
4.并发处理优化:在处理并发操作时,以下几种方法可以提高性能:-使用合适的锁策略,避免死锁和长时间的等待。
-尽量避免对同一个资源进行频繁的读写操作,可以考虑其他方法来减少并发冲突。
-使用事务控制来保证数据的一致性和完整性。
-如果可能,可以将并发操作分解成多个较小的操作,减少并发冲突的可能性。
5.缓存优化:在使用缓存方面,以下几种方法可以提高性能:- 使用合适的缓存技术,例如SAP的共享内存(Shared Memory)和缓冲区(Buffers)。
-对于频繁使用的数据,可以将其缓存在共享内存中,提高访问速度。
SAP培训资料

03
SAP CRM
04
SAP HANA
05
SAP Cloud
企业资源计划(ERP)是 SAP最核心的产品之一,它 集成了一系列企业管理功 能,包括财务、人力资源 、采购、销售等。
供应链管理(SCM)是 SAP的另一重要产品,它帮 助企业优化供应链流程, 提高库存管理、采购和供 应商管理等方面的效率。
发展壮大
随着企业需求的变化和技术的不 断进步,SAP不断拓展其业务领 域,从单一的财务软件供应商发 展成为全球领先的企业软件公司 。
重大里程碑
SAP在发展过程中经历了多次转 型和变革,包括SAP R/3的推出 、SAP ECC的升级以及SAP HANA的推出等。
产品与服务
01
SAP ERP
02
SAP SCM
供应链管理系统集成
总结词
SAP的供应链管理系统集成可以提高企业供应链管理 的效率和灵活性。
详细描述
SAP的供应链管理系统可以实现与不同系统之间的集 成,如与ERP系统的集成,实现供应链管理和财务管 理的同步;与供应商和客户系统的集成,实现供应商 和客户协同管理;与仓库管理系统的集成,实现仓库 自动化管理等等。这种集成可以实现数据共享和流程 自动化,提高供应链管理的效率和灵活性。
客户关系管理(CRM)是 SAP的又一款重要产品,它 帮助企业建立客户关系, 提高客户满意度和忠诚度 。
SAP HANA是一款高性能 的分析型数据库管理系统 ,它为企业提供了实时业 务洞察力,帮助企业快速 做出决策。
SAP Cloud提供了一系列 基于云计算的服务
02
SAP系统基础
概述
SAP发展历程
06
SAP未来趋势与展望
SAP性能很慢,如何调整

摘自:/archives/139SAP 性能很慢,怎么调整?(见图)看了SAP 服务器,硬件4个CPU,5G 内存,可是怎么系统很慢,并且在swap 出现太多的红色。
当前Swap 情况:首先确认SAP 服务器多久没有重启了,如果是有几个月没有重启,则ST02的SWAP 一般会出现红色;这个一般重启SAP 可以release swap 的问题。
如果SAP 重启几天后SWAP 就出现红色,根据SAP 服务器的硬件,可以适当调整RZ10的参数。
1、调整前一定先把/usr/sap/DEV/SYS/Profile 进行备份,这个非常重要。
2、对具体哪个参数进行调整,T-code: ST02,在出现红色的地方”双击”进入另一个界面,然后点菜单栏的”当前参数”就能看到它对应的Profile Parameter , Value Unit , Comment ;然后根据它的现有值 x 0.1 = 要调整的数值。
T_Code:RZ10(调整),RZ11(查看参数值、默认值和参数说明)eg: swap 出现红色,双击后对应参数值:rtbb/buffer_length 10000 kB那么在RZ10把这个参数调整为:110003、RZ10调整后要进行激活,激活后要重新启动SAP MMC ;如果出现调整后SAP MMC 无法启动,那么重启SAP 服务器在重启SAP MMC ,如果还是无法起动,那么把刚备份的原Profile 目录覆盖新的Profile 目录,然后再重新调整,根据它的现有值 x 0.05 = 要调整的数值。
调整后再观测ST02的变化,如果原来都没有调整过那一般要按照上面的调整方式调整几次ST02就相对比较正常了。
从 画面看来Swap 比较严重的是Program ,就是 abap/buffersize ,因为没有如 workprocess default allocate 多少 memory 画面可供参考建议保守些,微调 abap/buffersize 增加 10% 约 20MB ,也就是 205000 * 1.1 = 225500,重起 SAP MMC 之后再观察状况。
sap 培训计划

sap 培训计划一、培训目标本次SAP培训旨在帮助员工掌握SAP系统的基本操作及相关知识,提高员工的业务操作能力,提高工作效率和质量。
具体包括以下几个培训目标:1. 掌握SAP系统的基本操作,包括登录、查询、维护、报表生成等功能;2. 熟悉SAP系统的相关业务流程,包括采购、销售、财务等流程;3. 了解SAP系统的核心模块及其应用,包括FI、CO、MM、SD等模块;4. 掌握SAP系统的基本维护和故障处理方法;5. 掌握SAP系统的相关技术和工具的使用方法,包括ABAP、SAP HANA等。
二、培训内容1. SAP系统基本概念及架构介绍- SAP系统介绍- SAP系统架构- SAP系统应用场景2. SAP系统基本操作- SAP系统登录与退出- SAP系统界面与功能区域介绍- SAP系统菜单操作与快捷键3. SAP系统基本功能- SAP系统数据查询与修改- SAP系统报表生成与导出- SAP系统数据导入与数据清理4. SAP系统业务流程- SAP系统采购流程- SAP系统销售流程- SAP系统财务流程5. SAP系统核心模块- SAP FI模块介绍与应用- SAP CO模块介绍与应用- SAP MM模块介绍与应用- SAP SD模块介绍与应用6. SAP系统维护与故障处理- SAP系统日常维护- SAP系统常见故障及处理方法7. SAP系统相关技术与工具- SAP ABAP介绍与应用- SAP HANA介绍与应用- SAP系统集成与扩展方法三、培训方法1. 理论讲解:通过上课形式进行SAP系统的基本概念讲解,介绍SAP系统的相关功能和技术。
2. 案例分析:通过实际案例分析,讲解SAP系统的应用方法,帮助员工理解并掌握SAP 系统的操作流程。
3. 实操演练:通过实际操作,让员工熟悉SAP系统的操作界面和功能,提高操作技能。
4. 课后练习:布置课后作业,让员工巩固所学知识,提高学习效果。
四、培训计划1. 第一阶段:SAP系统基本概念- 课时:2天- 培训内容:SAP系统介绍、SAP系统架构、SAP系统应用场景2. 第二阶段:SAP系统基本操作- 课时:2天- 培训内容:SAP系统登录与退出、SAP系统界面与功能区域介绍、SAP系统菜单操作与快捷键3. 第三阶段:SAP系统基本功能- 课时:2天- 培训内容:SAP系统数据查询与修改、SAP系统报表生成与导出、SAP系统数据导入与数据清理4. 第四阶段:SAP系统业务流程- 课时:3天- 培训内容:SAP系统采购流程、SAP系统销售流程、SAP系统财务流程5. 第五阶段:SAP系统核心模块- 课时:3天- 培训内容:SAP FI模块介绍与应用、SAP CO模块介绍与应用、SAP MM模块介绍与应用、SAP SD模块介绍与应用6. 第六阶段:SAP系统维护与故障处理- 课时:2天- 培训内容:SAP系统日常维护、SAP系统常见故障及处理方法7. 第七阶段:SAP系统相关技术与工具- 课时:2天- 培训内容:SAP ABAP介绍与应用、SAP HANA介绍与应用、SAP系统集成与扩展方法五、培训考核为了确保培训效果,将对员工进行培训考核,培训考核包括以下内容:1. 理论考核:考核员工对SAP系统的基本概念和相关知识的掌握情况。
sap培训计划范文

sap培训计划范文一、培训目标随着企业信息化程度的不断提升以及市场竞争的加剧,越来越多的企业开始意识到SAP系统的重要性。
SAP作为全球领先的企业管理软件解决方案供应商,其产品覆盖了财务、物流、人力资源等多个领域,可以帮助企业提高运营效率、降低成本、提升竞争力。
因此,本培训计划旨在帮助企业员工深入了解SAP系统的相关知识和技能,提升其在SAP系统的应用水平,为企业发展提供有力的支持。
二、培训对象1. 公司内部各部门员工,包括财务、物流、人力资源等岗位人员;2. 其他对SAP系统感兴趣的人员。
三、培训内容本培训计划将主要包括以下几个方面的内容:1. SAP系统概述- 了解SAP系统的基本功能和特点;- 掌握SAP系统的架构和工作原理;- 了解SAP系统在企业管理中的应用价值。
2. SAP财务管理- 学习SAP财务模块的基本功能;- 掌握SAP财务模块的组织架构和配置;- 熟悉SAP财务模块的常用操作和技巧。
3. SAP物流管理- 学习SAP物流模块的基本功能;- 掌握SAP物流模块的组织架构和配置;- 熟悉SAP物流模块的常用操作和技巧。
4. SAP人力资源管理- 学习SAP人力资源模块的基本功能;- 掌握SAP人力资源模块的组织架构和配置;- 熟悉SAP人力资源模块的常用操作和技巧。
5. SAP项目实施- 了解SAP项目实施的基本流程和要点;- 掌握SAP项目管理的方法和技巧;- 学习SAP项目实施中的常见问题和解决方案。
四、培训方式本培训计划将采用多种培训方式,包括但不限于以下几种:1. 线下课堂培训- 由专业讲师进行面对面授课;- 课堂互动、案例分析等形式,提高学员学习兴趣。
2. 线上网络培训- 利用网络平台进行远程培训;- 录制教学视频、直播课程等形式,方便学员灵活学习。
3. 实操演练- 利用SAP系统进行实操演练;- 根据实际情况设计不同的案例,提升学员的操作能力。
4. 实地考察- 安排企业员工参观SAP系统应用成功案例;- 参观企业实际运营情况,了解SAP系统的应用效果。
SAP程序性能优化解析

SAP程序性能优化解析For all entriesThe for all entries creates a where clause, where all the entries in the driver table are combined with OR. If the number of entries in the driver table is larger thanrsdb/max_blocking_factor, several similar SQL statements are executed to limit the length of the WHERE clause. The plus Large amount of dataMixing processing and reading of dataFast internal reprocessing of dataFastThe MinusDifficult to program/understandMemory could be critical (use FREE or PACKAGE sizeSome steps that might make FOR ALL ENTRIES more efficient: Removing duplicates from the driver tableSorting the driver tableIf possible, convert the data in the driver table to ranges so a BETWEEN statement is used instead of and OR statement:FOR ALL ENTRIES IN i_tabWHERE mykey >= i_tab-low and mykey <=i_tab-high.Nested selectsThe plus:o Small amount of datao Mixing processing and reading of datao Easy to code - and understandThe minus:o Large amount of datao when mixed processing isn’t neededo Performance killer no. 1Select using JOINSThe pluso Very large amount of datao Similar to Nested selects - when the accesses are planned by the programmer o In some cases the fastesto Not so memory criticalThe minuso Very difficult to program/understando Mixing processing and reading of data not possibleUse the selection criteriaSELECT * FROM SBOOK.CHECK: SBOOK-CARRID = 'LH' AND SBOOK-CONNID = '0400'.ENDSELECT.SELECT * FROM SBOOKWHERE CARRID = 'LH' ANDCONNID = '0400'.ENDSELECT.Use the aggregated functionsC4A = '000'.SELECT * FROM T100WHERE SPRSL = 'D' ANDARBGB = '00'.CHECK: T100-MSGNR > C4A.C4A = T100-MSGNR.ENDSELECT.SELECT MAX( MSGNR FROM T100 INTO C4A WHERE SPRSL = 'D' ANDARBGB = '00'.Select with viewSELECT * FROM DD01LWHERE DOMNAME LIKE 'CHAR%'AND AS4LOCAL = 'A'. SELECT SINGLE * FROM DD01T WHERE DOMNAME = DD01L-DOMNAME AND AS4LOCAL = 'A' AND AS4VERS = DD01L-AS4VERS AND DDLANGUAGE = SY-LANGU. ENDSELECT.SELECT * FROM DD01V WHERE DOMNAME LIKE 'CHAR%' AND DDLANGUAGE = SY-LANGU. ENDSELECT.Select with index supportSELECT * FROM T100WHERE ARBGB = '00'AND MSGNR = '999'. ENDSELECT.SELECT * FROM T002.SELECT * FROM T100WHERE SPRSL = T002-SPRASAND ARBGB = '00'AND MSGNR = '999'.ENDSELECT. ENDSELECT.Select … Into tableREFRESH X006.SELECT * FROM T006 INTO X006.APPEND X006. ENDSELECTSELECT * FROM T006 INTO TABLE X006. Select with selection list SELECT * FROM DD01LWHERE DOMNAME LIKE 'CHAR%'AND AS4LOCAL = 'A'. ENDSELECTSELECT DOMNAME FROM DD01LINTO DD01L-DOMNAMEWHERE DOMNAME LIKE 'CHAR%'AND AS4LOCAL = 'A'.ENDSELECTKey access to multiple linesLOOP AT TAB.CHECK TAB-K = KVAL." ...ENDLOOP.LOOP AT TAB WHERE K = KVAL." ... ENDLOOP.Copying internal tablesREFRESH TAB_DEST.LOOP AT TAB_SRC INTO TAB_DEST. APPEND TAB_DEST. ENDLOOP.TAB_DEST[] = TAB_SRC[].Modifying a set of linesLOOP AT TAB.IF TAB-FLAG IS INITIAL.TAB-FLAG = 'X'.ENDIF.MODIFY TAB.ENDLOOP.TAB-FLAG = 'X'.MODIFY TAB TRANSPORTING FLAG WHERE FLAG IS INITIAL.Deleting a sequence of linesDO 101 TIMES.DELETE TAB_DEST INDEX 450. ENDDO.DELETE TAB_DEST FROM 450 TO 550.Linear search vs. binaryREAD TABLE TAB WITH KEY K = 'X'.READ TABLE TAB WITH KEY K = 'X' BINARY SEARCH. Comparison of internal tablesDESCRIBE TABLE: TAB1 LINES L1,TAB2 LINES L2.IF L1 <> L2.TAB_DIFFERENT = 'X'.ELSE.TAB_DIFFERENT = SPACE.LOOP AT TAB1.READ TABLE TAB2 INDEX SY-TABIX.IF TAB1 <> TAB2.TAB_DIFFERENT = 'X'. EXIT.ENDIF.ENDLOOP.ENDIF.IF TAB_DIFFERENT = SPACE." ...ENDIF.IF TAB1[] = TAB2[]." ...ENDIF.Modify selected components LOOP AT TAB. TAB-DATE = SY-DATUM. MODIFY TAB. ENDLOOP. WA-DATE = SY-DATUM. LOOP AT TAB. MODIFY TAB FROM WA TRANSPORTING DATE. ENDLOOP. Appending two internal tables LOOP AT TAB_SRC. APPEND TAB_SRC TO TAB_DEST. ENDLOOP APPEND LINES OF TAB_SRC TO TAB_DEST. Deleting a set of lines LOOP AT TAB_DEST WHERE K = KVAL. DELETE TAB_DEST. ENDLOOP DELETE TAB_DEST WHERE K = KVAL. Tools available in SAP to pin-point a performance problem The runtime analysis (SE30 SQL Trace (ST05 Tips andTricks tool The performance databaseOptimizing the load of the database Using table buffering Using buffered tables improves the performance considerably. Note that in some cases a statement can not be used with a buffered table, so when using these statements the buffer will be bypassed. These statements are: o o o o o Select DISTINCT ORDER BY / GROUP BY / HAVING clause Any WHERE clause that contains a sub query or IS NULL expression JOIN s A SELECT... FOR UPDATE If you wan t to explicitly bypass the buffer, use the BYPASS BUFFER addition to the SELECT clause. Use the ABAP SORT Clause Instead of ORDER BY The ORDER BY clause is executed on the database server while the ABAP SORT statement is executed on the application server. The database server will usually be the bottleneck, so sometimes it is better to move the sort from the database server to the application server. If you are not sorting by the primary key ( E.g. using the ORDER BY PRIMARY key statement but are sorting by another key, it could be better to use the ABAP SORT statement to sort the data in an internal table. Note however that for very large result sets it might not be a feasible solution and you would want to let the databaseserver sort it. Avoid the SELECT DISTINCT Statement As with the ORDER BY clause it could be better to avoid using SELECT DISTINCT, if some of the fields are not part of an index. Instead use ABAP SORT + DELETE ADJACENT DUPLICATES on an internal table, to delete duplicate rows.。
SAP系统优化技巧

SAP系统优化技巧
在使用SAP系统时,以下是一些优化技巧,可以帮助提高系
统的效率和性能。
1. 数据压缩
将大量的冗余数据从系统中移除可以显着减少系统资源的使用。
您可以使用SAP系统内置的工具来进行数据压缩,以释放磁盘空
间并提升系统性能。
2. 指标优化
通过优化系统中的指标设置,您可以确保SAP系统能够更快
地生成报告和分析结果。
请定期检查并优化系统中的指标设置,以
避免系统慢速运行或报告生成时间过长。
3. 内存管理
合理管理系统中的内存资源可以显著提升SAP系统的性能。
请确保分配足够的内存给SAP系统,并定期监控和调整内存使用
情况,以避免资源不足或浪费。
4. 索引优化
优化系统中的数据库索引可以提高SAP系统的查询和检索速度。
请定期检查并优化数据库索引,并删除不必要的索引以减少数
据库负担和提升查询性能。
5. 事务处理优化
通过优化事务处理过程,您可以减少SAP系统的响应时间并
提高用户体验。
请评估并优化SAP系统中的事务处理流程,以确
保其能够高效执行业务操作。
这些SAP系统优化技巧将帮助您提升系统的效率和性能,提
供更好的用户体验和业务运行环境。
请定期检查和更新系统设置,
并与SAP支持团队保持紧密联系,以确保系统始终处于最佳状态。
以上为SAP系统优化技巧,希望对您有所帮助!。
SAP流程优化过程培训

顾客(Customer) 竞争(Competition) 变化(Change)
市场环境的变化要求我们更加关注客户的需求和满意
竞争程度: 变化速度和频率: 顾客的要求: 企业关注的重点:
过去 温和的 缓慢的 软弱的 以自己的方便 来经营业务 现在 激烈的 快速的 高要求的 为客户的方便 来经营业务
28流程优化常用手段?消除不增值的活动?简化流程?重新整合过量产出等待时间不必要的移动不必要的加工作业不必要的库存文件缺陷故障返工重复的活动不必要的检验跨部门的协调重新设计表格减少工作程序重构物流系统减少沟通障碍使用适当的技术明确划分流程改进问题区域活动整合人员整合客户整合供应商整合?流程自动化?全新设计2012413重复性的工作数据采集数据传递数据分析5w1h从全局高层次理解流程标杆瞄准检验29hanconsultingchinaltd
四个核心内容:
流程:就是从订单到交货或提供服务的一连串作业,以整体的观念考虑与分析, 减少非增值活动,优化作业过程,缩短交货期。 根本性:就是突破原有思维定式,对现有流程和系统进行综合分析与思考和改进, 优化业务流程设计。 彻底性:摆脱现有系统束缚,对流程进行设计,从而获取对管理方式的变革。 戏剧性:通过对流程的再思考,找到限制企业效益提高的瓶颈,重新设计,使企
2012/4/13
Han Consulting (China) Ltd..
21
BPR与BPI
BPR:虽然强调对流程的全新设计,但在实际操作中(包括国外经典案例),常 常采用的是融入了业务流程改进BPI的思想。 BPI:强调渐进改良,在分析理解现有流程的基础上进行改进,以此为基础建立 新流程。 而BPR主要由高层管理者进行推动,一旦此种推动力减弱,其结果就可想而知。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
© 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