ABAP程序性能优化ppt课件.ppt

ABAP程序性能优化ppt课件.ppt

ID:59433624

大小:1.07 MB

页数:35页

时间:2020-09-18

ABAP程序性能优化ppt课件.ppt_第1页
ABAP程序性能优化ppt课件.ppt_第2页
ABAP程序性能优化ppt课件.ppt_第3页
ABAP程序性能优化ppt课件.ppt_第4页
ABAP程序性能优化ppt课件.ppt_第5页
资源描述:

《ABAP程序性能优化ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、ABAP程序性能优化黄俊2008年11月27日目录一.前言二.程序性能优化的重点三.降低CPU负载的技巧四.降低DB负载的技巧五.程序内存使用优化的技巧六.使用工具检查程序性能程序的效率是每个程序员都应该重视的,无论您是采用哪一种语言进行开发.有时候程序越短,并不一定越快,有时候程序代码很多,但不一定会很慢.程序性能是一把双刃剑,获得时间效率的同时,牺牲的是空间的开销和代码的可读性.大家需要根据实际情况进行优化和权衡得失.下面提供一些建议以提高你的程序运行速度和降低系统荷载。前言第4页程序性能效率优化的重点降低CPU

2、负载降低数据库负载(减少IO操作)内存使用的优化第5页三.降低CPU负载的技巧减低CPU负载使用WHERE条件减少循环次数.减少循环次数可以减少CPU操作次数,减少操作时间LOOPAT…WHERE…SELECTION-OPTIONS:s_vbelnFORvbak-vbeln.LOOPATitab.IFitab-vbelnINs_vbeln.……ENDIF.ENDLOOP.SELECTION-OPTIONS:s_vbelnFORvbak-vbeln.LOOPATitabWHEREvbelnINs_vbeln.

3、……ENDLOOP.不推荐推荐降低CPU负载尽量避免使用MOVE-CORRESPONDING和INTOCORRESPONDINGFIELDSOF.CORRESPONDING语句在系统内部存在隐式操作:1,检查元素名称匹配;2,检查元素类型匹配;3,元素类型转换;SELECT * INTO CORRESPONDINGFIELDS OF TABLE itab FROM vbakWHERE vbeln = p_vbeln.LOOPATitab1INTOwa.MOVE-CORRESPONDING wa to itab2.APP

4、ENDitab2.ENDLOOP.SELECTvbelnposnr INTO TABLE itabFROM vbakWHERE vbeln= p_vbeln.Itab2=itab1.SELECT vbelnasfld1posnr asfld2INTO TABLEitab FROM vbakWHEREvbeln = p_vbeln.LOOPATitab1INTOwa.Itab2-fld1=wa-matnr.Itab2-fld2=wa-meinsAPPENDitab2.ENDLOOP.不推荐推荐推荐降低CPU负载使用SOR

5、TEDTABLE和HASHEDTABLE表类型.降低CPU负载SORTEDTABLE定义:顺序表是在计算机内存中以数组的形式保存的线性表,是指用一组地址连续的存储单元依次存储数据元素的线性结构。线性表采用顺序存储的方式存储就称之为顺序表。顺序表是将表中的结点依次存放在计算机内存中一组地址连续的存储单元中。TYPES:BEGINOFt_tab,vbelnLIKEvbap-vbeln,posnrLIKEvbap-posnr,ENDOFt_tab.DATA:sort_tabTYPESORTEDTABLEOFt_tabWITH

6、NON-UNIQUEKEYvbeln.HASHEDTABLE定义:哈希表(也叫散列表)是根据关键字值直接进行访问的数据结构,也就是说,它通过把关键字值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做哈希函数,存放记录的数组叫做哈希表。DATA:hash_tabTYPEHASHEDTABLEOFt_tabWITHUNIQUEKEYvbeln.注意:哈希表类型只能使用唯一键约束,而且当主键值不唯一时效率不能体现。STANDARDTABLE定义:DATA:stad_tabTYPESTANDARDTABLEOF

7、t_tab.观看示例降低CPU负载使用BINARY SEARCH二分查找算法.一般线性查找的缺点就是耗时,而二分查找比线性查找更高效.READTABLEitab2WITHKEYvbeln=Itab1-vbelnANDposnr=itab1-posnr.时间复杂度为O(n)阶.SORTTABLEitab2BYvbelnposnr.READTABLEitab2WITHKEYvbeln=Itab1-vbelnANDposnr=itab1-posnrBINARYSEARCH.时间复杂度为O(logn)阶。观看示例注意:使用BI

8、NARYSEARCH前必须对内表进行按索引排序.不推荐推荐降低CPU负载使用较高效的DELETEADJACENTDUPLICATESFROM删除内表邻近重复记录.注意:使用前必须要对内表先进按索引排序SORTITABBYXXXX.观看示例降低CPU负载使用较高效的COLLECT语句对记录进行聚集加总.注意:COLLECT语句的效率

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。