Publié le :
Administration CREATION_INTERNE

Gestion des destinations de publication SAS Model Manager

En attente de validation
Attention : Ce code nécessite des droits administrateur.
Le script débute par la définition des paramètres de connexion (URL du serveur, identifiant, mot de passe). Il utilise ensuite la macro '%mm_get_token' pour obtenir un jeton d'authentification. Deux destinations de publication CAS sont ensuite définies et, si elles existent déjà, supprimées au préalable : 'HRCASDestination' pour la CASLIB 'hrmodels' et 'SalesCASDestination' pour la CASLIB 'salesmodels'. Enfin, le script liste toutes les destinations de publication existantes, stocke la réponse JSON dans un fileref 'pubsvrs', la convertit en un dataset SAS© nommé 'dests' via '%mm_read_json', et affiche le contenu de ce dataset.
Analyse des données

Type : CREATION_INTERNE


Les données sont générées en interne à partir de la réponse JSON de l'API SAS Model Manager après avoir listé les destinations de publication. Le dataset 'dests' est créé dynamiquement à partir de cette réponse.

1 Bloc de code
MACRO CALL
Explication :
Ce bloc définit les variables globales pour l'URL du serveur Viya, l'identifiant et le mot de passe, puis utilise la macro '%mm_get_token' pour s'authentifier auprès de SAS Viya et obtenir un jeton d'accès stocké dans la macro-variable `myTokenName`.
Copié !
1%let servernm=http://sasviya01.race.sas.com;
2%let userID=geladm;
3%let password=lnxsas;
4 
5%mm_get_token(
6 baseURL=&servernm,
7 user=&userID,
8 pw=&password,
9 tokenname=myTokenName
10);
2 Bloc de code
MACRO CALL
Explication :
Ce bloc configure la destination de publication 'HRCASDestination'. Il tente d'abord de supprimer une destination existante du même nom pour garantir une création propre, puis la définit en associant la CASLIB 'hrmodels' et la table 'mm_model_table' sur le serveur CAS par défaut.
Copié !
1* Create HR CAS publish destination;
2%let defname=HRCASDestination;
3%mm_deletepublishdestination(
4 baseURL=%str(&servernm),
5 definitionname=%str(&defName),
6 token=%myTokenName
7);
8%mm_definepublishdestination(
9 baseURL=%str(&servernm),
10 definitionname=&defName,
11 casservername=cas-shared-default,
12 caslib=hrmodels,
13 modeltable=mm_model_table,
14 exttype=cas,
15 token=%myTokenName
16);
3 Bloc de code
MACRO CALL
Explication :
Similaire au bloc précédent, ce bloc configure la destination de publication 'SalesCASDestination'. Il supprime d'abord une destination existante si nécessaire, puis la définit en l'associant à la CASLIB 'salesmodels' et à la table 'mm_model_table'.
Copié !
1* Create Sales CAS publish destination;
2%let defname=SalesCASDestination;
3%mm_deletepublishdestination(
4 baseURL=%str(&servernm),
5 definitionname=%str(&defName),
6 token=%myTokenName
7);
8%mm_definepublishdestination(
9 baseURL=%str(&servernm),
10 definitionname=&defName,
11 casservername=cas-shared-default,
12 caslib=salesmodels,
13 modeltable=mm_model_table,
14 exttype=cas,
15 token=%myTokenName
16);
4 Bloc de code
PROC PRINT / MACRO CALL Data
Explication :
Ce bloc liste les destinations de publication via '%mm_printpublishdestination', stocke la réponse JSON dans le fileref 'pubsvrs'. Ensuite, '%mm_read_json' convertit cette réponse JSON en un dataset SAS nommé 'dests'. Enfin, `PROC PRINT` affiche des informations clés sur les destinations de publication récemment définies, telles que leur nom, type, table associée, serveur CAS et librairie CAS.
Copié !
1* List publishing destinations - should include the two created above;
2%mm_printpublishdestination(
3 baseURL=%str(&servernm),
4 limit=8,
5 resp=pubsvrs,
6 keepresp=Y,
7 token=%myTokenName
8);
9 
10%mm_read_json(
11 fref=pubsvrs,
12 respType=GET_ITEMS,
13 outds=dests,
14 statusVar=_status
15);
16 
17PROC PRINT DATA=dests noobs;
18 var name destinationType destinationTable casServerName casLibrary;
19RUN;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.
Banner
Le Conseil de l'Expert
Expert
Michael
Responsable de l'infrastructure Viya.
« Dans un écosystème SAS Viya 4, la capacité à déployer rapidement des modèles analytiques repose sur une gestion rigoureuse des destinations de publication. Ce script illustre parfaitement l'automatisation de la configuration des environnements d'exécution, une étape clé du processus ModelOps pour garantir que les modèles atteignent les décideurs sans friction technique. »