Die Daten werden intern durch das Skript über DATA STEPs generiert, wobei die Funktion `ranuni` verwendet wird, um Zufallswerte zu erstellen. Es werden keine externen Dateien gelesen.
1 Codeblock
Globale Optionen und %put-Makros
Erklärung : Dieser Block konfiguriert den Netzwerkverschlüsselungsalgorithmus auf SSL. Anschließend werden Informationen zur lokalen SAS-Clientumgebung unter Verwendung der `%put`-Makros und verschiedener Systemvariablen und Makrofunktionen (`&sysuserid`, `&syshostname`, `%sysget`) angezeigt. Dies ermöglicht die Überprüfung der Konfiguration und Identität der aktuellen SAS-Sitzung.
Kopiert!
OPTIONS NETENCRYPTALGORITHM=SSL;
%put ********** CLIENT ********;
%put My local user ID is: &sysuserid;
%put The local host name is: &syshostname;
%put The local process name is: &sysprocessname;
%put The local process ID is: &sysprocessid;
%put The local process mode is: &sysprocessmode;
%let SASCLOUDNATIVE_state="%sysget(SASCLOUDNATIVE)";
%put &SASCLOUDNATIVE_state;
%let TCPNOIPADDR_state="%sysget(TCPNOIPADDR)";
%put &TCPNOIPADDR_state;
%let ENVIRONMENT="%sysget(SAS_SERVICES_URL)";
%put &ENVIRONMENT;
Erklärung : Dieser Block initialisiert Makrovariablen (`_sessionName`, `_sessionType`, `_namespace`, `_casserver`), die zur Angabe der Verbindungsdetails zu einem CAS-Server verwendet werden. Der Befehl `cas` wird dann verwendet, um eine benannte CAS-Sitzung einzurichten, wobei der CAS-Controller-Host, der Port und die Sitzungsoptionen, wie z.B. die Metrikenerfassung, angegeben werden. Dies bereitet die Umgebung für die Ausführung von CAS-Code vor.
Kopiert!
/* CAS session */
%let _sessionName=&sysuserid;
%let _sessionType=studio;
%let _namespace=gelcorp;
%let _casserver=default;
/* Start a CAS session on the cas-shared-&_casserver CAS server */
cas &_sessionName._&_sessionType host="controller.sas-cas-server-&_casserver..&_namespace..svc.cluster.local" port=5570 sessopts=(metrics=true);
1
/* CAS session */
2
%let _sessionName=&sysuserid;
3
%let _sessionType=studio;
4
%let _namespace=gelcorp;
5
%let _casserver=default;
6
7
/* Start a CAS session on the cas-shared-&_casserver CAS server */
8
cas &_sessionName._&_sessionType host="controller.sas-cas-server-&_casserver..&_namespace..svc.cluster.local" port=5570 sessopts=(metrics=true);
3 Codeblock
SAS/CONNECT Session Management
Erklärung : Dieser Block bereitet eine SAS/CONNECT-Verbindung vor und stellt sie her. Er definiert die Makrovariable `host` mit der Adresse und dem Port des Remote-Connect-Servers. Der Befehl `SIGNON` wird dann verwendet, um sich mit spezifischen Anmeldeinformationen (`geladm`, `lnxsas`) mit dem Remote-Server zu verbinden. `%syslput` wird verwendet, um den Wert von `_sessionType` an die Remote-Umgebung zu senden, sodass er für nachfolgende `rsubmit`-Blöcke verfügbar ist.
Erklärung : Dieser Block, der auf dem Remote-Server über `rsubmit` ausgeführt wird, zeigt detaillierte Informationen über die SAS-Serverumgebung an. Er verwendet dieselben Systemvariablen und Makrofunktionen wie der Client-Block, um einen Überblick über den Benutzer, den Prozess und die Umgebung des Remote-Servers zu geben.
Kopiert!
rsubmit;
%put ********** SERVER ********;
%put My remote user ID is: &sysuserid;
%put The remote host name is: &syshostname;
%put The remote process name is: &sysprocessname;
%put The remote process ID is: &sysprocessid;
%put The remote process mode is: &sysprocessmode;
%let SASCLOUDNATIVE_state="%sysget(SASCLOUDNATIVE)";
%put &SASCLOUDNATIVE_state;
%let TCPNOIPADDR_state="%sysget(TCPNOIPADDR)";
%put &TCPNOIPADDR_state;
%let ENVIRONMENT="%sysget(SAS_SERVICES_URL)";
%put &ENVIRONMENT;
endrsubmit;
Erklärung : Dieser DATA STEP erstellt einen lokalen SAS-Datensatz namens `localstudio` (unter Verwendung des Wertes von `_sessionType`). Er generiert 100 Millionen Beobachtungen, jede mit zwei Variablen: `i` (ein Zähler) und `j` (ein Zufallswert, generiert durch die Funktion `ranuni`). Dieser Block veranschaulicht die Erstellung großer In-Memory-Daten in der lokalen Sitzung.
Kopiert!
data local&_sessionType;
do i=1 to 100000000;
j=ranuni(1234);
output;
end;
run;
1
DATA local&_sessionType;
2
DO i=1 to 100000000;
3
j=ranuni(1234);
4
OUTPUT;
5
END;
6
RUN;
6 Codeblock
DATA STEP (Remote) und %sysrput-Makro Data
Erklärung : Dieser Block, der auf dem Remote-Server über `rsubmit` ausgeführt wird, zeigt zunächst den Wert des Makros `_sessionTypeRemote` an. Anschließend erstellt er einen großen Remote-SAS-Datensatz namens `remotestudio` (unter Verwendung des Wertes von `_sessionTypeRemote`) mit 100 Millionen Beobachtungen und Zufallswerten, ähnlich dem lokalen Block. Schließlich wird `%sysrput` verwendet, um den Pfad des Arbeitsverzeichnisses (`work`) vom Remote-Server abzurufen und in der Makrovariablen `rsaswork` der lokalen Sitzung zu speichern, wodurch dieser Pfad nach `endrsubmit` referenziert werden kann.
Kopiert!
rsubmit;
%put &_sessionTypeRemote;
data remote&_sessionTypeRemote;
do i=1 to 100000000;
j=ranuni(1234);
output;
end;
run;
%sysrput rsaswork=%sysfunc(pathname(work));
endrsubmit;
1
rsubmit;
2
%put &_sessionTypeRemote;
3
4
DATA remote&_sessionTypeRemote;
5
DO i=1 to 100000000;
6
j=ranuni(1234);
7
OUTPUT;
8
END;
9
RUN;
10
11
%sysrput rsaswork=%sysfunc(pathname(work));
12
endrsubmit;
7 Codeblock
LIBNAME
Erklärung : Dieser Block zeigt den Wert des Makros `rsaswork` (den Pfad des Remote-Arbeitsverzeichnisses) an und weist dann eine SAS-Bibliothek (`libname`) mit dem Namen `rsaswork` zu. Diese Bibliothek ist mit dem Remote-Pfad (`&rsaswork`) verknüpft und verwendet die SAS/CONNECT-Sitzung (`server=host`), um auf die dort befindlichen Daten zuzugreifen. Dies ermöglicht die Interaktion mit den Daten des Remote-Servers von der lokalen Sitzung aus.
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.