CDS Architecture – New And Experienced professionals- 5
There are many SAP blogs out there that explains inner working of CDS views or core data services in SAP’s S/4 boxes. But there are still struggle among experienced professionals who is switching from ECC system to S/4.
This blog is dedicated towards experienced professionals working on ECC systems for many years and yet to jump to S/4.In the next few min, we will look at a very basic concept of a CDS view and try to evaluate inner working of the CDS using classic SAP tools.
You have read / understood / Prototype items on Previous blogs.
We started this journey with creating a simple CDS for a custom table in the first blog.
In the second blog we looked at simple way to consume CDS views in ABAP executables.
Took a deep dive into annotations in third blog.
Finally looked at an approach to extend CDS views.
Lets Start –
What we haven’t looked at till this point is how CDS architecture is different than R/3 views.
This is extremely important to understand. Based on our experience in other four blogs let us list down what we already know.
- We know CDS views consist to two individual object.
- SQL View generated automatically.
- A Data Definition.
- We also know CDS entity (It is called an entity as this consist of more than one object) can be consumed the same way we consume a data base table in ABAP executable.
- We also took a runtime trace that showed us the SQL view is visible on run time trace but the data definition is not.
- There are additional features / properties that can be set on the CDS view using Annotations.
- We can extend standard SAP CDS views.
Lets Remember how the R/3 Architecture used to be.
All DB’s communicate to Application layer via Open SQL (Each SQL to be decoded by Optimizer to the right native SQL command). Many of you have used secondary keys and multiple performance technique on SQL statements to ensure right primary key or secondary key is used to fetch the data.
In R/3 Architecture the main component that decides which SQL statement to use is the Optimizer.
Now this process is slower and when the move to S/4 was decided one of the major changes proposed is for programmers to use database operation with much ease and this is exactly what CDS does.
CDS entities are a layer in between the DB and the application, this is an extremely powerful tool for developers to be able to model data as per business need.
Code Pushdown is the main principal – This allows you to get rid of the optimizer and run some DB modelling at the DB level instead of the application level.
Now combine this principal with HANA in memory DB. Then you have an extremely powerful concept that merges Application/ DB layer into one mesh of systems.
CDS Architecture is in the middle of application running on S/4 and the actual DB.
Now you know the architecture and hopefully a better understanding of CDS. Keep learning.