This blog post targets SAP System Administrators and Technical Architects to provide some insights into End-to-End Performance of SAP S/4HANA
What is Performance?
The most important indicators for performance are the End-to-End Response Time and throughput.
In SAP systems, many factors can cause performance bottlenecks. Hardware bottlenecks and bad configuration can cause problems, Insufficient hardware, like slow CPUs or not enough main memory, can make an SAP system unusable. The resource consumption (CPU, Memory, I/O, Disc) on all involved components has also to be considered for all types of processing.
Sizing is the process of translating business process requirements into hardware requirements; sizing exercise determines the hardware requirements of the SAP S/4HANA system, SAP HANA database as well as the disk size, the required memory and required network throughput.
For more Information on Sizing, depending on the “To Be” system release and scenarios, please refer to the following sources
- 1872170 – ABAP on HANA sizing report (S/4HANA, Suite on HANA…)
The correct sizing of the SAP system is very important, otherwise the performance of SAP system will be below its potential.
The end user performance is mainly correlated to the End-to-End response time; several factors loosely constitute End-to-End response times, it is the sum of backend response time (the time to retrieve data and process the requested response), the time to transport request and response data between client and server, and the time to finally render the result in.
SAP S/4HANA End-to-End Performance
SAP S/4HANA Architecture consist of 3-tiers, a SAP Fiori UI5 frontend, an SAP S/4HANA ABAP backend and a SAP HANA database
Some SAP HANA features and ABAP coding that contribute to backend response times.
- core data services (CDS)
- ABAP Managed Database Procedures
- Compatibility views
- Parallel processing in SAP HANA
- Columnar in-memory database
End-to-End performance of an SAP S/4HANA system is spread across 4 layers: SAP Fiori UI, SAP S/4HANA ABAP layer, CDS views and SAP HANA
SAP S/4HANA ABAP
Potential ABAP Application related areas which impact End-to-End performance of SAP S/4HANA
- ABAP coding errors
- Inactive ABAP objects
- Inactive Business Functions
- Missing / Wrong Functional configurations
- Missing Backend Authorizations
- Inactive CDS views (DCL, DDL)
- High OData response times
- Inactive OData services
Refer to the following sources for additional information on SAP S/4HANA performance Best Practices
- 2689405 – FAQ: S/4HANA Performance Best Practices – Collective Note
- 1794297 – Secondary Indexes for S/4HANA and the business suite on HANA
Due to the column-based architecture, SQL access to tables with a high number of entries can be very fast on SAP HANA, even without additional secondary indices. By observing the general symptoms of SAP HANA systems, resource bottleneck (CPU, Memory and I/O), paging or column store unloads are possible causes of poor performance.
Refer to the following sources for additional information on SAP HANA performance Best Practices
- 2000000 – FAQ: SAP HANA Performance Optimization
- 2600030 – Parameter Recommendations in SAP HANA Environments
- 1999997 – FAQ: SAP HANA Memory
- 1698281 – Assess the memory consumption of a SAP HANA System
SAP S/4HANA Core Data Service (CDS) Views and VDM
Core Data Services (CDS) is an enhancement of SQL which provides a data definition language (DDL) for defining semantically rich database tables/views (CDS entities) in the database. The enhancements include annotations, associations, and expressions. The Virtual Data Model based on Core Data Services (CDS) exposes business relevant data in a semantically rich and harmonized way. It provides HANA-optimized access to business data via SQL. The S/4HANA Core data model is semantically and structurally leading, ensuring correct cross-references between traditional and new business processes.
Accessing CDS views impacts quite significantly the resource consumption on the persistency layer. From an architecture point of view there are two main differences compared to the way we have accessed business data before. In the past only transactional data and some master data had been accessed from persistency; all kind of Metadata (customizing, texts, etc.) have been cached on the Application Server. Using CDS views, simple direct access to a (maybe even buffered) table may be replaced by a complex (layered) view including joins with Metadata and authorizations.
For additional details on troubleshooting performance of ABAP CDS views
SAP Fiori is a collection of apps with a simple and easy-to-use experience for broadly used SAP software functions that work seamlessly across devices such as desktop, tablet, and smartphone.
One major aspect of good user experience is a responsive UI. This means we must respond to a request or interaction triggered by a user (on any supported device) in a way that continuous non-disruptive working is possible everywhere.
Potential SAP Fiori related areas which impacts End- to-End performance
- Rendering errors
- Wrong app routing
- Wrong app navigation
- Missing tiles
- Missing Frontend Authorizations
- High UI load times
For additional details on troubleshooting performance issues for SAP Fiori.
- 2916959 – SAP Fiori Performance Troubleshooting
- 2302549 – Performance optimizations for the SAP Fiori Stack
A good architecture does not implement everything that is possible, but only what is actually required. Tuning SAP S/4HANA system performance requires knowledge and collaboration from different areas, performance problems often result from a combination of different factors. Good KPIs should reflect the performance both from a user and system point of view, break the End-to-end response time down to component time and stay in defined budget.
– Brought to you by the S/4HANA RIG –