This is an introductory blog on Core Data Services and CDS Views. You can find our other blogs on CDS here.
SAP HANA is more than just a database system. Hence there is the need for a change in the programming approach, so as to fully utilize the advantages that an SAP HANA System offers. The crux of HANA in terms of data processing is to take the processing to the database to make it faster and to eliminate any lag due to network etc. Data-intensive operations can be performed in the database layer itself using the Code to Data paradigm.
Code to Data approach reduces system bottlenecks, increases calculation speeds, & reduces the movement of data from one layer to another. Core Data Services is a method for Code Push Down. Usually, in cases where native execution is desired, Open SQL is the first instrument for ABAP developers for pushing down data-intensive processing to the database layer, but, if re-use of data models or features such as Union and Association are required, then Core Data Services must be used.
Core Data Services is a collection of domain-specific languages (DSLs) and services for defining and consuming semantically rich data models. Entity definitions and the semantic relationships between entities can be developed using CDS. CDS artifacts get stored as DDIC objects and can be used in ABAP programs and can be used as source/target for DML Statements. DDL sources and CDS entities are managed by ABAP, hence the entire lifecycle of CDS entities are controlled by the ABAP Change and Transport System (CTS).
The elements and artifacts that can be created using CDS include:
- Tables (Entities)
- User Defined data types
The metamodels for an application that requires code pushdown can be built using CDS views. A CDS view is more powerful than an SE11 view as it describes an open source DDL for building a meta-model repository involving database tables, database views, functions, and data types. There are ABAP CDS views and HANA CDS views. ABAP CDS views are database independent whereas HANA CDS views are database dependent. The CDS objects created using HANA CDS is not controlled by ABAP dictionary and hence cannot be consumed in ABAP Programs or Open SQL. HANA CDS requires the entity type definition for DDIC table whereas ABAP CDS does not require it & hence duplication in the CDS layer is avoided.
CDS views are the way of the future and slowly all delivered content within SAP is being transitioned into CDS views.
Learn more about Visual BI’s SAP HANA offerings here.