Guide SAS VIYA

Warum sind meine CASUSER-Daten in Visual Analytics nicht sichtbar?

Simon 30/09/2023 2 Aufrufe

Wenn man mit SAS© Viya anfängt, ist es üblich, zwischen verschiedenen Schnittstellen wie SAS© Studio und SAS© Visual Analytics (VA) zu wechseln. Eine häufige Verwirrung entsteht beim Umgang mit Daten in der persönlichen Bibliothek, CASUSER.

Das Szenario ist klassisch: Sie laden eine Tabelle über SAS© Studio in Ihre CASUSER-Bibliothek. Alles scheint zu funktionieren. Wenn Sie jedoch zu Visual Analytics wechseln, um einen Bericht aus derselben Tabelle zu erstellen, ist sie unauffindbar. Umgekehrt bleibt eine Tabelle, die über die Environment Manager-Schnittstelle geladen wurde, in SAS© Studio unsichtbar.

Warum diese Trennung, obwohl Sie dieselbe Kennung auf demselben Server verwenden?

Illustration

Den "Sitzungsbereich" (Session Scope) verstehen

Der Kern des Problems liegt in der Speicherverwaltung durch den CAS-Server.

Wenn Sie sich bei SAS© Studio anmelden, initiieren Sie eine spezifische CAS-Sitzung. Standardmäßig haben die Tabellen, die Sie in den Speicher laden, einen Sitzungsbereich (session scope). Das bedeutet, dass sie nur von der Sitzung, die sie erstellt hat, sichtbar und nutzbar sind.

Visual Analytics und SAS© Environment Manager öffnen oft ihre eigenen, separaten Sitzungen. Folglich kann die Visual Analytics-Sitzung die privaten Daten, die im Speicher der SAS© Studio-Sitzung gespeichert sind, nicht sehen, auch wenn sie sich technisch in Ihrer persönlichen Bibliothek CASUSER befinden.

Die Lösung: Die Tabelle heraufstufen

Um eine Tabelle über verschiedene Anwendungen (und damit verschiedene Sitzungen) hinweg sichtbar zu machen, müssen Sie ihren Geltungsbereich ändern. Dies wird als Heraufstufen der Tabelle (Promote) bezeichnet.

Die Heraufstufungsaktion verschiebt die Tabelle von einer lokalen Sichtbarkeit (Sitzung) in eine globale Sichtbarkeit (Global Scope). Sobald sie global ist, wird die Tabelle für alle Ihre Sitzungen zugänglich, egal ob Sie sich in Studio, VA oder im Environment Manager befinden.

Wie macht man das in der Praxis?

Das bevorzugte Werkzeug für diese Operation ist die Prozedur CASUTIL. Hier ist die zu befolgende Logik:

  1. Die Daten in den Speicher laden.

  2. Die Anweisung PROMOTE verwenden, um sie global zu machen.

Beispiel für SAS©-Code

Angenommen, Sie haben in Ihrer Sitzung eine Tabelle namens irisout erstellt. Um sie in Visual Analytics sichtbar zu machen, verwenden Sie den folgenden Code:

1/* Exemple de promotion d'une table */
2PROC CASUTIL outcaslib="casuser";
3 promote casdata="irisout";
4QUIT;

Wenn Sie überprüfen möchten, ob die Tabelle tatsächlich verfügbar ist, können Sie den Inhalt der Bibliothek auflisten:

1 
2PROC CASUTIL incaslib="casuser";
3 
4contents casdata="irisout";
5 
6QUIT;
7 

Zusammenfassend

Wenn Ihre Daten zwischen SAS© Studio und Visual Analytics zu "verschwinden" scheinen:

  1. Denken Sie daran, dass das standardmäßige Laden für die aktuelle Sitzung privat ist.

  2. Verwenden Sie die Anweisung PROMOTE über PROC CASUTIL, um die Tabelle in den globalen Geltungsbereich zu überführen.

  3. Ihre Daten sind dann plattformübergreifend zugänglich.