Blog

Handfestes Know-how, Tipps & Tricks und die Insights unserer Datenprofis findest Du hier in unseren Blogbeiträgen

Nahaufnahme von Händen auf einer Laptop-Tastatur
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Data-Warehouse-Automatisierung (Teil 1)
Data-Warehouse-Automatisierung (Teil 1)

Data-Warehouse-Automatisierung (Teil 1)

Die Automatisierung von immer wiederkehrenden Aufgabenstellungen gehört zu den grundlegendsten Prinzipien der modernen Welt. Bereits Henry Ford erkannte daraus resultierende Vorteile, wie sinkende Fehleranfälligkeit, kürzere Fertigungszyklen und eine gleichbleibende, einheitliche Qualität. Eben diese Vorteile lassen sich bei Data-Warehouse-Initiativen anwenden.

Mehr lesen
Performante Lookups in BW-Transformationen - Die erstmalige Aggregation der selektierten Daten
Performante Lookups in BW-Transformationen - Die erstmalige Aggregation der selektierten Daten

Performante Lookups in BW-Transformationen - Die erstmalige Aggregation der selektierten Daten

Wir wissen jetzt, wie wir die Daten richtig selektieren, welche Tabellenart wir bei Lookups nutzen sollten und wie wir sicherstellen können, dass wir nur relevante Datensätze durchlesen.

In der Praxis ist es aber oft so, dass man erstmals eine größere und/oder nicht eindeutige Datenmenge von der Datenbank selektieren muss, die dann nach bestimmten Regeln fürs performante Nachlesen aggregiert werden sollte.

Mehr lesen
Anwendung der SCD-Methodik durch den ODI 12
Anwendung der SCD-Methodik durch den ODI 12

Anwendung der SCD-Methodik durch den ODI 12

Part 1: Anpassung der Gültigkeit des Datensatzes

Der Oracle Data Integrator (ODI) bietet eine eingebaute Lösung, um Daten mit der SCD-Methodik (Slowly Changing Dimension) zu historisieren. Bei näherer Betrachtung und der praktischen Beladung einer Integrationsmenge in eine Zieltabelle mithilfe des Integration Knowledge Modules (IKM) SCD fällt auf, dass der ODI gewisse "Default Values" für das Gültigkeitsende des Datensatzes verwendet.

Mehr lesen
Der effektive Einsatz von Partition Pruning zur Optimierung der Abfragegeschwindigkeit (Teil 1)
Der effektive Einsatz von Partition Pruning zur Optimierung der Abfragegeschwindigkeit (Teil 1)

Der effektive Einsatz von Partition Pruning zur Optimierung der Abfragegeschwindigkeit (Teil 1)

Data Warehouses nehmen im Zuge der digitalen Transformation von Unternehmen eine immer zentralere Rolle ein. Denn im Zuge der Entscheidungsfindung hält ein gutes Data Warehouse für jegliche Fragestellung entscheidungsrelevante Informationen bereit. Ein DWH kann also als ein strategisches Management-Instrument gesehen werden, dessen reibungslose Funktionsweise essentiell für den zukünftigen Unternehmenserfolg ist. In diesem Blogbeitrag wird auf eines der wichtigsten Performancefeatures eingegangen, das Partition Pruning.

Mehr lesen
Performante Lookups in BW-Transformationen – Die relevanten Datensätze finden
Performante Lookups in BW-Transformationen – Die relevanten Datensätze finden

Performante Lookups in BW-Transformationen – Die relevanten Datensätze finden

Nachdem wir uns mit relevanten Selektionstechniken und mit den unterschiedlichen Arten von internen Tabellen auseinandergesetzt haben, sind die wichtigsten Performanceoptimierungen für die Lookups in unseren BW-Transformationen zunächst einmal sichergestellt.

Hiermit ist das Thema jedoch nicht komplett abgedeckt. Denn bis jetzt sind wir davon ausgegangen, dass nur die relevanten Informationen in unseren Lookup-Tabellen durchsucht werden. Wie können wir dies aber sicherstellen?

Mehr lesen
Wie bekomme ich auch HANA langsam?
Wie bekomme ich auch HANA langsam?

Wie bekomme ich auch HANA langsam?

Die gute Performance einer HANA-Datenbank kommt von der konsequenten Orientierung auf eine hauptspeicherbasierte Datenhaltung sowie durch die Nutzung moderner Kompressions- und ColumnStore-Algorithmen. Somit muss die Datenbank bei Aggregationen über große Datenmengen vergleichsweise wenige Daten lesen und kann dies im Hauptspeicher auch noch außerordentlich schnell erledigen. Jedoch kann bei einem suboptimalen Design des Datenmodells einer dieser Vorteile sehr schnell hinfällig werden. So gehen sowohl der HANA-Datenbank als auch den Anwendern große Vorteile hinsichtlich der Laufzeit und Agilität während der Nutzung verloren.

Mehr lesen
Performante Lookups in BW-Transformationen - Die richtige Tabellenart wählen
Performante Lookups in BW-Transformationen - Die richtige Tabellenart wählen

Performante Lookups in BW-Transformationen - Die richtige Tabellenart wählen

Dies ist vielleicht die grundlegendste aller ABAP-Fragen, und zwar nicht nur, wenn man sich mit performanten Lookups auseinandersetzt. Sobald man etwas in ABAP macht, wird man auf diese Frage stoßen.

Mehr lesen
Performante Lookups in BW Transformationen - Die Nutzung interner Tabellen vs. SELECTS aus der HANA-Datenbank
Performante Lookups in BW Transformationen - Die Nutzung interner Tabellen vs. SELECTS aus der HANA-Datenbank

