ABAP 程序性能优化总结

目录

关键词

关键步骤

运行效果


关键词

程序性能优化、效率优化、速度优化

关键步骤

  • 尽量减少第一步结果集的行数,这样可以大量减少后续连接大表时的耗时
  • 尽量缩小需要LOOP循环的内表,比如去重或者删除不必要的数据
  • JOIN 使用:不要一次性 JOIN 超多表
  • 减少辅助表的行数,也就是需要读取数据的内表的行数
  • 看业务是否能使用排序表或者哈希表,也可以减少读取时间。如果不行的话,要先对标准表进行排序,注意要对读取的键依次排序,顺序不能乱,然后再使用二分法进行读取
  • 不要在LOOP里面写SELECT,这样效率很低。先将数据在LOOP外获取出来,再进行读取
  • 尽量不要LOOP套LOOP,以及多重循环
  • 在SELECT的时候,只查询需要的数据,不要SELECT *,直接写*取出那么多数据。
  • 在用 FOR ALL ENTRIES IN 时:先判断这个内表非空、去重

尽量减少第一步结果集的行数,这样可以大量减少后续连接大表时的耗时

排序要按照字段的读取顺序进行排序!!否则二分法BINARY SEARCH会读取失败

减少辅助表的行数,也就是需要读取数据的内表的行数

推荐「在 DB 做 LEFT JOIN」,而不是读出來再 READ 匹配

运行效果

在220系統,由原来的8.43秒到秒出:

效率在原来的基础上,也提升了:

相关推荐
AAwangzong25 分钟前
金融AI Agent技术解析:知识检索、RPA执行与多智能体协同如何实现?
经验分享
by2099912 小时前
C++ 智能指针的所有权与使用
开发语言·c++·经验分享
m0_7196408712 小时前
2026年高校科研机构轮式双臂机器人二次开发平台搭建测评指南
经验分享·机器人
不一样的故事12615 小时前
NB/T 47013.8-2015 附录D 吸枪技术
人工智能·经验分享·算法
程序边界15 小时前
一台数据集成软件的拆解笔记(下):一致性、容错、跑批与迁移,KFS 真正难的地方在这
java·前端·笔记
金色光环17 小时前
【DSP学习】C2000_ADC中断_笔记
笔记·学习
zhangrelay17 小时前
mrpt杂乱笔记-26-10-31
笔记·学习
数据库小学妹18 小时前
MySQL磁盘IO瓶颈:iostat与刷脏fsync
数据库·mysql·性能优化
极限实验室18 小时前
Easysearch 布尔查询子句重排序(二)|ConjunctionDISI 按 cost 排序源码解析
后端·搜索引擎·性能优化