Umgebung einrichten

Objective

After completing this lesson, you will be able to identifizieren Sie die beiden Hauptkomponenten des Python-ML-Clients.

Was ist der Python-ML-Client für SAP HANA?

Der Python-Client für maschinelles Lernen für SAP HANA (hana-ml) ist ein Python-Paket, mit dem Datenwissenschaftler auf SAP-HANA-Daten zugreifen können. Praktiker können Modelle für maschinelles Lernen mit den Daten direkt in SAP HANA erstellen [2].

Der Python-Machine-Learning-Client für SAP HANA besteht aus zwei Hauptkomponenten:

  • SAP HANA DataFrame, das eine Reihe von Methoden für den Zugriff auf und die Abfrage von Daten in SAP HANA bereitstellt, ohne die Daten auf den Client zu übertragen.
  • Eine Reihe von APIs für maschinelles Lernen für die Entwicklung von Modellen für maschinelles Lernen.

Die Machine-Learning-APIs bestehen aus zwei Paketen:

PAL-Paket

Das PAL-Paket besteht aus einer Reihe von Python-Algorithmen und -Funktionen, die Zugriff auf Funktionen für maschinelles Lernen in der SAP HANA Predictive Analysis Library (PAL) bieten. SAP-HANA-PAL-Funktionen decken eine Vielzahl von Algorithmen für maschinelles Lernen zum Trainieren eines Modells ab. Anschließend wird das trainierte Modell für das Scoring verwendet.

APL-Paket

Das APL-Paket (Automated Predictive Library) stellt die Data-Mining-Funktionen der automatisierten Analyse-Engine in SAP HANA über eine Reihe von Funktionen bereit. Diese Funktionen entwickeln einen Vorhersagemodellierungsprozess, mit dem Analysten einfache Fragen zu ihren in SAP HANA gespeicherten Kundendatensets beantworten können.

HANA-ML verwendet den SAP-HANA-Python-Treiber (hdbcli), um eine Verbindung zu SAP HANA herzustellen und auf SAP HANA zuzugreifen. Weitere Informationen finden Sie unter [2].

Was ist SAP HANA Cloud?

SAP HANA Cloud ist ein Datenbankmanagementsystem mit mehreren Modellen, mit dem die Architekten der Zukunft intelligente Datenanwendungen der nächsten Generation in großem Maßstab entwickeln und implementieren können [3].

SAP HANA unterstützt eine umfassende Umgebung für maschinelles Lernen. Auf Serverseite bietet sie eingebettete Machine-Learning-Bibliotheken sowie Funktionen zur Integration gemeinsamer Machine-Learning-Tools. Auf Client-Seite können die APIs für maschinelles Lernen direkt verwendet werden, um eingebettete Modelle für maschinelles Lernen in SAP HANA [4] zu entwickeln.

Referenzen

[1] Kalifornien Wohnungsbau-Datensatz

[2] Python-ML-Client für SAP HANA

[3] SAP HANA Cloud

[4]Übersicht über maschinelles Lernen in SAP HANA

Einrichtung und Vorbereitung der Umgebung

Technische Voraussetzungen

  • Instanz von SAP HANA Cloud mit ScriptServer (APL, PAL aktiviert)
  • Python-Paket hana-ml 2.21.24062800 und andere installierte Pakete und Abhängigkeiten

Python-Pakete für SAP HANA

Die folgenden Zellen laden und importieren verschiedene Module. Wie Sie vielleicht wissen, kann ein Modul als identisch mit einer Codebibliothek betrachtet werden.

Python
123456
#import hana database client for Python from hdbcli import dbapi #import hana-ml package import hana_ml print (hana_ml.__version__)

Ausgabe:

2.20.24042601

Python
123456
#importing other packages used import pandas as pd import matplotlib.pyplot as plt import time import numpy as np import os

SAP-HANA-Cloud-Datenbankverbindung

Mit dem Python-Machine-Learning-Client für SAP HANA (hana-ml) sind Verbindungen immer mit einem SAP HANA DataFrame verknüpft. Außerdem ist für SAP HANA Cloud eine verschlüsselte Verbindung erforderlich.

Lerner sollten die SAP-HANA-Systemadresse und die Anmeldeinformationen für den Zugriff darauf haben, da sie bereitgestellt werden müssen, um die Klasse hana_ml.dataframe.ConnectionContext zu instanziieren. Sie stellt eine Verbindung zu einer SAP-HANA-Datenbankinstanz [1] dar.

Python
1234567
from hana_ml import dataframe address = "b8xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.hana.prod-eu10.hanacloud.ondemand.com" port = 443 user = 'XX_XXXX' conn = dataframe.ConnectionContext(address, port, user, encrypt=True, sslValidateCertificate=False)

Referenzen

[1] SAP-Klasse hana_ml.dataframe.ConnectionContext