modelPublishing copyModelExternal

Test de Performance : Archivage de Modèle Complexe vers Hadoop

Scénario de test & Cas d'usage

Contexte Métier

Dans le cadre des réglementations bancaires (Bâle III), la banque doit archiver ses modèles de Risque de Crédit sur une infrastructure Big Data (Hadoop). Le modèle est complexe (Gradient Boosting avec beaucoup de variables) et la table de modèle est volumineuse.
Préparation des Données

Création d'un jeu de données large (50 colonnes) et entraînement d'un Gradient Boosting pour générer une table de modèle lourde.

Copié !
1PROC CAS;
2 dataStep.runCode / code="data casuser.risque_credit; array x{50} x1-x50; do i=1 to 2000; do j=1 to 50; x{j}=rand('normal'); end; if x1 > 0 then default=1; else default=0; output; end; run;";
3 decisionTree.gbtrain / TABLE={name="risque_credit", caslib="casuser"} target="default" inputs={"x1-x50"} savestate={name="gbt_risque_lourd", caslib="casuser", replace=true};
4RUN;

Étapes de réalisation

1
Tentative de copie du modèle volumineux vers une infrastructure Hadoop simulée (Syntaxe valide testée, même si la connexion échoue faute de cluster réel, l'appel API doit être correct).
Copié !
1PROC CAS;
2 modelPublishing.copyModelExternal /
3 modelTable={name="gbt_risque_lourd", caslib="casuser"}
4 modelName="modele_risque_archived"
5 externalCaslib="casuser"
6 externalOptions={extType="HADOOP", server="hadoop-prod.bank.com", modelDir="/hdfs/risk/archives"}
7 modelOptions={replace=true};
8RUN;

Résultat Attendu


Le système doit initier le transfert. Si l'environnement Hadoop est mocké ou inaccessible, une erreur de connexion explicite est attendue, mais aucune erreur de syntaxe sur les paramètres 'externalOptions' spécifiques à Hadoop ne doit survenir.