?>Array ( [id] => 2 ) Automatisierte Bereinigung temporärer Tabellen über mehrere persönliche Caslibs - WeAreCAS
accessControl accessPersonalCaslibs

Automatisierte Bereinigung temporärer Tabellen über mehrere persönliche Caslibs

Scénario de test & Cas d'usage

Contexte Métier

Nach einem vierteljährlichen Analysezyklus muss der CAS-Administrator Speicherplatz freigeben, indem er alle veralteten temporären Tabellen (mit dem Präfix '_temp_') aus den persönlichen Caslibs mehrerer wichtiger Benutzer ('analyst01', 'analyst02') löscht.
Préparation des Données

Erstellt mehrere Tabellen in den persönlichen Caslibs von zwei verschiedenen Benutzern. Einige Tabellen sind temporär (z. B. '_temp_ergebnisse') und andere sind permanent (z. B. 'endgueltiger_bericht').

Copié !
1/* Annahme: Die Benutzer analyst01 und analyst02 existieren. Dieser Code richtet ihre Caslibs ein. */
2DATA casuser._temp_ergebnisse; x=1; RUN; /* In der Caslib des Admins */
3DATA casuser.wichtige_daten; y=2; RUN; /* In der Caslib des Admins */
4 
5/* Simuliert Tabellen, die von analyst01 erstellt wurden */
6PROC CAS;
7 SESSION casauto;
8 TABLE.addCaslib / caslib='CASUSER(analyst01)';
9 DATA CASUSER(analyst01)._temp_zwischenschritt; a=10; RUN;
10 DATA CASUSER(analyst01).endgueltiger_bericht; b=20; RUN;
11 
12/* Simuliert Tabellen, die von analyst02 erstellt wurden */
13 TABLE.addCaslib / caslib='CASUSER(analyst02)';
14 DATA CASUSER(analyst02)._temp_validierung; c=30; RUN;
15 DATA CASUSER(analyst02).projekt_abschluss; d=40; RUN;
16QUIT;

Étapes de réalisation

1
Der Administrator aktiviert den globalen Zugriff auf persönliche Caslibs.
Copié !
1PROC CAS;
2 ACTION ACCESSCONTROL.accessPersonalCaslibs;
3RUN;
2
Der Administrator listet und löscht die temporäre Tabelle für 'analyst01'.
Copié !
1PROC CAS;
2 ACTION TABLE.tableInfo / caslib='CASUSER(analyst01)';
3 RUN;
4 ACTION TABLE.dropTable / caslib='CASUSER(analyst01)' name='_temp_zwischenschritt';
5 RUN;
3
Der Administrator listet und löscht die temporäre Tabelle für 'analyst02'.
Copié !
1PROC CAS;
2 ACTION TABLE.tableInfo / caslib='CASUSER(analyst02)';
3 RUN;
4 ACTION TABLE.dropTable / caslib='CASUSER(analyst02)' name='_temp_validierung';
5 RUN;
4
Der Administrator überprüft, ob nur die permanenten Tabellen in den Caslibs der Benutzer verbleiben.
Copié !
1PROC CAS;
2 ACTION TABLE.tableInfo / caslib='CASUSER(analyst01)';
3 RUN;
4 ACTION TABLE.tableInfo / caslib='CASUSER(analyst02)';
5 RUN;
6QUIT;

Résultat Attendu


Die Aktionen zum Löschen der Tabellen werden erfolgreich ausgeführt. Die abschließende Überprüfung zeigt, dass die Tabellen '_temp_zwischenschritt' und '_temp_validierung' gelöscht wurden, während 'endgueltiger_bericht' und 'projekt_abschluss' in ihren jeweiligen Caslibs verbleiben. Dies bestätigt, dass der Administrator selektive Wartungsaufgaben über mehrere Benutzerbereiche hinweg durchführen kann.