Core Data Services [CDS] in SAP S/4 HANA

data model represents framework of what relationships are in a database. Data models are the foundation of software development. They provide a standardized method for defining and formatting database contents consistently across systems, enabling different applications to share the same data.
Professional data modeling tools provide a way to generate SQL from a modeled ER diagram although some developers often prefer writing SQL directly. Below is a look of a data model.

 

/wp-content/uploads/2016/09/1_1043210.png

Virtual Data Model
The concept of the Virtual Data Model (VDM) was introduced with HANA Live three years ago. SAP HANA Live is a Virtual data model on top of suite tables which uses native SAP HANA SQL views called Calculation views for real-time operational Reporting. This came with certain issues:

  • This model didn’t support hierarchies properly. Hierarchies help businesses to analyze their data in a tree structure through different layers with drilldown capability. For example, a time hierarchy consists comprises of levels such as fiscal year, fiscal quarter, fiscal month and so on.
  • Since, the HANA Live virtual data models were defined in the HANA database layer itself as HANA calculation views it led to duplication of security roles between Business Suite for transactional processing and HANA database for operational reporting.

With S/4HANA, SAP launched S/4HANA Analytics as an upgrade to HANA Live. S/4HANA supports a new data model by providing a ready-to-use content using CDS view. The CDS data model used by SAP S/4HANA can be considered a successor to the virtual data model used by SAP HANA Live as the new CDS provides certain advantages over VDM which are discussed later in this blog.

As for our customers, which are the current users of HANA Live nothing changes unless they migrate to S/4 HANA. The existing virtual data models will continue to be supported by SAP. Once customers migrate to S/4HANA, the new CDS-based views can be used and upgraded against the simplified data model in S/4HANA.

Core Data Services
With the availability of the SAP HANA platform there has been a paradigm shift in the way business applications are developed at SAP. The rule-of-thumb is: Do as much as you can in the database to get the best performance.

To take advantage of SAP HANA for application development, SAP introduced a new data modeling infrastructure known as core data services. With CDS, data models are defined and consumed on the database rather than on the application server. CDS also offers capabilities beyond the traditional data modeling tools, including support for conceptual modeling and relationship definitions, built-in functions, and extensions

 

/wp-content/uploads/2016/09/3_1043249.png

Technically, CDS is an enhancement of SQL which provides a Data Definition Language (DDL) for defining semantically rich database tables/views (CDS entities) and user-defined types in the database. Some .of the enhancements are:

  • Expressions used for calculations and queries in the data model
  • Associations on a conceptual level, replacing joins with simple path expressions in queries
  • Annotations to enrich the data models with additional (domain specific) metadata

CDS Value Proposition for Customers
CDS offers a SQL based layer that extends the SQL-92 standard with features that bridge and unify the traditional OLTP and OLAP models of data definition, data query, and data manipulation. Supported natively in both ABAP and SAP HANA, the data models are expressed in data definition language (DDL) and are defined as CDS views, which can be used in ABAP programs via Open SQL statements to enable access to the database. CDS provides a range of advantages for businesses and developers, including:

Semantically rich data models
CDS builds on the well-known entity relationship model and is declarative in nature, very close to conceptual thinking.
Compatibility across any database platform
CDS is generated into managed Open SQL views and is natively integrated into the SAP HANA layer. These views based on Open SQL are supported by all major database vendors
Efficiency
CDS offers a variety of highly efficient built-in functions — such as SQL operators, aggregations, and expressions — for creating views.
Support for annotations.
The CDS syntax supports domain-specific annotations that can be easily evaluated by other components, such as the UI, analytics, and OData services.
Support for conceptual associations
CDS helps you define associations that serve as relationships between different views. Path expressions can be used to navigate along relations. Introducing an abstraction of foreign key relationships and joins, associations make navigation between entities consumable
Extensibility.
Customers can extend SAP-defined CDS views with fields that will be automatically added to the CDS view along with its usage hierarchy.

SAP HANA Live(based upon VDM)     SAP S/4 Analytics ( based upon CDS )
  • No latency
  • No data duplication
  • Integration scenarios with SAP BW
  • Ready to use content
    Best of HANA Live Features

  • Full ABAP Lifecycle Integration
  • Supports ERP authorizations
  • Supports ERP hierarchies
  • Part of the general Extensibility concept
  • Supports more business cases
    (Analytics, search, Fact sheets, planning…)


VDM to CDS Migration
In order to ensure a smooth migration from HANA Live VDM Model to S/4 HANA VDM CDS Model, SAP provides a migration roadmap tailored for the Customer businesses. In the past a lot of effort was spent to define and implement the HANA Live Virtual Data Model based on HANA Calculation Views. This is used as a starting point for the definition and implementation of the CDS Data Model. CDS views are generated for the Calculation views. Please note, after the generation additional effort is necessary to adapt the generated views to the new approach (CDS). Typical tasks which might be necessary are:

  • Adding needed CDS annotations for analytical or other scenarios. Annotations allow to enhance the core Meta model with consumer-specific vocabularies.
  • Restructuring or renaming the views to support the higher level of reuse which shall be reached with the new approach (Using naming convention like I view for public view, P for Private and C for Consumption views).
  • Adapting the views that as parts of the original functionality could not be migrated due to missing or different features in CDS.
  • Adapting the views to changed view behavior (if on running the view, a different result for the views is displayed).

However, not all of these manual tasks are necessary for each migrated calculation view. In particular, “simple” views can often be left unchanged after generation.

Example: Calculation View “sap.hba.ecc.BusinessTransactionType”
The calculation view “BusinessTransactionType” has a text join node “Join_1” with the join condition “TJ01.VRGNG = TJ01T.VRGNG” .

Capture.JPG

If associations are used for join nodes and the resulting CDS view definition has following form:

If standard SQL joins are used for join nodes the resulting CDS view definition looks like this:

CDS: Development Environment

CDS views can be developed and maintained in SAP HANA studio and in ABAP in Eclipse. The textual editor in eclipse provides rich feature set for fast development like:
/wp-content/uploads/2016/09/1_1043210.png

  • Code completion
  • Data preview
  • Quick-fix function
  • Syntax highlighting

NOTE: To search for CDS view for an ABAP table, call se11 transaction. Enter the table name and click on Where used list. Select the type DDL source and the result list will show the views for that consume the table.

Consumption of CDS in an OData Service

Key Takeaways:

  • CDS provides a unified data model across all application domains
  • CDS provides one semantic layer for all use cases: search, operational and analytical
  • CDS extends SQL to capture the business intent instead of technical complexity.

Learn more about CDS from here:

My CDS view self study tutorial – Part 1 how to test odata service generated by CDS view

SAP HANA SPS 09: New Developer Features; Core Data Services

New Core Data Services Features in SAP HANA 1.0 SPS 10

 

Besides this, a great video by Björn Goerke, Executive Vice President and Corporate Officer, Head of Technology in Products and Innovation on CDS

https://blogs.sap.com/2016/09/26/core-data-services-cds-in-sap-s4-hana/

本文作者: GavinDong

版权属于: GavinDong博客

文章链接: https://gavindong.com/2380.html

如果使用过程中遇到问题,可 **点击此处** 交流沟通。

版权所有,转载时必须以链接形式注明作者和原始出处及本声明。

(0)

相关文章

发表回复

登录后才能评论