modelPublishing

copyModelExternal

Beschreibung

Kopiert ein Modell aus einer CAS-Tabelle in eine externe Datenbank. Diese Aktion ist entscheidend für die Bereitstellung von Modellen in Produktionsumgebungen, in denen das Scoring außerhalb von SAS Viya stattfindet, z. B. in Hadoop, Teradata oder anderen Datenbanksystemen. Sie ermöglicht die Portabilität von Modellen, die in CAS trainiert wurden.

modelPublishing.copyModelExternal <result=results> <status=rc> / externalCaslib="string", externalOptions={extType="DATABRICKS" | "FILESYSTEM" | "HADOOP" | "SINGLESTORE" | "SYNAPSE" | "TERADATA", extType-specific-parameters}, modelName="string", modelOptions={replace=TRUE | FALSE}, modelTable={caslib="string", name="table-name", whereTable={...}};
Einstellungen
ParameterBeschreibung
externalCaslibGibt die Caslib an, die die Optionen für die externe Datenbank enthält.
externalOptionsGibt die Optionen für die externe Datenbank an. Der für den Parameter extType angegebene Wert bestimmt die anderen anwendbaren Parameter.
modelNameGibt den Namen des Modells an. Dieser Name entspricht der Spalte ModelName der Modelltabelle.
modelOptionsGibt Optionen an, die auf das Modell angewendet werden.
modelTableGibt die Modelltabelle an, die das zu kopierende Modell enthält.
replace (in modelOptions)Wenn auf TRUE gesetzt, wird ein vorhandenes Modell mit demselben Namen im Ziel überschrieben.
Erstellung einer Beispiel-Modelltabelle

Dieser Code erstellt eine einfache CAS-Tabelle namens 'my_model_table', die ein einzelnes Modell enthält. Diese Tabelle dient als Quelle für die Aktion copyModelExternal.

Kopiert!
1DATA casuser.my_model_table;
2 LENGTH ModelName $ 50 ModelContent $ 200;
3 ModelName = 'mySimpleModel';
4 ModelContent = 'a=1; b=2; score=a*input1 + b*input2;';
5 OUTPUT;
6RUN;

Beispiele

Dieses Beispiel kopiert ein Modell namens 'mySimpleModel' aus der CAS-Tabelle 'my_model_table' in eine Hadoop-Datenbank unter Verwendung einer vordefinierten Caslib namens 'myHadoopCaslib'.

SAS® / CAS-Code Code wartet auf Validierung durch die Community
Kopiert!
1 
2PROC CAS;
3ACTION modelPublishing.copyModelExternal / modelTable={caslib="casuser", name="my_model_table"}, modelName="mySimpleModel", externalCaslib="myHadoopCaslib", externalOptions={extType="HADOOP", modelDatabase="default"};
4 
5RUN;
6 
7QUIT;
8 
Ergebnis :
Die Aktion kopiert das Modell erfolgreich in die angegebene Hadoop-Datenbank. Das Ergebnisprotokoll zeigt den Erfolg des Vorgangs an.

Dieses Beispiel zeigt, wie man ein Modell in eine Teradata-Datenbank kopiert. Es verwendet die Option 'replace=true', um ein vorhandenes Modell mit demselben Namen zu überschreiben. Es gibt auch die Zieldatenbank und den Tabellennamen in Teradata an.

SAS® / CAS-Code Code wartet auf Validierung durch die Community
Kopiert!
1 
2PROC CAS;
3ACTION modelPublishing.copyModelExternal / modelTable={caslib="casuser", name="my_model_table"}, modelName="mySimpleModel", externalCaslib="myTeradataCaslib", externalOptions={extType="TERADATA", server="myteraserver", username="myuser", database="production_db", modelTable={name="external_models_prod", schema="models"}}, modelOptions={replace=true};
4 
5RUN;
6 
7QUIT;
8 
Ergebnis :
Das Modell 'mySimpleModel' wird in die Tabelle 'external_models_prod' innerhalb des Schemas 'models' in der Teradata-Datenbank kopiert. Wenn ein Modell mit diesem Namen bereits existiert, wird es überschrieben. Das CAS-Protokoll bestätigt den erfolgreichen Kopiervorgang.

FAQ

Was ist der Zweck der Aktion `copyModelExternal`?
Welcher Parameter ist erforderlich, um den Namen des zu kopierenden Modells anzugeben?
Wie gebe ich die Quell-Modelltabelle an?
Was bewirkt die Option `replace` im Parameter `modelOptions`?
Welche externen Datenbanktypen werden vom Parameter `externalOptions` unterstützt?
Welcher Parameter gibt die Caslib an, die die externen Datenbankoptionen enthält?