查询性能问题:Dynamics CRM s-s-rS 报告的查询案例实体(事件)

Posted

技术标签:

【中文标题】查询性能问题:Dynamics CRM s-s-rS 报告的查询案例实体(事件)【英文标题】:Query Performance issues :query case entity (Incident )for Dynamics CRM s-s-rS Report 【发布时间】:2018-07-03 09:28:20 【问题描述】:

我已经写了下面的动态 crm-s-s-rS 报告查询,但是执行时间太长(大约 6 分钟)。

查询:

选择ticketnumber、Title、zon_requeststatusname、 FI.owneridname, zon_applicationname, zon_applicationareaname, LastLogChanged, zon_requestorname, FI.createdon, FI.createdbyname, isescalatedname, zon_ordername, DATEDIFF(DAY,GETDATE(), FI.createdon) 作为来自过滤事件 FI 左外连接的 AgingPeriod (select top 1 zon_case, max(createdon) as LastLogChanged from 按createdon过滤zon_caselog组,zon_case order by 2 desc )CL 在 FI.incidentid=CL.zon_case 其中 DATEDIFF(day,FI.createdon ,GETDATE()) = @CreatedInLast 和 DATEDIFF(day,FI.modifiedon ,GETDATE()) = @ModifiedSince

Same Queries without Filtered view :(但不想使用,因为我们会失去安全优势)

声明@CreatedInLast INT 声明 @ModifiedSince INT SET @ModifiedSince = 1 SET @CreatedInLast = 7

SELECT ticketnumber, Title, zon_requeststatusname, FI.owneridname, zon_applicationname, zon_applicationareaname, --MAX(CL.modifiedon), zon_requestorname,FI.createdon,FI.createdbyname, isescalatedname, zon_ordername, DATEDIFF(DAY,GETDATE(), FI.createdon) as AgingPeriod FROM filteredincident FI (NOLOCK) LEFT OUTER JOIN zon_caselog CL (NOLOCK) 在 FI.incidentid= CL.zon_case AND CL.modifiedon >= GETDATE()- @ModifiedSince WHERE FI.createdon >= GETDATE()- @CreatedInLast GROUP BY ticketnumber, Title, zon_requeststatusname, FI.owneridname, zon_applicationname, zon_applicationareaname, zon_requestorname,FI.createdon,FI.createdbyname, isescalatedname, zon_ordername

我已经运行了DBCC DBREINDEXDBCC INDEXDEFRAG

请告诉我,需要改进上述查询。

【问题讨论】:

我看到 Nolock 在第一个查询中丢失;仍然是第二个查询使用过滤事件 【参考方案1】:

Filteredview 将在内部将选择查询与 POA 表连接起来,以维护结果集中的 CRM 安全模型。

我建议您查看 PrincipalObjectAccess (POA) 表的大小并考虑cleaning。

【讨论】:

以上是关于查询性能问题:Dynamics CRM s-s-rS 报告的查询案例实体(事件)的主要内容,如果未能解决你的问题,请参考以下文章

Dynamics CRM Audit Performance Troubleshooting

Dynamics CRM 2015/2016/365 Web API:级联查询

Dynamics CRM 2015/2016 Web API:聚合查询

Dynamics CRM 2015/2016 Web API:新的数据查询方式

Dynamics CRM 2015/2016/365 Web API:级联查询

Dynamics CRM 2015/2016 Web API:基于视图的数据查询