SAP ERP Central Component(简称 ECC)库存管理数据模型,是建立在物料文档(Material Document)、混合表(Hybrid Table)、聚合表(Aggregation Table)和历史表(History Table)之上的。
这些表里面存储着部分冗余信息,用于向应用返回各种查询需求。
数据模型中的大量表,往往会导致库存相关报告运行时的低性能,因为为了显示物料库存值,必须从这些表里抽取各种维度的信息。另一方面,在处理旧数据模型的表时,UPDATE 操作导致的数据库锁有可能会与可能会与来自业务操作的另一把锁产生冲突。
文章图片
为了解决 SAP ECC 的这些限制,在 S/4HANA 基于以下前提设计了一个新的简化数据模型(New Simplified Data Model,简称 NSDM):
- 所有库存数据将从存储在单个表中的重要文档信息计算,并且这张表仅支持 INSERT 操作管理。通过动态计算物料库存信息,解决了数据冗余问题。
- 使用单一的物料文档表,解决了报告性能低下的问题。
- 由于只在物料文档表中使用 INSERT 操作,锁问题得到了解决。
- 使用 CDS 视图形式的代理对象。用于动态计算库存数据,并连接混合表中包含的主数据结果。
- 如果给定的混合表有一个分配给它的代理,该表的 SELECT 语句将在数据库接口层(Database Interface Layer)重定向到指定的 CDS 视图。