hana-ml en pratique — DataFrame, ConnectionContext et ModelStorage dans SAP HANA Cloud
À jour au 2026-09-25
Module pratique sur hana-ml, le client Python de machine learning pour SAP HANA déjà utilisé sans examen au M338 (PAL) et au M339 (APL). Couvre le DataFrame comme instruction SQL à exécution paresseuse (pas une copie locale de la donnée), la surface complète de ConnectionContext (administration schéma/table, découverte de métadonnées, fonctions vectorielles), une pratique de connexion de niveau production avec hdbuserstore, et ModelStorage en profondeur : identification nom/version, les quatre comportements de sauvegarde d'if_exists, le cycle de vie complet du modèle (lister, charger, exporter/importer, supprimer), le stockage en mémoire persistante contre HANA Data Lake, la planification côté serveur avec set_schedule(), et le model card/rapport comme piste d'audit. Trois exercices couvrent la sauvegarde et le versionnage d'un modèle, la vérification de l'exécution paresseuse, et le choix entre la planification ModelStorage et le chemin ISLM couvert au M341.
Ce que vous apprendrez
- Expliquer qu'un DataFrame hana-ml construit du SQL plutôt que de copier la donnée, et nommer quelles méthodes déclenchent un déplacement de donnée côté client (collect, head, tail) contre celles qui restent côté serveur
- Se connecter à SAP HANA Cloud avec ConnectionContext et nommer au moins quatre choses qu'il fait au-delà d'ouvrir une connexion (administration schéma/table, découverte de métadonnées, fonctions vectorielles)
- Sauvegarder, lister, recharger et supprimer un modèle avec ModelStorage, en expliquant les quatre comportements d'if_exists et le schéma d'identification nom/version
- Utiliser les options de mémoire persistante et de stockage HDL de ModelStorage pour adapter le régime de stockage d'un modèle à la fréquence réelle à laquelle il est noté
- Planifier le réentraînement d'un modèle avec ModelStorage.set_schedule() et expliquer quand cela est préférable au chemin ISLM couvert au M341
- Traiter get_model_card(), display_model_report() et le package visualizers comme des livrables de niveau audit plutôt que comme une sortie de notebook optionnelle
Aperçu du module
À qui s'adresse ce module. Vous avez travaillé le M338 (PAL) et le M339 (APL) et avez déjà appelé les deux depuis Python sans vous arrêter pour regarder le client lui-même. Ce module est cette pause : hana-ml, le Python Machine Learning Client for SAP HANA, examiné comme une infrastructure à part entière — comment son DataFrame garde le calcul dans HANA, comment ConnectionContext se connecte réellement, et comment ModelStorage transforme un modèle entraîné en quelque chose qu'un collègue peut recharger, versionner et planifier six mois plus tard. Le M341 montre ensuite comment un modèle sauvegardé ainsi est empaqueté pour S/4HANA via l'Intelligent Scenario Lifecycle Management (ISLM). Travaillez ce module avec une instance HANA Cloud si vous pouvez y accéder ; chaque exercice a aussi un chemin papier.
Prérequis
- M338 (SAP HANA PAL en pratique) et M339 (SAP HANA APL en pratique), ou une expérience équivalente d'appel des deux depuis hana-ml
- Aisance avec la lecture de Python et de SQL de base
- Optionnel pour les variantes pratiques de E1 à E3 : accès à un essai SAP HANA Cloud ou à un bac à sable client, et le package hana-ml installé
Acquis
- Expliquer correctement à un client pourquoi hana-ml garde le calcul dans HANA et exactement quels appels ramènent de la donnée côté client.
- Mettre en place un schéma de stockage de modèles gouverné (nommage, versionnage, politique if_exists) qu'une équipe peut opérer sans l'auteur d'origine.
- Décider entre mémoire persistante, stockage par défaut et HANA Data Lake pour un modèle selon sa fréquence de notation réelle.
- Choisir entre la planification ModelStorage et l'ISLM pour un scénario de réentraînement donné, avec la raison écrite.
Module complet réservé aux abonnés. Le module complet ajoute : le cadre de décision · le cas guidé de bout en bout · la grille de KPI · les anti-patterns · les blocs de code · le contrôle de connaissances · les schémas.