Skip to content
NextLytics
Megamenü_2023_Über-uns

Shaping Business Intelligence

Ob clevere Zusatzprodukte für SAP BI, Entwicklung aussagekräftiger Dashboards oder Implementierung KI-basierter Anwendungen - wir gestalten zusammen mit Ihnen die Zukunft von Business Intelligence. 

Megamenü_2023_Über-uns_1

Über uns

Als Partner mit tiefem Prozess-Know-how, Wissen der neuesten SAP-Technologien sowie hoher sozialer Kompetenz und langjähriger Projekterfahrung gestalten wir die Zukunft von Business Intelligence auch in Ihrem Unternehmen.

Megamenü_2023_Methodik

Unsere Methodik

Die Mischung aus klassischem Wasserfallmodell und agiler Methodik garantiert unseren Projekten eine hohe Effizienz und Zufriedenheit auf beiden Seiten. Erfahren Sie mehr über unsere Vorgehensweise.

Produkte
Megamenü_2023_NextTables

NextTables

Daten in SAP BW out of the Box bearbeiten: Mit NextTables wird das Editieren von Tabellen einfacher, schneller und intuitiver, egal ob Sie SAP BW on HANA, SAP S/4HANA oder SAP BW 4/HANA nutzen.

Megamenü_2023_Connector

NextLytics Connectoren

Die zunehmende Automatisierung von Prozessen erfordert die Konnektivität von IT-Systemen. Die NextLytics Connectoren ermöglichen eine Verbindung Ihres SAP Ökosystems mit diversen open-source Technologien.

IT-Services
Megamenü_2023_Data-Science

Data Science & Engineering

Bereit für die Zukunft? Als starker Partner stehen wir Ihnen bei der Konzeption, Umsetzung und Optimierung Ihrer KI-Anwendung zur Seite.

Megamenü_2023_Planning

SAP Planning

Wir gestalten neue Planungsanwendungen mithilfe von SAP BPC Embedded, IP oder  SAC Planning, die einen Mehrwert für Ihr Unternehmen schaffen.

Megamenü_2023_Dashboarding

Dashboarding

Mit unserer Expertise verhelfen wir Ihnen auf Basis von Tableau, Power BI, SAP Analytics Cloud oder SAP Lumira zu aussagekräftigen Dashboards. 

Megamenü_2023_Data-Warehouse-1

SAP Data Warehouse

Planen Sie eine Migration auf SAP HANA? Wir zeigen Ihnen, welche Herausforderungen zu beachten sind und welche Vorteile eine Migration bringt.

Business Analytics
Megamenü_2023_Procurement

Procurement Analytics

Transparente und valide Zahlen sind vor allem in Unternehmen mit dezentraler Struktur wichtig. SAP Procurement Analytics ermöglicht die Auswertung von SAP ERP-Daten in SAP BI.

Megamenü_2023_Reporting

SAP HR Reporting & Analytics

Mit unserem Standardmodell für Reporting von SAP HCM mit SAP BW beschleunigen Sie administrative Tätigkeiten und stellen Daten aus verschiedenen Systemen zentral und valide zur Verfügung.

Megamenü_2023_Dataquality

Data Quality Management

In Zeiten von Big Data und IoT kommt der Vorhaltung einer hohen Datenqualität eine enorm wichtige Bedeutung zu. Mit unserer Lösung für Datenqualitätsmanagement (DQM) behalten Sie stets den Überblick.

Karriere
Megamenü_2023_Karriere-2b

Arbeiten bei NextLytics

Wenn Du mit Freude zur Arbeit gehen möchtest und dabei Deine berufliche und persönliche Weiterentwicklung nicht zu kurz kommen soll, dann bist Du bei uns genau richtig! 

Megamenü_2023_Karriere-1

Berufserfahrene

Zeit für etwas Neues? Gehe Deinen nächsten beruflichen Schritt und gestalte Innovation und Wachstum in einem spannenden Umfeld zusammen mit uns!

Megamenü_2023_Karriere-5

Berufseinsteigende

Schluss mit grauer Theorie - Zeit, die farbenfrohe Praxis kennenzulernen! Gestalte bei uns Deinen Einstieg ins Berufsleben mit lehrreichen Projekten und Freude an der Arbeit.

