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.
| Parameter | Beschreibung |
|---|---|
| externalCaslib | Gibt die Caslib an, die die Optionen für die externe Datenbank enthält. |
| externalOptions | Gibt die Optionen für die externe Datenbank an. Der für den Parameter extType angegebene Wert bestimmt die anderen anwendbaren Parameter. |
| modelName | Gibt den Namen des Modells an. Dieser Name entspricht der Spalte ModelName der Modelltabelle. |
| modelOptions | Gibt Optionen an, die auf das Modell angewendet werden. |
| modelTable | Gibt 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. |
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.
| 1 | DATA 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; |
| 6 | RUN; |
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'.
| 1 | |
| 2 | PROC CAS; |
| 3 | ACTION modelPublishing.copyModelExternal / modelTable={caslib="casuser", name="my_model_table"}, modelName="mySimpleModel", externalCaslib="myHadoopCaslib", externalOptions={extType="HADOOP", modelDatabase="default"}; |
| 4 | |
| 5 | RUN; |
| 6 | |
| 7 | QUIT; |
| 8 |
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.
| 1 | |
| 2 | PROC CAS; |
| 3 | ACTION 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 | |
| 5 | RUN; |
| 6 | |
| 7 | QUIT; |
| 8 |