Enterprise Resource Planning Blogs by SAP
Get insights and updates about cloud ERP and RISE with SAP, SAP S/4HANA and SAP S/4HANA Cloud, and more enterprise management capabilities with SAP blog posts.
cancel
Showing results for 
Search instead for 
Did you mean: 
GiriRaaj
Product and Topic Expert
Product and Topic Expert
Introduction

In the world of SAP HANA and ABAP development, Core Data Services (CDS) have revolutionized the way data modeling and processing are handled. CDS views are essentially virtual database views that offer significant advantages over traditional DDIC (Data Dictionary) views. In this blog, we will explore the key differences between CDS views based on DDIC and CDS views based on Entity, and understand when and why one may be preferred over the other.

1. DDIC-Based CDS Views

DDIC-based CDS views are primarily built on top of existing database tables and views. They are an evolution of classical ABAP Dictionary views, enhanced with modern features and capabilities. These views are defined using the Data Definition Language (DDL) syntax and are part of the ABAP Development Tools (ADT) in the Eclipse-based ABAP development environment.

Advantages:




  • a. Compatibility: DDIC-based CDS views provide backward compatibility with existing database views, allowing for a smooth transition from traditional DDIC views to CDS views.

  • b. Data Integrity: They inherit the data integrity features of underlying database tables, such as primary key constraints and foreign key relationships.
    c. Stability: Since they are built on established database objects, DDIC-based CDS views offer stability and robustness in the data model.


Limitations:


a. Flexibility: DDIC-based CDS views lack some of the more advanced features available in CDS views based on Entity, making them less flexible in complex data modeling scenarios.
b. Performance: They might suffer from performance issues when dealing with large datasets, as they may not take full advantage of SAP HANA's optimization capabilities.


2. Entity-Based CDS Views

Entity-based CDS views are designed to offer a more agile and flexible approach to data modeling. Unlike DDIC-based CDS views, they do not directly depend on existing database tables and views. Instead, they are defined based on entities, which are essentially reusable data definitions that can be used in multiple CDS views.

Advantages:
a. Agility: Entity-based CDS views enable rapid prototyping and development, as they are not tied to specific database tables and can be quickly adapted to changing business requirements.
b. Advanced Modeling: They provide access to advanced modeling capabilities, such as defining associations, navigation paths, and annotations, which can enrich the data model and improve the application's performance.
c. HANA Optimization: Entity-based CDS views allow for better optimization and pushdown to the SAP HANA database, leading to improved query performance.


Limitations:


a. Complexity: While offering more flexibility, the use of entities can introduce complexity, and it may require a higher level of expertise in data modeling to design efficient and maintainable views.


b. Learning Curve: Developers familiar with traditional DDIC views might need time to learn and adapt to the new concepts and syntax of entity-based CDS views.


When to Choose Which?

The decision to choose between DDIC-based CDS views and entity-based CDS views depends on the specific project requirements and the organization's development strategy.

 

Use DDIC-based CDS Views When:

- You are working on a project with a substantial legacy codebase that already relies on DDIC views.
- Your data model is relatively simple, and you don't need the advanced features offered by entity-based CDS views.
- Backward compatibility with existing DDIC views is crucial for your project's success.


 

Use Entity-Based CDS Views When:

- You need a more agile and adaptable data modeling approach to accommodate changing business requirements.
- Your project requires complex data models with associations and navigation paths.
- Leveraging SAP HANA's optimization capabilities for enhanced performance is essential.


Conclusion

Both DDIC-based CDS views and entity-based CDS views have their strengths and are valuable tools in the SAP HANA and ABAP developer's toolkit. But going forward SAP recommends Entity based cds view for their client implementations (as on July2023). Understanding the differences and advantages of each approach is essential to make informed decisions and deliver efficient and scalable data models that meet the project's specific needs. Whether you choose the stability of DDIC-based CDS views or the flexibility of entity-based CDS views, CDS remains a game-changer in modern SAP development, driving innovation and simplifying data modeling processes.