Megamenü_2023_Karriere-4-1

Studierende

Du möchtest nicht bloß die Theorie studieren, sondern Dich gleichzeitig auch praktisch von ihr überzeugen? Teste mit uns Theorie und Praxis und erlebe wo sich Unterschiede zeigen.

Megamenü_2023_Karriere-3

Offene Stellen

Hier findest Du alle offenen Stellenangebote. Schau Dich um und bewirb Dich - wir freuen uns! Falls keine passende Stelle dabei ist, sende uns gerne Deine Initiativbewerbung zu.

Blog
NextLytics Newsletter Teaser
Hier für unseren monatlichen Newsletter anmelden!
Newsletter abonnieren
 

So verbessern Sie die Performance Ihrer SAP HANA Datenbank

Ohne Zweifel, unser Alltag ist zunehmend datengetrieben und die Menge der Daten nimmt mit jedem Tag kontinuierlich zu. So wächst täglich die Datenmenge, die in Unternehmen über alle Bereiche hinweg erzeugt und verarbeitet werden. Bei diesem exponentiellen Datenwachstum spielt die Performance eines Business Warehouses eine besondere Rolle.

Eine Möglichkeit, die Performance Ihres Business Warehouses zu steigern ist SQLScript. Vor allem, wenn Sie viele kundeneigene Logiken einsetzen, kann SQLScript in SAP HANA hinsichtlich Performance helfen. Denn mit Hilfe von SQLScript können datenintensive Berechnungen auf der Ebene der Datenbank erfolgen. Was zu einem Paradigmenwechsel führt - statt die Daten von der Datenbank auf den ABAP-Server zu laden, um die Berechnungen dort auszuführen (“Data to Code” Paradigma) wird die Berechnung nun direkt in der SAP HANA Datenbank, also “Code to Data” durchgeführt.

SQL Script Berechnungen

Dabei bietet SQLScript einen größeren Funktionsumfang als SQL und erlaubt auch Programm- und Ablaufsteuerung. Somit ist es möglich, die Performance Ihrer SAP HANA Datenbank zu verbessern, ohne sich dabei auf die Open SQL Funktionen einzuschränken. Denn HANA stellt an sich eine sehr smarte Datenbank dar. Nachfolgend gehe ich auf Bestandteile von HANA ein, die diese so besonders machen.

SAP HANA ist vor allem als eine In-Memory Datenbank bekannt. Statt der Festplatte wird der Arbeitsspeicher des Computers für die Aufbewahrung der Daten genutzt, was einen wesentlich schnelleren Zugriff ermöglicht. So können selbst große Datenmengen performant verarbeitet werden.

Allerdings liegt der Kern der HANA Technologie nicht in einer massiven Arbeitsspeicherleistung, sondern in der neuartigen Datenbankarchitektur. Die hohe Performance wird erst durch die Kombination von vier bereits bekannten Technologien ermöglicht: Lesen und Schreiben sowohl im Zeilen- als auch im Spaltenformat, Kompression, Kodierung sowie Insert-Only Prinzip. In den nächsten Kapiteln erkläre ich diese Komponenten ausführlich.

Zeilen- und Spaltenformat unter einen Hut gebracht

Die HANA Datenbank kann sowohl im Zeilen- als auch im Spaltenformat arbeiten. Während das Spaltenformat schnelle Lesezugriffe ermöglicht, ist das Zeilenformat bei den Schreiboperationen performanter. 

Nachfolgend erläutere ich den jeweiligen Ansatz anhand eines Beispiels. Betrachten wir die dargestellte Tabelle:


ID

Name

Abteilung

Gehalt

1

Sebastian

Controlling

115.000

2

Patrick

Controlling

110.000

3

Dirk

IT

110.000

 

Diese Tabelle dient allerdings nur der Darstellung. Faktisch werden die Informationen in einer anderen Form in der Datenbank gespeichert. So könnte der Inhalt der oben dargestellten Tabelle in einer zeilenbasierten Datenbank wie folgt abgelegt werden:

1, Sebastian, Controlling, 115000;

2, Patrick, Controlling, 110000;

3, Dirk, IT, 110000;

In einer spaltenbasierten Datenbank würde dieselbe Tabelle so aussehen:

1, 2, 3;

