SAP S/4HANA New Simplified Data Model (NSDM) 模型介绍

2023-10-16 06:59

本文主要是介绍SAP S/4HANA New Simplified Data Model (NSDM) 模型介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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 操作,锁问题得到了解决。

S/4HANA 里具体的实现思路:

  • 使用 CDS 视图形式的代理对象。用于动态计算库存数据,并连接混合表中包含的主数据结果。
  • 如果给定的混合表有一个分配给它的代理,该表的 SELECT 语句将在数据库接口层(Database Interface Layer)重定向到指定的 CDS 视图。

动态计算得到库存的值,很显然比直接从聚合表里获取已经聚合好的数据要慢。从理论上说,库存值的计算性能与物料单据表中的记录数量成正比。 为了解决这个性能问题,SAP S/4HANA 使用了作为 MATDOC 表子集的第二个表,即 MATDOC_EXTRACT。

这篇关于SAP S/4HANA New Simplified Data Model (NSDM) 模型介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/219824

相关文章

Python中的魔术方法__new__详解

《Python中的魔术方法__new__详解》:本文主要介绍Python中的魔术方法__new__的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、核心意义与机制1.1 构造过程原理1.2 与 __init__ 对比二、核心功能解析2.1 核心能力2.2

Pytest多环境切换的常见方法介绍

《Pytest多环境切换的常见方法介绍》Pytest作为自动化测试的主力框架,如何实现本地、测试、预发、生产环境的灵活切换,本文总结了通过pytest框架实现自由环境切换的几种方法,大家可以根据需要进... 目录1.pytest-base-url2.hooks函数3.yml和fixture结论你是否也遇到过

Pydantic中model_validator的实现

《Pydantic中model_validator的实现》本文主要介绍了Pydantic中model_validator的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录引言基础知识创建 Pydantic 模型使用 model_validator 装饰器高级用法mo

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

GORM中Model和Table的区别及使用

《GORM中Model和Table的区别及使用》Model和Table是两种与数据库表交互的核心方法,但它们的用途和行为存在著差异,本文主要介绍了GORM中Model和Table的区别及使用,具有一... 目录1. Model 的作用与特点1.1 核心用途1.2 行为特点1.3 示例China编程代码2. Tab

MySQL中慢SQL优化的不同方式介绍

《MySQL中慢SQL优化的不同方式介绍》慢SQL的优化,主要从两个方面考虑,SQL语句本身的优化,以及数据库设计的优化,下面小编就来给大家介绍一下有哪些方式可以优化慢SQL吧... 目录避免不必要的列分页优化索引优化JOIN 的优化排序优化UNION 优化慢 SQL 的优化,主要从两个方面考虑,SQL 语

C++中函数模板与类模板的简单使用及区别介绍

《C++中函数模板与类模板的简单使用及区别介绍》这篇文章介绍了C++中的模板机制,包括函数模板和类模板的概念、语法和实际应用,函数模板通过类型参数实现泛型操作,而类模板允许创建可处理多种数据类型的类,... 目录一、函数模板定义语法真实示例二、类模板三、关键区别四、注意事项 ‌在C++中,模板是实现泛型编程

Python实现html转png的完美方案介绍

《Python实现html转png的完美方案介绍》这篇文章主要为大家详细介绍了如何使用Python实现html转png功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 1.增强稳定性与错误处理建议使用三层异常捕获结构:try: with sync_playwright(