On the Origin of SAP S/4HANA - Part 2 HANA Data Model

On the Origin of SAP S/4HANA - Part 2 HANA Data Model

All opinions and statements are writer's own.

 S/4HANA Data Model

Simplified data model in S/4HANA brings major benefit for customers and SAP product development team. Simplified data model

  • allows real time visibility, reporting and analytics for business users and decision makers
  • makes solution development much easier – no need to update redundant data to several tables of aggregates and indices
  • locking and releasing locks, especially for aggregates, is not needed
  • reduces data footprint to 1/10th of original SAP ERP on anyDB*

These topics sound technical, even difficult, but we will explain them in an easy way. No worries.

We start by explaining how SAP ERP works. After understanding how traditional ERPs and databases work, we explain S/4HANA simplified data model. Please see “On the Origin of SAP S/4HANA – Part 1 Code Line” for history of SAP ERP solutions.

*Roughly half of this is achieved due to simplified data mode. Another half is achieved due to HANA technical features, which will be explained in another part of this blog series.

SAP ERP – Transactional System

SAP ERP is a transactional system. It records large amount of individual transactions, e.g. purchase order, production order, material receive or issue to / from stock. This is the very core and fundamental feature of any ERP system. SAP ERP is maybe the most advanced and scalable to handle huge amount of transactions.

Our example for a transaction is material issue from stock: 11 pallets (=55 pieces) of material P-100 are taken to cost center (MvT, movement type 201 tells that this transaction is “Goods Issue to Cost Center”).

Transactions are stored to database. Material transactions are stored to MSEG table – second line in the picture below stores our example.

Large SAP ERP systems record huge amount of different kind of logistics and financial transactions daily. This is the core and fundamental capability of any ERP system.

SAP ERP Aggregates – What and Why?

SAP ERP contains lot of aggregates. Our example for an aggregate is inventory level. Inventory level is sum of all material transactions. Pump P-100 inventory level is cumulative sum of all material receives (+) and issues (-).

SAP ERP system stores inventory levels in the database – MARD table (Unrestricted stock = 75).

SAP ERP contains aggregates in both finance and logistics. Aggregates are pre-calculated sums based on transactions.

Aggregates are needed, because traditional databases are not able to calculate quickly & on-fly these sums when needed.

Aggregates – Origin of Complexity

Aggregates make transactional system complex. Each time a single and simple transaction is entered system needs to update several aggregates. Instead of just programming a simple database insert of simple transaction, programmer needs to understand complex logic of different aggregates and rules how to update them. And then program all these updates.

In large transactional systems, like SAP ERP, aggregates cause extra headache. System needs to control that parallel transactions update aggregates in a controlled way. Aggregates needs to be locked and un-locked in a controlled way. SAP ERP contains complicated, but very well working, procedures for this. If you are real techie, see more information from SAP Help about Enqueue / Dequeue.

SAP S/4HANA Simplified Data Model

Great news is that S/4HANA will not contain aggregates. S/4HANA simplified data model contains only transactions. All sums, e.g. inventory level, are calculated quickly & on-fly when needed. Picture below shows what this means in our inventory example.

MARD table containing the aggregate for inventory level does not any more exist in S/4HANA Simple Logistics. And many other table for aggregated and indices have also disappeared. MSEG New contains our transactions, and all aggregates are calculated on-fly when needed.

Positive consequences are reduced amount of data and much simpler logic in the database and programs writing and reading the data.

Some Technical Considerations

Simplified data model exists already for S/4HANA Simple Finance 1.0 and 2.0 and Simple Logistics 1.0 will be available soon. And later we will get more and more simplified functionalities. To simplify whole SAP ERP will take some time.

In the previous blog, I wrote how S/4HANA contain both original SAP ERP code line and new S/4HANA code line. In the next blog, we will go deeper to HANA technology and explain how simplified data model and different code lines work together. Stay tuned to this blog series.

 

Existing customer (and SAP made) reports and other functionality works with S/4HANA data model. Current aggreate table are presented as "Compatibility Views", and existing ABAP code will connect them. Compatibility View do NOT store data, aggregations presented by Compatibilty Views are calculated on-fly from S/4HANA simplified data model. Very good point Musa.

Like
Reply
Musa CEBE

Managing Partner - Fio Bilişim Hizmetleri

9y

Nice blog. Thanks for sharing. But i get stuck in completely removing aggregations. Performance optimisation is not the only advantage of aggregation tables. Other important advantage of aggregation tables is to avoid calculation mistakes of critical data. (for example unrestricted stock). It is one of SAP's strength. Also most of customer reports use aggregation tables. I think with S4 HANA it would be a great need to develope some classes that calculate old aggregation data and returning the result in same structure with aggregation tables.

Like
Reply
Joseph Volkan O.

Chief Information Technology Officer @ Graniser Granit Seramik San. ve Tic.A.Ş. | Driving Digital Transformation

9y

Good summarization

Like
Reply
Jari Varjo

HHJ, Director @tietokeskus I Founder @Turku Distillery

9y

Thanks for demystifying these topics. This article makes it crystal clear what "simple" means in practise.

Like
Reply

To view or add a comment, sign in

More articles by Kari Pietilainen

Insights from the community

Others also viewed

Explore topics