中间件_中国域名注册商有哪些_速度快

企业应用 虚拟云 浏览

小编:绩效问题指南提示和技巧 目的 绩效问题总是发生在期末结帐时。 遇到绩效问题时总是不清楚该怎么办。 本博客将指导您如何处理详细步骤。 初步分析 必要信息 在您得到绩效事件

绩效问题指南提示和技巧

目的

绩效问题总是发生在期末结帐时。

遇到绩效问题时总是不清楚该怎么办。

本博客将指导您如何处理详细步骤。

初步分析

必要信息

在您得到绩效事件后问题,首先您需要知道以下信息:

–使用的程序/T代码是什么?

–工作状况如何?它还在运行吗?它运行了多久了?正常完成时间是几点?

–这个问题以前发生过吗?如果是,是如何解决的?

–最近有没有数据库更新、内核更新、支持包更新?

–这项工作的绩效问题仅仅是系统层面的吗?

使用SM37检查作业

首先,当然,您需要登录系统。

步骤1。T代码:SM37检查作业

找到作业的简单方法是使用作业名称。

您也可以根据状态选择作业。

有时作业名称相同,我们需要通过选择开始条件来找到确切的作业。

步骤1。T码:SM37查看作业

持续时间是本页最重要的数字

点击此按钮显示日志。您可以检查是否有任何错误消息。

单击"参数",然后单击"菜单转到变量"以检查此作业正在使用的变量。请参阅下一屏幕->

这里是程序名。

这里您可以看到作业的所有参数。

ST12的背景跟踪

ST12的背景跟踪

如果性能问题是可复制的,这将是最好的。因为我们可以为作业启动ST12跟踪。采集到的性能数据将更准确,更易于分析。

您需要先对ST12进行设置。

检查当前系统时间

然后检查系统的当前时间(有时您使用的系统具有不同的时区)

单击菜单"系统状态"。

这里是当前系统时间。

安排作业

打开一个新会话,转到要跟踪和安排作业的T代码。

记住使用后台处理。

设置执行时间。(根据当前系统时间)

点击确认

安排ST12跟踪

返回ST12

点击菜单实用程序计划跟踪Batchjob或workprocess

在最后一页输入作业名称

如果作业名称不一致,可以使用"用户名"和程序名

我们需要根据作业开始设置"开始"时间时间。"到"时间",设置为一小时后。

将间隔更改为10秒

输入有意义的评论

最后,按"计划跟踪"

计划ST12跟踪

如果跟踪成功收集,您应该能够在跟踪列表中看到以下状态:

返回到ST12的初始屏幕,在页面底部,您应该能够选择和检查跟踪结果:

检查跟踪结果

现在点击"ABAP跟踪"按钮,下面的屏幕将显示:

请检查下一个屏幕的详细说明。

高级分析

检查跟踪结果

首先,请检查时间百分比栏。

-如果ABAP占用的时间最多,应该程序问题,应由拥有程序的团队进行分析。但是对于需要很长时间的性能问题,90%的问题都是由数据库引起的

-所以大部分时间数据库将花费最多的时间。通常数据库将显示总时间的75%以上。事实上,如果你得到这个结果

如果你想继续分析:

–首先你可以按净时间降序排序,然后你可以看到第一行显示了花费时间最多的呼叫。通常这应该是性能问题的原因。

–正如您在示例中看到的,访问表KEKO花费的时间最多。因此,首先您可以尝试搜索关键字为"程序名"+"表名"+"性能"的注释。

–您可以单击"DB->"查看更多详细信息。

检查执行计划

您可以在这里看到访问表KEKO的相关语句列表。

您可以选择最昂贵的语句,然后单击"解释"按钮。

检查执行计划

在这里您可以看到此SQL语句的执行计划:

索引

首先我们需要了解什么是索引:

–当您在黄页电话簿中查找业务时,华为云优惠券,您可能从未考虑从头到尾阅读整个电话簿。你更可能在中间的某个地方打开这本书,云计算库,通过来回搜索几次,利用名称按字母顺序排序的事实,啊里云服务器,专注于所需的业务。

–数据库处理未排序表的一种方法是使用耗时的顺序读取记录。为了使数据库不必对每个SQL语句查询执行顺序读取,云服务器好吗,每个数据库表都有一个对应的主索引。

然后我们需要了解主索引和次索引之间的区别:

–我们可以认为表的键字段组合是主索引。您可以使用SE11检查每个表以找到其关键字段。

–主索引总是唯一的;也就是说,对于索引字段的每个组合,只有一个表条目。

–有时主索引是不够的。我们需要定义一个包含所需字段的二级索引。您也可以通过点击"索引…"按钮来检查SE11的二级索引

-例如,物料编号不是表KEKO的关键字段。如果我们想按物料编号搜索,我们可以在物料编号字段上定义一个二级索引。我们可以在SE11中进行检查,云数据存储,KEKO~A是我们讨论的第二个索引。

根本原因

我们已经知道如何检查执行计划和索引的使用。现在我们来讨论性能问题的原因

基本上有两种问题:

-索引缺失

-使用了错误的索引

(可以通过ST05–Enter SQL语句进行测试)

索引缺失

例如,用ZIFFR搜索KEKO时,由于它不在主索引中,也没有创建次索引,系统需要进行全表扫描

如果ZIFFR字段包含很多唯一值,那么全表扫描将非常耗时

解决方法:为表定义新的二级索引

使用了错误的索引

-有时,由于某些原因,虽然存在正确的索引,优化器仍然选择了错误的索引。

这可能是由于过时的表统计信息造成的。当表索引发生变化时,需要手动更新表的统计信息。

在某些数据库(如MSSQLServer)中,每次调用的执行计划不会发生变化,有时会遵循最后一次调用的执行计划。因此可能使用了错误的索引。

解决方案:

–更新表统计。

–创建DB提示(参考注释2006946)

如何更新表统计

T代码:DB02

当作业仍在运行或不可复制时

作业仍在运行。

使用SM50分析

–通常在一个或两个表上发生问题,当您不断刷新屏幕时,表保持不变。然后找出语句并检查执行计划

–通过菜单管理程序调试,可以开始调试并找出当前正在读取的语句

使用ST12跟踪

如果作业运行了很长时间并且仍在运行。您可以像第一部分一样对作业进行一段时间的ST12跟踪。

您可以从SM37获取作业详细信息。

请与STAD

联系,如果无法再次复制该问题。我们可以通过STAD查看作业运行期间的状态。

您可以查看"数据库请求时间"的结果。

欢迎您的评论。

如果您喜欢,请给这个博客打分或点击"喜欢"。

您的参与是我创造新资源的最好动力。

谢谢大家!

亲爱的Owen Liu,

当前网址:http://vmchk.cooou.com/share/104942.html

 
你可能喜欢的: