配置面向 SAP HANA 的 Python 机器学习客户端
学习目标
安装 hana-ml 包并为机器学习任务建立与 SAP HANA Cloud 的可靠连接上下文。
要使用 Python 中的 SAP HANA 预测分析库 (PAL) 构建时间序列预测模型,首先需要使用必要的库设置本地 Python 环境,并与 SAP HANA Cloud 实例建立安全连接。hana-ml 库通过允许您访问 SAP HANA 数据并直接从 Python 脚本运行 SAP HANA PAL 算法来启用此集成。
技术前提
要在 SAP HANA 中使用时间序列模型,您需要以下内容:
使用 ScriptServer 的 SAP HANA Cloud 实例(APL,已启用 PAL)
Python hana-ml 包 2.24.25051600,已安装其他包和依赖项
基本结构化查询语言 (SQL) 知识(高度需要)
设置 环境
在 SAP HANA 中实施时间序列模型之前,设置所需环境至关重要。这包括安装必要的 Python 库、建立与 SAP HANA Cloud 的连接以及配置验证设置。
以下单元格加载/导入当前演示所需的各种模块。如您所知,模块可视为与代码库相同。
import hana_ml
print(hana_ml.__version__)
2.24.25051600
#importing other packages used
import pandas as pd
import matplotlib.pyplot as plt
import time
import numpy as np
import os
import json
from dotenv import load_dotenv
load_dotenv()
from hana_ml import dataframe
from hana_ml.visualizers.unified_report import UnifiedReport
from hana_ml.algorithms.pal.tsa.additive_model_forecast import AdditiveModelForecast
from hana_ml.algorithms.pal.random import binomial
from hana_ml.algorithms.pal.partition import train_test_val_split
%matplotlib inline
SAP HANA Cloud 数据库连接
使用面向 SAP HANA 的 Python 机器学习客户端 (hana-ml),连接始终与 SAP HANA DataFrame 相关。此外,对于 SAP HANA Cloud,我们需要使用加密连接。
学员应具有 SAP HANA 系统地址和访问它的凭据,因为需要提供这些地址来实例化类 hana_mI.dataframe.ConnectionContext;它表示与 SAP HANA 数据库实例 [1] 的连接。
hana_address = os.getenv('hana_address', "<your_hana_address>")
hana_port = int(os.getenv('hana_port', 443))
hana_user = os.getenv('hana_user', "<your_hana_user>")
hana_password = os.getenv('hana_password', "<your_hana_password>")
hana_encrypt = os.getenv('hana_encrypt', 'True').lower() == 'true'
hana_schema = os.getenv('HANA_SCHEMA', 'My_Schema')
conn = dataframe.ConnectionContext(address=hana_address,
port=hana_port,
user=hana_user,
password=hana_password,
encrypt=True, sslValidateCertificate=False,
current_schema=hana_schema)
conn.connection.isconnected()
正确