表读取系统A很快,系统B慢

2020-09-04 15:51发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家

也许你们中的某人有一个主意-我正在使用LGNUM + RSRC来读取表/SCWM/WHO。 为此,我在这两个字段上创建了一个索引。

如果我使用SE16,则在两个字段(RSRC为R *)上进行选择,然后检查条目数,这最多需要2秒钟。

现在,我们已经复制了该EWM系统,相同的主数据,相同的自定义...(希望都一样)。 在新系统中,使用SE16进行此选择最多需要250秒(相比之下,则是2秒)。

已经重建了索引,更新了sys参数,增加了表空间,更新了oracle参数等等...

有什么想法吗?

谢谢

迈克尔

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家

也许你们中的某人有一个主意-我正在使用LGNUM + RSRC来读取表/SCWM/WHO。 为此,我在这两个字段上创建了一个索引。

如果我使用SE16,则在两个字段(RSRC为R *)上进行选择,然后检查条目数,这最多需要2秒钟。

现在,我们已经复制了该EWM系统,相同的主数据,相同的自定义...(希望都一样)。 在新系统中,使用SE16进行此选择最多需要250秒(相比之下,则是2秒)。

已经重建了索引,更新了sys参数,增加了表空间,更新了oracle参数等等...

有什么想法吗?

谢谢

迈克尔

付费偷看设置
发送
8条回答
小灯塔
1楼-- · 2020-09-04 16:57

这是数据库分发到磁盘的方式吗? 如果其他所有条件都相同,那么我想看看第一台服务器上的分布是否分布在大量LUN上,而第二台服务器上的分布是否全部分配给单个LUN,即使两个服务器都使用同一SAN 用来。 即使使用固态驱动器,这也会在数据I/O时间上产生令人惊讶的差异。

当学会了学习
2楼-- · 2020-09-04 16:57

我也可以看到-在两个系统上都相同的选择,即" SQL语句" 是不同的:

快速

"快"的一个与TABLE ACCESS BY INDEX ROWID匹配,"慢"的一个与TABLE ACCESS BY INDEX ROWID。


不确定,但是我已经找到了一个oracle参数" _optimizer_batch_table_access_by_rowid" =>在慢速系统中设置为FALSE,在快速系统中未设置。

那是原因吗?

致谢

迈克尔

PS还将检查LUN

Violet凡
3楼-- · 2020-09-04 16:41

嗨,迈克尔

在源和目标中运行ST01跟踪并比较用于语句的时间...您应该 能够确定在哪里消耗了时间

这可能意味着索引无法正常工作,并且已在表上进行了顺序读取。

JP,

>
DafaDDDa
4楼-- · 2020-09-04 16:36

嗨胡安

已经完成了一些跟踪,以及ST05(性能)。 我可以看到在两个系统中都使用了正确的索引:

如何确保我的索引没有"损坏"?

致谢

Michael

何必丶何苦呢
5楼-- · 2020-09-04 16:55

在ST01中运行SQL跟踪,并检查它为您提供更多信息的语句。

当学会了学习
6楼-- · 2020-09-04 16:33

好的,以及如何确保索引已损坏 或如何解决? 已经通过SE14以及直接在UNIX级别上重新创建了

一周热门 更多>