ABAP CDS性能问题 (一)

例如:以表VEVW为例子,把同一个HU的所有外向交货单号按照时间戳来串联起来,如下图:

 

情况1.

如果输入的条件为handle

大概执行时间为100多毫秒,分配内存为2.4MB

情况2.

输入条件为DN1

消耗时间为2秒多,分配的内存为6G

结论:

之所以有这么大的差异,是因为按HANDLE的时候,字段handle是关键字平且关键字自带索引,所以系统把数据过滤下降到DB层,以VEVW为数据的为基础(handle为过滤条件),自下而上的推导数据,情况1的整个视图计算过程如下图

 

请况2,是因为输入DN1没有索引,而且该字段又用了汇总的功能,导致系统无法正常的把过滤数据下降到DB,系统几乎以EKKO的整个表作为基础数据往上推导,推导过程见下图

所以在建ABAP CDS视图时最好关键字,索引等因素考虑在内,以提高ABAP CDS的性能,不然CDS视图很容易把整个表的数据都装载进来消耗极大的资源

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值