Sebastian, Patrick, Dirk;

Controlling, Controlling, IT;

115000, 110000, 110000;

Der spaltenbasierte Ansatz führt zu folgenden Vorteilen: Falls Sie zum Beispiel die Gehälter auswerten und die Summe aller Gehälter sehen möchten, benötigt die spaltenbasierte Datenbank nur einen Lesezugriff. So muss nur die letzte Zeile mit den Gehältern gelesen werden. 

Eine zeilenbasierte Datenbank müsste dagegen alle Zeilen durchgehen und die Gehaltsinformationen auslesen. In unserem Beispiel würde es drei Lesezugriffen entsprechen, was länger dauert. Dreimal so lang, wie beim spaltenbasierten Ansatz.


Steigern Sie die Leistung Ihres BW mit SQLScript

SAP SQLScript Whitepaper


Genauso verhält es sich, wenn Sie die Gesamtzahl der Mitarbeiter auswerten möchten. Während eine spaltenbasierte Datenbank mit einem Lesezugriff auskommt, benötigt die zeilenbasierte Datenbank drei Zugriffe.

Die spaltenbasierten Datenbanken haben jedoch einen entscheidenden Nachteil. Nehmen wir an, dass unser Unternehmen einen weiteren Mitarbeiter anstellt, sodass unsere Tabelle wie folgt aussieht:


ID

Name

Abteilung

Gehalt

1

Sebastian

Controlling

115.000

2

Patrick

Controlling

110.000

3

Dirk

IT

110.000

4

Steffen

IT

115.000

 

Bei einer zeilenbasierten Datenbank muss nur eine neue Zeile hinzugefügt werden. Anschließend würde die Datenbanksicht wie folgt aussehen:

1, Sebastian, Controlling, 115000;

2, Patrick, Controlling, 110000;

3, Dirk, IT, 110000;

4, Steffen, IT, 115000;

Bei einer spaltenbasierten Datenbank müssten hingegen alle vier Zeilen angepasst werden. Danach würde die Datenbank den folgenden Inhalt aufweisen:

1, 2, 3, 4;

Sebastian, Patrick, Dirk, Steffen;

Controlling, Controlling, IT, IT;

115000, 110000, 110000, 115000;

Wie Sie sich denken können, dauert es länger als bei der zeilenbasierten Datenbank. Während die spaltenbasierten Datenbanken beim Lesen der Daten punkten, sind die zeilenbasierten beim Fortschreiben der Daten schneller. Das ist der Grund warum früher die analytischen Systeme, wie z.B. SAP Business Warehouse, eher mit spaltenbasierten Datenbanken arbeitetet. Die transaktionalen Systeme, wie z.B. SAP ERP, liefen dagegen auf zeilenbasierten Datenbanken. Es fand also eine Unterteilung nach Anwendungsart statt.

Eine SAP HANA Datenbank vereint das Beste aus zwei Welten: die Informationen können im Handumdrehen spaltenweise gelesen und genauso schnell können neue Daten zeilenweise hinzugefügt werden.


Kompression

Neben dem Spalten- und Zeilenzugriff hilft auch der eingebaute Kompressionsmechanismus dabei, die Performance einer HANA Datenbank zu steigern. Denn die Informationen innerhalb einer Datenbank wiederholen sich häufig. So gibt es auf der ganzen Welt nur knapp 200 Länder, in Deutschland gibt es 16 Bundesländer und in einer mandantenabhängigen Datenbanktabelle häufig nur einen Mandant. In einer Datenbank mit Millionen von Datensätzen kommen daher dieselben Ausprägungen mehrfach vor.

Betrachten wir zum Beispiel unsere Tabelle. Die Controlling Abteilung kommt in den Daten zweimal vor, genauso wie die IT-Abteilung.


ID

Name

Abteilung

Gehalt

1

Sebastian

Controlling

115.000

2

Patrick

Controlling

110.000

3

Dirk

IT

110.000

4

Steffen

IT

115.000

 

Wenn man auf der Datenbankebene statt

2x Controlling, 2x IT;

einfach

Controlling, Controlling, IT, IT;

schreiben würde, könnte man den Speicherbedarf enorm senken. Denken Sie zum Beispiel an das Merkmal Geschlecht in einer Datenbank mit Millionen von Datensätzen.

