CDS Views sind ein zentrales Werkzeug in der SAP-Welt, um Datenmodelle effizient bereitzustellen. Dabei wird oft zwischen ABAP CDS Views und HANA CDS Views unterschieden. Beide verfolgen das gleiche Grundprinzip, unterscheiden sich jedoch in ihrer technischen Umsetzung, im Einsatzgebiet und in der Einbettung in die Systemlandschaft.
In der SAP-Welt tauchen immer wieder die Begriffe ABAP CDS View und HANA CDS View auf. Beide Konzepte haben die gleiche Wurzel in den Core Data Services, unterscheiden sich aber in ihrer Einbettung und ihrem Einsatzgebiet.
Ein ABAP CDS View wird im ABAP Dictionary definiert und ist vollständig in den ABAP-Stack integriert. Entwickler arbeiten hier mit den ABAP Development Tools in Eclipse. Durch diese enge Verbindung zum ABAP-System lassen sich CDS Views nahtlos in Business-Anwendungen einbinden.
ABAP CDS Views können über Annotationen mit OData-Services verknüpft, für Fiori-Anwendungen nutzbar gemacht oder mit Berechtigungslogik ausgestattet werden. Dadurch eignen sie sich besonders für den Einsatz in Endanwender-Szenarien.
Ein HANA CDS View wird direkt auf der HANA-Datenbank modelliert. Er nutzt HANA-spezifische Datentypen und Entwicklungswerkzeuge wie HANA Studio oder die WebIDE. Der Fokus liegt dabei auf Performance und datenbanknahen Anwendungen.
ABAP CDS Views sind transportierbar und Teil des regulären ABAP-Release-Zyklus. HANA CDS Views hingegen müssen separat gepflegt und transportiert werden, da sie nicht über die ABAP-Transportmechanismen laufen.
ABAP CDS ist die bevorzugte Lösung für Business-Anwendungen im ABAP-Kontext, während HANA CDS vor allem in technischen Modellierungen, Data Marts oder analytischen Szenarien zum Einsatz kommt. Für Clean Core und nachhaltige Entwicklung empfiehlt sich in den meisten Fällen ABAP CDS.
ABAP Core Data Services (CDS) sind eine moderne Möglichkeit in SAP ABAP, Datenbankabfragen und Datenmodelle zu definieren.
Sie sind ein semantisches Schichtmodell auf der Datenbank, mit dem man Daten deklarativ beschreibt, statt rein prozedural in ABAP zu programmieren.