Performante Lookups in BW Transformationen - Die Nutzung interner Tabellen vs. SELECTS aus der HANA-Datenbank

In dieser Serie wollen wir uns mit Implementierungstechniken für Lookups auseinandersetzen, bei denen jeder Datensatz der zu durchsuchenden Tabelle überprüft werden sollte. Je größer unsere Datenpakete und unsere Lookup-Tabellen, desto wichtiger ist eine performante Implementierung.

Mehr lesen
SAP HANA – kein Speicher mehr? Bewusster Early Unload!
SAP HANA – kein Speicher mehr? Bewusster Early Unload!

SAP HANA – kein Speicher mehr? Bewusster Early Unload!

Optimierte Hauptspeichernutzung bei SAP BW on HANA

Die Ausnutzung des Hauptspeichers ist bei SAP-HANA- und Data-Warehouse-Szenarien immer ein spannendes Thema im Vergleich zu ERP-Anwendungen bzw. Anwendungen mit einem sich gering verändernden Datenvolumen. Somit muss man eines im Hinterkopf behalten: Lasse niemals den freien Hauptspeicher ausgehen.

Mehr lesen
Performante Lookups in BW-Transformationen aus der Praxis - Einführung
Performante Lookups in BW-Transformationen aus der Praxis - Einführung

Performante Lookups in BW-Transformationen aus der Praxis - Einführung

Performanceoptimierungen können nicht in Stein gemeißelt werden. Denn Optimierungen, die bei einem Unternehmen mit bestimmter Systemarchitektur und bei gewissem Datenvolumen super funktioniert haben, müssen nicht zwingend an einer anderen Stelle genauso gut klappen. Kurzum: Es müssen individuelle Lösungen erarbeitet werden. Prinzipiell geht es aber immer darum, die Balance zwischen Arbeitsspeicherauslastung und Datenbankauslastung sowie zwischen Implementierungskomplexität und Wartbarkeit zu finden. Dabei steht die Verarbeitungszeit stets im Zentrum.

Mehr lesen
Enterprise Data Warehouse und agiler SQL Data Mart: SAP BW on HANA kann beides – das „Mixed Scenario“
Enterprise Data Warehouse und agiler SQL Data Mart: SAP BW on HANA kann beides – das „Mixed Scenario“

Enterprise Data Warehouse und agiler SQL Data Mart: SAP BW on HANA kann beides – das „Mixed Scenario“

Bei dem Einsatz eines SAP Business Warehouses hat es in der Vergangenheit häufig verschiedene Ansätze in Unternehmen gegeben, die zu dem Aufbau einer parallelen Infrastruktur führen konnten. Die Betreuung dieser Infrastruktur liegt dabei stärker im Fachbereich als in der IT. Verbreitet sind Lösungen wie QlikView, SQL Server, Oracle oder TM1. Diese erfüllen ihre Aufgaben in der jeweiligen Situation sehr gut, ansonsten würde es sicher nicht den Drang geben, sie einzusetzen.

Mehr lesen
SAP BW on HANA – macht ein Cache noch Sinn bei ABAP Routinen?
SAP BW on HANA – macht ein Cache noch Sinn bei ABAP Routinen?

SAP BW on HANA – macht ein Cache noch Sinn bei ABAP Routinen?

Mit der Einführung von SAP BW on HANA im Jahre 2010 wurden viele bisherigen Maßnahmen zur Performancesteigerung in BW-Systemen obsolet; gleichzeitig drängen sich aber viele neuen Fragen bezüglich der neuartigen Plattform auf. Von großer Relevanz ist dabei auch die Frage, ob es immer noch sinnvoll ist, die sogenannten "Advanced Business Application Programming-Routinen" zu cachen. Denn mit HANA werden die Daten einerseits in der unter einem Applikationsserver liegenden Datenbank im Hauptspeicher abgelegt und andererseits für Abfragen optimiert. Hinzu kommt, dass die Abfragen in Routinen systembedingt auf dem Applikationsserver ausgeführt werden. Die Frage nach der Sinnhaftigkeit der Nutzung eines Caches für ABAP-Routine-Abfragen soll deshalb im nachfolgenden Blogbeitrag eingehend erläutert werden:

Bei häufig wiederkehrenden Daten lässt sich dies grundsätzlich bejahen. Denn wenn beispielsweise das Attribut "Kontinent" von dem Info-Objekt "Land" hinzugelesen werden soll, ist der zeitliche Overhead eines Zugriffs durch den SQL Parser, das Netzwerk, etc. auf HANA wiederkehrend für jede Zeile zu hoch. Zwischen dem ABAP-Programm und den eigentlichen Daten liegen etliche technische Layer, welche damit wiederholend ausgeführt werden. Ist es jedoch notwendig, mehrere Joins zwischen Tabellen durchzuführen oder ist die Anzahl der zu lesenden Zeilen sehr groß, kippt der Vorteil wieder in Richtung der HANA-Datenbank.

Nach meinen Erfahrungen bei Kunden mit großen Datenmengen beschleunigt ein Cache im ABAP die DTP-Ausführung in einem SAP BW on HANA System teils um den Faktor 3. Dies ist natürlich immer abhängig von der Situation (z.B. Datenverteilung, Homogenität der Daten etc.), sowie von der aufgebauten Infrastruktur. Alles noch ohne Einsatz des Shared Memory. Dieser führt für alle Datenpakete zusammen, also pro Beladung, nur eine Abfrage auf die Datenbank aus. Im Handling ist dieser aber unnötig kompliziert.

Mehr lesen