Um die Ablaufausführung zu optimieren, können Sie einen Cache für Knoten
einrichten, die keine Endknoten sind. Wenn Sie einen Cache für einen Knoten einrichten,
wird der Cache mit den Daten gefüllt, die bei der nächsten Ausführung des Datenflusses
durch den Knoten laufen. Ab diesem Zeitpunkt werden die Daten aus dem (temporär
gespeicherten) Cache und nicht mehr aus der Datenquelle eingelesen.
Caching ist am nützlichsten im Anschluss an zeitaufwendige Operationen, wie Sortieren, Zusammenführen oder Aggregation. Angenommen, es ist beispielsweise ein Importknoten vorhanden, der zum Lesen von Umsatzdaten aus einer Datenbank eingerichtet ist, und ein Aggregatknoten, der den Umsatz nach Standort zusammenfasst. Sie können einen Cache an dem Aggregatknoten einrichten anstatt an dem Importknoten, weil Sie möchten, dass der Cache die aggregierten Daten und nicht das gesamte Dataset speichert.
Hinweis: Das Caching auf Importknoten, bei dem lediglich eine Kopie der ursprünglichen Daten gespeichert wird, wenn sie in SPSS Modelereingelesen werden, verbessert die Leistung in den meisten Fällen nicht.
Knoten mit aktiviertem Caching werden mit einem speziellen Kreis-Backslash-Symbol angezeigt. Wenn die Daten am Knoten zwischengespeichert werden, ändert sich das Symbol in ein Häkchen.
Abb. 1. Vergleich von Knoten mit leerem Cache und Knoten mit vollem Cache
Cache aktivieren
Copy link to section
Bewegen Sie den Mauszeiger über den Knoten in Ihrem Flow, klicken Sie auf das Überlaufmenü und wählen Sie Cache > Aktivierenaus.
Sie können den Cache jederzeit inaktivieren.
Caching von Knoten in einer Datenbank nutzen
Copy link to section
Bei in einer Datenbank ausgeführten Abläufen muss nicht das Dateisystem als Cache verwendet werden, sondern die Daten können mitten im Ablauf in einer temporären Tabelle in der Datenbank zwischengespeichert werden. Bei einer Kombination mit SQL-Optimierung kann dies zu einer erheblichen Leistungssteigerung führen. So kann beispielsweise die Ausgabe aus einem Ablauf, der mehrere Tabellen zusammenfasst, um eine Data-Mining-Ansicht zu erstellen, im Cache gespeichert und bei Bedarf wieder verwendet werden. Durch die automatische Generierung von SQL für alle nachgeordneten Knoten lässt sich die Leistung weiter erhöhen.
Um das Caching von Datenbanken nutzen zu können, müssen sowohl SQL-Optimierung als auch Datenbankcaching aktiviert sein.
Wenn das Datenbankcaching aktiviert ist, können Sie Daten auf einem beliebigen Knoten ohne Terminal zwischenspeichern. Der Cache wird bei der nächsten Ausführung des Ablaufs automatisch direkt in der Datenbank erstellt. Wenn Datenbankcaching oder SQL-Optimierung nicht aktiviert ist, wird der Cache stattdessen in das Dateisystem geschrieben.
Hinweis Die folgenden Datenbanken unterstützen temporäre Tabellen zum Caching: Db2, Oracle, SQL Serverund Teradata. Andere Datenbanken, beispielsweise Netezza, verwenden für das Datenbankcaching eine normale Tabelle.
Cache leeren
Copy link to section
Ein Kreis-Backslash-Symbol nach Knoten gibt an, dass sein Cache leer ist. Wenn der Cache voll ist, wird das Symbol in ein Häkchen geändert. Wenn Sie den
Inhalt des Caches ersetzen möchten, müssen Sie den Cache zunächst leeren und den
Datenfluss dann erneut ausführen, um ihn erneut zu füllen.
Bewegen Sie den Cursor über den Knoten in Ihrem Flow, klicken Sie auf das Überlaufmenü und wählen Sie Cache > Leerenaus.