SAP on AWS
EDI for SAP
Core Data Services - The Future of SAP Data Modelling
by Rick Kromkamp
CDS explained and why every developer should use it.
With the arrival of SAP S/4 HANA, SAP has been working to create innovative technology that provides the best performance for application development with respect to a database. As data has become the new 'bacon', the focus for many companies, like SAP, have been to progress their data modelling tools so that there can be a streamlined way of defining and formatting the contents of a database. Earlier on before much of S/4 HANA, the existing SAP data modelling tools were missing features for allowing efficient data model reusability and the ease to leverage these models with other applications. This was the case until SAP introduced Core-Data Services.
What is Core Data Services?
SAP Core-Data Services (CDS) is a data modelling framework that can be used by SAP technical resources to create a persistent data model that is reusable and can be leveraged by ABAP programs, BI and other SAP applications. Specifically, for ABAP programs, CDS views can be directly queried like database tables. For BI, CDS views are usable as a data source for reports and real-time replication into BW.
Why Core Data Services?
1. Improved program and report execution times.
Compared to the classic approach of primarily computing at the application-server level, CDS utilizes the computational power of the HANA Database to do intensive calculations in the database layer, and then transfers those results into the application server. This allows for a significantly smaller execution time when working with large volumes of data, since it rules out the need for large data flow between the two layers.
Although there are standard view-creation functionalities existing through SE11's ABAP Dictionary, or SQVI, what makes SAP CDS special is that the developer can use its open-source data definition language to build various data models that are very efficient in terms of execution time and reusability. Moreover, SE11's ABAP Dictionary views and SQVI both operate mostly at the application server level, which can lead to relatively longer execution time to run those type of views.
2. Simplifies and Harmonizes data model design and consumption.
With the general overview of what SAP CDS entails, it is important to understand the capabilities of the framework. Core-Data Services is a tool that is based entirely atop of standard SQL, which means that it has all the standard functions, joins, and aggregates that SQL generally offers.
Furthermore, CDS development is also known for its use and support of annotations, which are metadata tags that allow you to further define your CDS views. These annotations are also used to communicate with other applications that may utilize your view like SAP Fiori, UI5 Applications, etc.
3. Far beyond HANA calculation views
When compared to the HANA calculation view modelling, SAP core data services is superior. For SAP HANA Modelling, calculation views are just simple views that can be enhanced with attributes, used for analytics, and work with SAP WebIDE. As a result, these views are only accessible by applications that connect directly to the HANA database. They work well and will continue to be supported by SAP for the foreseeable future.
The key advantage with Core Data Services is that CDS views can be leveraged in both ABAP programs and your BI applications. Finally, we have one common data modelling language that services our OLTP programs and our OLAP applications. That gives new meaning to the age-old expression "one source of truth".
In Conclusion …
Core Data Services is SAP's latest and greatest data modelling tool that allows for stronger data reusability, and efficient data querying. It is an innovative piece of technology that any developer working in SAP should not ignore.
About the Author: Rick Kromkamp
Rick is a Business Intelligence evangelist and practitioner in the art of data modelling.