SAP HANA
Inhaltsverzeichnis
Was ist SAP HANA?
Die technologische Basis von SAP HANA geht zurück auf die Entwicklung der In-Memory-Technologie am Hasso Plattner Institut HPI in Berlin in Zusammenarbeit mit SAP. Ziel der Forschungsgruppe war es, eine neue Art von ERP-System aus der Taufe zu heben und die Limitationen der aktuellen ERP-Generation zu überwinden.
In-Memory bezeichnet das Prinzip, die betriebswirtschaftlichen Daten nicht auf Festplattenspeichern zu verwalten und mit Indizes darauf zuzugreifen, sondern sie stattdessen in einem deutlich größeren und schnelleren Hauptspeicher zu halten, sodass die Daten vergleichsweise in Echtzeit zur Verfügung stehen. Mit dem Einsatz der In-Memory-Technologie entfällt die Unterscheidung zwischen OLTP (Online Transaction Processing) und OLAP (Online Analytic Processing).
Während klassisch getrennte, spezialisierte Systeme für transaktionale und analytische Funktionen erforderlich sind, ist mit der In-Memory-Technik beides in einem System möglich.
Jenseits der Forschung findet die SAP-HANA-Datenbanktechnologie inzwischen den Weg in die Softwareprodukte der SAP SE. Dabei hat sich der Begriff von der ursprünglichen Bedeutung “High Performance Analytic Appliance” weiterentwickelt – inzwischen wird SAP HANA von SAP selbst als Produktbezeichnung in verschiedenen, teils sehr unterschiedlichen Kontexten genutzt. Der Begriff wird in drei Hauptkontexten verwendet:
- SAP HANA DB: Die In-Memory-Datenbank
- SAP HANA Cloud Platform: Das Cloud-Angebot der SAP für Platform as a Service
- SAP S/4HANA: Die nächste Generation der ERP Suite der SAP
Damit ist jedes Mal etwas anderes gemeint.
Vorteile
- Zugriff durch In-Memory-Technologie ist schneller lesbar
- Zugriff durch Zeilenorientierung ist schneller schreibbar
- Geeignet für Big Data Lösungen
- Möglichkeit zur Nutzung komplexer Algorithmen, auch geeignet für Vorhersagemodelle
- SAP HANA ist SQL-kompatibel und kann auch von externen Anwendungen genutzt werden
- Bringt eine eigene Entwicklungsumgebung mit
Nachteile
- Bei einem Systemausfall gehen die Daten des Arbeitsspeichers verloren und sind ggf. zu diesem Zeitpunkt noch nicht gesichert worden
- Es wird vergleichsweise teure Hardware benötigt
SAP S/4HANA
Neben SAP HANA Datenbank und SAP HANA Cloud Platform ist SAP Business Suite 4 SAP HANA oder kurz S/4HANA das dritte große Produkt, das mit dem HANA-Label bezeichnet ist. Bei S/4HANA handelt es sich um die nächste Generation der Anwendungssuite von SAP – nach SAP R/2, SAP R/3, SAP ERP sozusagen ein SAP R/4 – nur eben unter dem Namen S/4HANA. Dabei symbolisiert das S das Prinzip Simple. Die wichtigsten Kennzeichen von SAP S/4HANA sind folgende:
- S/4HANA ist vollständig neu entwickelt auf Basis der HANA In-Memory-Technologie.
- Das System hat neue Benutzeroberflächen nach dem SAP-Fiori-Standard mit dem Ziel der Vereinfachung der Bedienung.
- Eine insgesamte Vereinfachung des Datenmodells als Voraussetzung für die Verschlankung und Beschleunigung von Geschäftsprozessen.
SAP S/4HANA können Sie wie gewohnt im eigenen Rechenzentrum (On-Premises), von SAP als eigene Instanz gehosted oder in der sogenannten Public-Cloud als reine Software-as-a-Service-Lösung nutzen. Der Umstieg von einer SAP ERP 6.0 Lösung auf S/4HANA wird in der Regel eingeleitet durch die Migration der Datenbank auf SAP HANA DB. Dies ist allerdings nur eine technische Voraussetzung. Der eigentliche Umstiegsprozess liegt in der Beurteilung der einzelnen Geschäftsprozesse der neuen S/4HANA Lösung (sogenannte Innovationen) im Vergleich zur im Moment vom Unternehmen tatsächlich eingesetzten.
SAP Business Suite powered by SAP HANA
Hier wird zwischen zwei Systemen unterschieden:
- Ein SAP Business Suite System, das SAP HANA DB als Datenbank nutzt, nennt man SAP Business Suite powered by SAP HANA.
- Ein SAP Business Suite System, das prinzipiell geeignet wäre, auf einer SAP HANA DB zu laufen, wird als „HANA ready“ bezeichnet. Damit ein System als „HANA ready“ eingestuft wird, sind definierte Checks durchzuführen. U. a. einem SAP HANA Readiness Paket mit dem Sie sicherstellen, dass alle Voraussetzungen für eine erfolgreiche Migration erfüllt sind.
Ab einem bestimmten Release ist die SAP Business Suite in der Lage, SAP HANA DB als Datenbank zu nutzen (Release ist zum Beispiel SAP ERP 6.0 EHP7). Die betriebswirtschaftlichen Funktionen (Business Functions) bleiben dabei unverändert. Es wird allerdings statt einer der bisher eingesetzten Datenbanken (Oracle, DB2, SQL-Server, MaxDB) die SAP HANA DB verwendet. Dabei sind je nach Release weniger oder mehr der SAP Standardprogramme dafür optimiert, die SAP HANA-Performancevorteile aktiv auszunutzen.
Die meisten Programmteile bleiben zunächst unverändert. Zur Performance gilt folgender Grundsatz: Einige Programme laufen schneller, einige bleiben gleich und in Ausnahmefällen kann es vorkommen, dass Programme auch langsamer laufen. In neueren Releases liefert SAP immer mehr SAP-Standardfunktionen aus, die das HANA-Performancepotenzial optimal ausnutzen.
Vorteile in der SAP Business Suite powered by SAP HANA
Eine SAP Business Suite powered by SAP HANA bietet viele Vorteile. Hauptvorteil ist das Potenzial für die Beschleunigung von bestehenden Business Funktionalitäten und die Möglichkeit, neue Business Funktionalitäten auszuführen, die bisher aufgrund von Performance-Einschränkungen nicht möglich waren. Weitere Vorteile sind:
- Für Kunden und Partner besteht die Möglichkeit, die eigenen Kundenentwicklungen um die SAP-HANA-DB-Möglichkeiten zu erweitern und auf diese Weise Vorteile auszunutzen.
- Datenintensive Berechnungen können signifikant optimiert werden: Dazu gehören klassische SAP-Standardfunktionen wie der MRP-Lauf aus dem Bereich der Disposition oder typische „Langläufer-Reports“. Es ist nicht selten, dass Berechnungen, die bisher über Nacht eingeplant werden mussten, jetzt in Echtzeit zur Verfügung stehen.
- Zudem sind analytische Anwendungen möglich, die bisher den spezialisierten Business Intelligence Systemen vorbehalten waren. Durch die Verfügbarkeit aller Daten in Echtzeit sind Aggregationen auch über größere Zeiträume hinweg schnell möglich, beispielsweise für Reportings.
Ein typischer Anwendungsfall für eine Anwendung, die das Potenzial von SAP HANA DB nutzt, ist beispielsweise ein Reporting Cockpit, das Umsätze über Kundschaft, Produkte und Regionen zeigt und es ermöglicht, von der maximal aggregierten Übersicht in Echtzeit bis auf den einzelnen Beleg zu navigieren. Dabei sind dann jederzeit die aktuellen Daten des ERP-Systems die Grundlage.
SAP HANA DB
SAP HANA basiert auf der HANA Datenbank (DB), die eine In-Memory-Technologie nutzt, also die Haltung der Daten im Arbeitsspeicher (RAM) anstelle von üblichen, langsamen Festplatten. Diese ermöglicht es, große Datenmengen in Echtzeit zu analysieren. Dadurch entsteht in der Entwicklung das neue Prinzip des „Code Pushdown“, bei dem möglichst viel Datenlogik wie Konvertierungen, Typänderungen oder Konkattenierungen von Zeichenketten auf die Datenbank verlagert wird. Vor der HANA-DB-Einführung wurden diese Vorgänge im Applikationsserver durchgeführt.
Entwickelnde müssen bei ihrer Arbeit mit der HANA Datenbank berücksichtigen, dass Ergebnisse aufgrund der Spaltenorientierung anders verarbeitet und zurückgegeben werden, als nach dem Primärschlüssel sortiert. Weitere Besonderheiten weist die HANA DB in der Datenkompression sowie in der Partitionierung und der Parallelisierung von Datenbankabfragen auf.
Die SAP HANA DB ist keine reine Datenbank, sondern eine Plattform mit verschiedenen Features wie einem integrierten Applikationsserver (XS Engine). Dadurch ist es möglich, direkt Applikationen auf ihr zu entwickeln.
Features der HANA DB
Die HANA-DB verfügt unter anderem über folgende weitere Features:
ACID-Konformität
Die HANA Datenbank trägt zur Einhaltung aller Anforderungen von Atomicity, Consistentcy, Isolation und Durability (ACID) bei. Dabei handelt es sich um Regeln und Eigenschaften für die Durchführung von Transaktionen in Datenbankmanagementsystemen.
Mandantenfähigkeit
Mit der HANA DB können Sie mehrere Mandanten-Datenbanken in einem System betreiben – diese teilen den gleichen Speicher und die gleichen Prozessoren. Jede Mandantendatenbank ist vollständig isoliert und verfügt über eigene Nutzerkonten, ein eigenes Repository und eigene Protokolldateien – dadurch ist ein hoher Sicherheitsgrad gewährleistet.
Gespeicherte Verfahren
Die HANA DB bietet Entwickelnden die Programmiersprache SQLScript, mit der sie gespeicherte Verfahren und komplexe Logiken erstellen können.
Administratorenwerkzeuge
Der Administration steht umfassende Tools zur Verfügung, mit denen es die HANA Datenbank von jedem Gerät oder Standort aus verwalten können. Zudem sind sie in der Lage, Offline-Diagnosen durchzuführen, Updates zu automatisieren sowie Workloads zu analysieren und zu optimieren.
Sicherheit
Die eingebettete Technologie zur Echtzeit-Datenanonymisierung ermöglicht es Unternehmen, eine hohe Datensicherheit zu gewährleisten. Die HANA DB verfügt zudem über Authentifizierungs-, Benutzerverwaltungs- und Autorisierungsprotokolle, die dafür sorgen, dass lediglich berechtigte Nutzende auf Daten zugreifen können.
Räumliche Verarbeitung
Die HANA Datenbank bietet native Unterstützung für Geodaten und Geofunktionen. Dadurch bekommen Entwickelnde die Möglichkeit, standortabhängige Applikationen zu programmieren.
Dokumentenablage
Programmierende können auch Anwendungen entwickeln, die nicht auf SQL basieren. Hierzu verwenden sie Daten im JSON-Format, die in der SAP-HANA-Dokumentenablage gespeichert werden.
Suchfunktion
Mit SQL lassen sich mehrere Dateien nach Textbestandteilen durchsuchen. Hierunter zählen unter anderem PDF-, HTML- oder RTF-Dateien. Die Suche lässt sich in zahlreichen Sprachen durchführen.
Client-Bibliotheken
Nutzende haben Zugriff auf viele Client-Bibliotheken, mit denen sie von anderen Anwendungsplattformen auf die HANA DB zugreifen können. Es sind native Bibliotheken für Python, Go, Node.js, Ruby und Hibernate verfügbar.
Responsive Web-Applikationen
Die HANA Datenbank enthält ein HTML5- und ein JavaScript-Framework, mit dem Programmierende Webanwendungen entwickeln können. Die Apps laufen auf jedem Gerät und passen sich automatisch an die jeweilige Bildschirmgröße an, sodass sie einheitlich dargestellt werden.
ABAP Development Tools (ADTs)
Um ABAP-Entwicklungen mit der Eclipse IDE (integrated development environment) durchzuführen, stehen Programmierenden die ADTs zur Verfügung. Dabei handelt es sich um ein Plugin-Set, das die entsprechenden Entwicklungswerkzeuge beinhaltet. Alternativ lassen sich Projekte auch über die Web IDE durchführen, bei der es sich um eine browserbasierte Entwicklungsumgebung für die Datenmodellierung, Anwendungsentwicklung und Datenbankverwaltung handelt.
Smart Data Access (SDA)
Die SDA ist ein Datenvisualisierungs-Feature, mit dem Entwickelnde auf andere Datenquellen zugreifen können. Hierzu verwendet das System integrierte Adapter und bietet Anwendenden die Möglichkeit, benutzerdefinierte Adapter zu erstellen.
Native Entwicklung mit SAP HANA
Programmierende verwenden für die HANA-native Entwicklung das SAP HANA Studio, das ihnen als Plugin für die Eclipse IDE zur Verfügung steht. Für die Administration und kleinere Auswertungsmöglichkeiten können Verantwortliche auch auf eine eigene Web-Oberfläche zugreifen, die über die SAP-HANA-DB geöffnet wird.
Bei der HANA-nativen Entwicklung können Entwickelnde die folgenden Programmiersprachen verwenden:
- SQLScript
- JavaScript
- C++
- R script
Für die Erstellung des Datenmodells verwenden Verantwortliche CDS-Views. Dabei handelt es sich um Datenbank-Views, die performant laufen und in der Lage sind, virtuelle Datenmodelle durch Assoziationen zwischen mehreren CDS-Views abzubilden.
Das Open Data Protocol (OData) stellt Web-Anwendungen die entwickelten Logiken als Webservices zur Verfügung. So können diese auch von SAPUI5-Anwendungen, die in der SAP Web IDE entwickelt wurden, verwendet werden.
Softwareentwicklung mit SAP HANA
- Allgemein müssen Programme so entwickelt sein, dass sie datenbankunabhängig sind und keine datenbankspezifischen Teile enthalten, die zum Beispiel auf Oracle oder DB2 als Datenbanksystem angewiesen sind. Die regelkonforme Nutzung von OpenSQL ist dafür im Normalfall ausreichend.
- Performancevorteile werden auf diese Weise nicht gezielt ausgenutzt, weil die Formulierung von Anfragen in der gleichen Weise wie bisher erfolgt.
- Innerhalb von Migrationsprojekten stellt dies eine wichtige Aufgabe dar, die aber nicht unbedingt einen großen Anteil am Projektaufwand in Anspruch nimmt.
- Dagegen ist für die gezielte Ausnutzung von In-Memory-Performance für Programmierende in der Regel mit dem Einsatz von HANA-Mechanismen verbunden. Mit einem als „Push-Down“ bezeichneten Vorgehen werden besonders datenintensive Operationen explizit von der Applikationsschicht in die Datenbank verlagert. Ähnlich einer klassischen Stored-Procedure berechnet die SAP HANA DB diese Anweisung dann intern und unter Einsatz aller In-Memory-Vorteile und liefert somit die gewünschten Abfrageergebnisse mit verbesserter Geschwindigkeit.
SAP HANA Cloud Platform
Mit der SAP HANA Cloud Platform (HCP) ist die SAP auf dem Markt der Platform-as-a-Service-Anbieter (PaaS-Anbieter) aktiv, auf dem sich auch Amazon Web Services, Salesforce’ force.com und Microsoft AZURE tummeln.
Die SAP HANA Cloud Platform ist demnach eine Plattform für Applikationen und Dienste, die alle Vorteile einer Cloud-Lösung bietet:
- sofortige Verfügbarkeit ohne Hardwarebeschaffung, Installation etc.
- beliebige Skalierbarkeit
- Verfügbarkeit und Sicherheit durch hoch spezialisierte Rechenzentren und Betrieb
Die HCP beinhaltet zunächst aber keine betriebswirtschaftlichen Funktionen eines ERP-Systems, sondern ist die Plattform, auf der Sie derartige Anwendungen und Apps aufsetzen können. Für die Anwendungen auf der HCP stehen zahlreiche Dienste zur Verfügung, die Sie einbinden und nutzen können. Als einer der Dienste kommt wiederum die SAP HANA-Datenbank zum Einsatz, die also als Teil der HANA Cloud Platform für Datenoperationen in Echtzeit zur Verfügung steht.
Weitere Dienste innerhalb der HCP sind beispielsweise SAP Fiori Cloud Edition, SAP JAM Social Collaboration, Dienste für das Internet of Things (IoT) und die Unterstützung mobiler Szenarien. Die Anwendungsentwicklung auf der SAP HANA Cloud Platform wird mit Java, SAPUI5 (HTML5) und serverseitigem JavaScript betrieben. Eines der Haupteinsatzgebiete der HANA Cloud Platform ist die Erweiterung von SAP Lösungen, seien es On-Premise-Systeme oder SAP-Cloudlösungen.
Websession: SAP HANA
Sollten Sie Fragen zu uns und unserer Arbeit oder konkret zu Umstellungsprojekten haben, dann vereinbaren Sie eine kostenlose Websession mit uns.
FAQ
Was ist SAP HANA?
SAP HANA ist die Abkürzung von „High Performance Analytic Appliance“ und arbeitet mit der In-Memory-Technik. Mit dieser Technologie ist es möglich, die immer größer werdenden Datenmengen besser analysieren, auswerten und bereitstellen zu können.
Wie funktioniert SAP HANA?
SAP HANA basiert auf der neuen In-Memory-Technologie, bei der die Daten nicht auf einer Festplatte, sondern im Arbeitsspeicher abgelegt werden – das bietet eine deutlich erhöhte Geschwindigkeit in der Datenverarbeitung.
2 Kommentare zu "SAP HANA"
Hallo Ingo,
was ist die Empfehlung? Kann man für ein Produktiv System eine HANA Datenbank und ABAP Applikation Server auf einem Server installieren?
Oder soll man die HANA DB und APP Server auf zwei separaten Servern installieren?
Welche Nachteile gibt es dann, wenn die HANA DB und Applikation Server auf einem Server (Hardware) installiert?
Danke schön
Guten Tag,
vielen Dank für Ihre Fragen. Grundsätzlich ist das möglich. Dabei muss allerdings einiges beachtet werden (siehe https://me.sap.com/support/search/1953429). Ich persönlich würde das abhängig von der Systemgröße und der gewünschten Ausfallsicherheit nur bedingt empfehlen.
Falls Sie weitere Fragen haben oder eine Beratung wünschen, melden Sie sich gerne bei mir.
Viele Grüße
Maria Rick