SAP ABAP程序效率优化 Perfomance Tune

前面三年只是有这个概念,能够执行的规则只有数条。

三天不写代码手生。最近听了张老师的课,觉得收获很大,笔记摘要:

1.使用正确的表。SAP有标准的索引表或者VIEW。参见sap notes 185530/191492/187906
  LIPS 使用VGBEL不如先用VBFA表
2.使用正确的索引。好的索引非常好。不好的索引可能索引比表大,也有的索引让当前程序变快,其它的程序却变慢了。
  新建索引转产以前都需要分析索引是否建的有效
3.多次存取数据库,不如一次存取批量的数据。尽量减少访问数据库的次数
4. LOOP里面不要写select查询
5. LOOP里面嵌套loop的时候,尽量减少外层的次数
6. 对于MSEG,MKPF,LIPS等表,尽量少用inner join。根据有利的筛选字段过滤较小的数据集以后,在内表处理
7. 多用for all entries,先做三步check:drive table是否为空;排序;去重(delete duplicate records)
8. 对于in range table的搜索,超过一定数据量就会出现dump
9. ST10分析那些是hot table,为这些表分配固定的缓存,提高缓存命中率,减少数据库访问次数。对于命中率低的表,单独建立较小的缓存区,防止覆盖hot table的缓存。DB02 分析哪些表的缓存效率好,哪些表的缓存效率低
10. 策略:不必为小概率的错误牺牲大量数据处理的效率。批量保存时,采用异步保存可以大大提高效率。可以通过事后纠错来减少数据不一致的情况。

 

ST05 - Trace requests

SE30 - Runtime analys

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值