Codierung

Ein weiterer Ansatz, die Performance zu steigern, ist die Codierung. So wird zum Beispiel die Ausprägung Controlling in der Spalte Abteilung durch eine ganze Zahl ersetzt. Auf diese Weise lassen sich dieselben Informationen viel platzsparender ablegen als in einer gewöhnlichen Datenbank, womit die Performance weiter gesteigert wird. Unsere Beispieltabelle könnte dabei wie folgt aussehen.

ID

Name

Abteilung

Gehalt

1

1

1

1

2

2

1

2

3

3

2

2

4

4

2

1

 

Partitionierung

Darüber hinaus werden in einer SAP HANA Datenbank die gespeicherten Informationen durch mehrere CPUs parallel verarbeitet, wobei auch der Cache zum Einsatz kommt. So kann auch das letzte Stück Performance herausgekitzelt werden.

Insert Only

Wir erwarten von einer Datenbank, dass ein SELECT Statement nur die zur Zeit des Aufrufes gültige Datensätze liefert. Wenn ein Datensatz während des Aufrufes gerade geändert wird, aber die Änderung noch nicht gespeichert wurde, soll der zuletzt gültige Stand aufgerufen werden. Daher muss der alte Wert irgendwo zwischengespeichert werden.

Wann immer ein Datensatz überschrieben wird, wird der alte Stand in das Rollback Segment der Datenbank kopiert. Dieser Ansatz hat seinen Preis. Selbst bei einem einfachen Update sind zwei Operationen notwendig - die eigentliche Änderung und Backup des alten Standes.

Bei einer SAP HANA Datenbank wurde ein anderer Ansatz gewählt. Anstatt alte Datensätze zu überschreiben, werden neue hinzugefügt und mit einem Zeitstempel versehen. Bei einer Abfrage werden nur die neuen Datensätze gelesen und ausgegeben. So können Schreiboperationen schneller ausgeführt werden. Damit die Datenbank nicht unendlich wächst, werden die verschiedenen Versionen der Daten beim Delta Merge konsolidiert.


SAP HANA Datenbank - Unser Fazit

An sich stellen die einzelnen Komponenten keine bahnbrechenden Neuerungen dar. Was SAP HANA so besonders macht, ist die Kombinationen der einzelnen Komponenten. So werden gleichzeitig die Vorteile maximiert und Nachteile minimiert. Ein Nachteil bleibt allerdings: durch den Einsatz einer HANA Datenbank ist man an SAP gebunden und kann nicht mehr Datenbanken der Drittanbieter wie Oracle nutzen. Aber die Vorteile überwiegen unverkennbar, denn kein anderer Anbieter hat ein vergleichbares Produkt im Portfolio. Möchten Sie mehr über SAP HANA und die Einsatzmöglichkeiten im Business Warehouse Umfeld erfahren? Wir unterstützen Sie gerne! Kontaktieren Sie uns jetzt.

Erfahren Sie mehr über  SAP HANA SQLScript

, ,

avatar

Chris Fidanidis

Chris ist seit 2007 im SAP BW-Umfeld tätig. In diesen Jahren hat er mehrere Planungsprojekte umgesetzt und dabei die diversesten SAP-Tools genutzt, wie z.B. SAP BSP, SAP BW-IP, SAP BPC, SAP BW Embedded BPC. Erfahrungen hat er vor allem als Entwickler, Architekt, Projekt- bzw. Teamleiter sammeln können. Privat spielt er gerne Basketball und grillt wann immer es geht.

Sie haben eine Frage zum Blog?
Fragen Sie Chris Fidanidis

Gender Hinweis Aufgrund der besseren Lesbarkeit wird im Text das generische Maskulinum verwendet. Gemeint sind jedoch immer alle Menschen.

Blog - NextLytics AG 

Welcome to our blog. In this section we regularly report on news and background information on topics such as SAP Business Intelligence (BI), SAP Dashboarding with Lumira Designer or SAP Analytics Cloud, Machine Learning with SAP BW, Data Science and Planning with SAP Business Planning and Consolidation (BPC), SAP Integrated Planning (IP) and SAC Planning and much more.

Informieren Sie mich über Neuigkeiten

Verwandte Beiträge

Letzte Beiträge