带联接的索引视图对基表插入和删除的影响

时间:2018-12-13 03:25:53

标签: performance indexed-view

我们在Azure数据库中有customer和Order表,并使用以下联接查询创建了索引视图

SELECT orderid, c.FirstName, c.LastName, c.Email,c.phone
from [Order] o
join Customer c on c.CustomerId = o.CustomerId

订单表大约有1000万条记录,而客户有500万条记录。在Orderid的视图上创建了聚集索引,在FirstName,LastName,Email和Phone上创建了4个非聚集索引。

聚集索引在CustomerId的Customer表中退出。 订单表中OrderId上的聚集索引退出,而订单表中customerid上的非聚集索引退出。

如果我们尝试从Customer Table删除任何记录。执行计划也会更新Order表中的非聚集索引,这非常昂贵。

下面是有关执行计划映像的链接。

Exceution Plan Screenshot

目前大约需要15分钟才能删除1000条记录。有人可以建议任何解决方案以提高删除性能

0 个答案:

没有答案