点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
FM改进性能的一部分,我通过复制两个输入/输出的现有FM相同,点击相同的表来创建新的FM。 我正在使用SAT ST05来测量更改,在新的FM中,我对SQL查询和ABAP代码做了些微更改。
问题是我在两个fm中都用相同的查询命中相同的表时,第一次执行任何fm时结果要花费更多的时间(60秒)并被缓冲,然后第二个fm执行得太快(4秒)。/p>
我试图一天执行一次fm,另一天又执行FM-这样做不会保存缓冲区。 这里的另一个问题是我正在质量检查中进行测试,服务器负载每天都在变化。 假设我执行新/旧FM的一天是50秒,另一天则是100秒....使用相同的查询。
我们尝试使用/$ SYNC和/$ TAB没有帮助,我的基础团队也没有帮助,他们说结果在oracle db级缓冲,以清除我们没有选择的缓冲。
让我们知道如何清除缓冲区并同时测试两个FM。
谢谢
毗湿婆
我真的不明白为什么如果要加快查询速度就必须清除缓冲区。 如果您不想使用缓冲区,我想您可以为您选择的表(在SE11或SE13中)设置不允许的缓冲,或者另一种简单的方法是在查询中添加BYPASSING BUFFER ...您可以阅读此主题 缓冲区,也有分析指南:
https: //blogs.sap.com/2015/08/27/to-buffer-or-not-to-buffer-a-database-table /
这是经典的" 问题"。 如果您在不同的时间,不同的上下文等环境中运行,则不能有相同的持续时间。在极端情况下,系统专用于性能优化。 即使是第一次测量,也必须有2个连续的执行,而由于缓冲,您必须测量第二个。 如果您认为一条SQL语句确实过长,则必须分析其执行计划,更改SQL,然后再次运行两次并测量第二条。 不仅是持续时间,还有其他要分析的因素(读取的段数等)/$ SYNC仅清除当前应用程序服务器的SAP缓冲区(而不是数据库缓冲区)。
对"在oracle数据库级别缓冲"一无所知
但是关于ABAP的表缓冲:
https: //help.sap.com/http.svc/rc/abapdocu_752_index_htm/7.52/zh-CN/index.htm?file=abensap_puffering.htm
专用的性能系统 优化-很难。
执行计划:是的,我正在这样做,但是它仅给出是否使用索引。 根据对执行计划的分析,我对新的财务管理做了一些更改。 现在我要测试两个调频,看看是否达到了任何性能。
/$ SYNC仅清除当前的应用程序服务器SAP缓冲区(不清除数据库缓冲区)。 -是的,但这是我在论坛/博客中以及从基础上找到的唯一选择。
Vishwa
所以这是Oracle的事,
不确定使用native-sql命令,更好地寻找可用的工具,因此向数据库管理员询问一些脚本吗?
OK可以说您要检查同一数据库上2 fm的性能。 设置差异编码方法。 我认为您不需要在这里关心缓冲区,我认为您可以将数据放入缓冲区(通过创建简单的SQL或仅用于将数据加载到缓冲区的目的),然后针对该缓冲区运行两个fm,您将获得所需的结果 (只是我的理想:))。 您可以安排在同一时间同时运行这些fm,以最大程度地减少其他影响。 再次,您不能期望每次运行相同的fm都会一样,就像Sandra所说。
一周热门 更多>