SAS Batch – Checkpoint und Restart-Modus

Aus SAS-Wiki
Wechseln zu: Navigation, Suche

Von Grischa Pfister: Carina Ortseifen, Grischa Pfister, Heribert Ramroth, Marianne Weires: Tipps und Tricks für den leichteren Umgang mit der SAS Software, KSFE 2009

Für die Belieferung von Datawarehouses oder andere lang laufende Arbeitsschritte wird SAS häufig im Batch verwendet. Zumeist nachts in bestimmten Zeitfenstern laufen diese SAS-Prozesse, am nächsten Tag prüft dann ein zuständiger Mitarbeiter, ob alles geklappt hat. Leider kann es hier immer wieder zu Problemen kommen, weil z.B. Input-Tabellen noch nicht vollständig waren oder der temporäre Arbeitsspeicher nicht ausgereicht hat. In diesen Fällen wird die Batch-Verarbeitung abgebrochen und muss dann erneut gestartet werden. Bisher war es so, dass das ganze Programm ein zweites Mal abgearbeitet werden musste. Neben einer Reihe weiterer Implikationen bedeutet das, dass der Zeitaufwand für den Programmdurchlauf noch einmal mindestens genauso groß ist. Mit Version 9.2 gibt es jetzt eine Neuerung, die für solche Fälle eine Lösung anbietet – der Checkpoint und Restart Modus. Der Checkpoint Modus wird über Optionen aktiviert und sorgt dann dafür, dass in einem Katalog mitprotokolliert wird, welche Arbeitsschritte korrekt durchlaufen wurden, bevor es zu dem Fehler kam. Nach Abbruch des Programms kann SAS dann erneut gestartet werden, diesmal im Restart Modus. Aus dem Katalog wird ausgelesen, welche Programmteile erfolgreich gelaufen waren, und ab welcher Stelle wieder neu aufgesetzt werden muss. Enthaltene Makros werden erneut kompiliert, Makrovariablen allerdings nicht wieder mit den Laufzeitwerten befüllt. Über Optionen kann auch gesteuert werden, dass die Work-Bibliothek auf das Verzeichnis der abgebrochenen SAS-Session gesetzt wird – so sind auch die erfolgreich erstellten temporären Tabellen aus der vorherigen Sitzung noch nutzbar. Das globale Statement „Checkpoint Execute_Always“ steuert, dass der nachfolgende Programmabschnitt auf jeden Fall erneut ausgeführt wird. Eine Übersicht über die Funktionsweise des Checkpoint und Restart Modus sowie über die hierfür neu eingeführten Optionen finden sich in der Language Reference im entsprechenden Unterkapitel zur Fehlerbehandlung – generell eine interessante Lektüre.

Literatur

  • SAS 9.2 Language Reference: Concepts, S. 108 ff.