Funktionsweise des SQL-Pushbacks
Letzte Aktualisierung: 16. Apr. 2025
Die Hauptziele für die SQL-Generierung sind die ersten Teile eines Flusses, die nach den Datenimportknoten kommen. Wenn SPSS Modeler einen Knoten findet, der nicht in SQL kompiliert werden kann, SPSS Modeler extrahiert die Daten aus der Datenbank und verarbeitet sie.
Bei der Vorbereitung und Ausführung des Ablaufs läuft der Prozess der SQL-Generierung wie folgt ab:
- SPSS Modeler ordnet die Ströme neu, um nachgelagerte Knoten in die "SQL-Zone" zu verschieben, wenn dies nachweislich sicher ist.
- SPSS Modeler arbeitet sich von den Importknoten zu den Endknoten vor und konstruiert dabei schrittweise SQL-Ausdrücke.
- Diese Phase endet, wenn entweder SPSS Modeler einen Knoten erreicht, der nicht in SQL umgewandelt werden kann, oder wenn der Endknoten in einem Fluss in SQL umgewandelt wird (z. B. ein Tabellenknoten oder ein Diagrammknoten).
- Um die Leistung zu optimieren, können Knoten aus dem SQL-Generierungsprozess ausgeschlossen werden, wenn die Ausgabe dieses Knotens nicht in späteren Knoten verwendet wird. Wenn z. B. ein Ableitungsknoten eine neue Spalte erzeugt, die in einem nachgeordneten Matrixknoten nicht verwendet wird, wird der Ableitungsknoten von der SQL-Generierung ausgeschlossen. Ein SQL-Symbol erscheint nicht neben dem Knoten Ableiten am Ende der SQL-Generierung.
Abb. 1. SQL-Generierung ohne Knotenpunkte - Am Ende dieser Phase wird jeder Knoten mit einer SQL-Anweisung beschriftet, falls der Knoten und seine Vorgänger eine SQL-Entsprechung aufweisen.
- Das SQL wird auf seine Gültigkeit geprüft. SPSS Modeler arbeitet von den Knoten, die die kompliziertesten SQL-Entsprechungen haben, zurück zu den Importknoten. Das SQL, das erfolgreich validiert wurde, wird für die Ausführung ausgewählt.
- Knoten, für die alle Operationen SQL generiert haben, werden mit einem SQL-Symbol neben dem Knoten auf der Ablaufübersicht hervorgehoben. Auf der Grundlage der Ergebnisse sollten Sie Ihren Ablauf gegebenenfalls weiter reorganisieren, um die Vorteile der Datenbankausführung voll auszuschöpfen.
Wo erfolgen Verbesserungen?
SQL-Pushback verbessert die Leistung für verschiedene Datenoperationen:
- Verknüpfungen (Zusammenführung nach Schlüssel)
- Joinoperationen können die Optimierung innerhalb von Datenbanken steigern.
- Zusammenfassung
- Die Aggregat-, Verteilungs- und Netzdiagrammknoten verwenden jeweils Aggregation zum Erstellen der Ergebnisse. Zusammengefasste Daten benötigen erheblich weniger Bandbreite als die ursprünglichen Daten.
- Auswahl
- Die Auswahl von Datensätzen auf der Grundlage bestimmter Kriterien verringert die Menge der Datensätze.
- Sortieren
- Das Sortieren von Datensätzen ist eine ressourcenintensive Aktivität, die sich effizienter in einer Datenbank ausführen lässt.
- Ableitung der Felder
- Neue Felder lassen sich effizienter in einer Datenbank generieren.
- Feldprojektion
- Die Software extrahiert nur Felder aus der Datenbank, die für die nachfolgende Verarbeitung erforderlich sind. Dadurch werden die Anforderungen an Bandbreite und Arbeitsspeicher minimiert. Dasselbe gilt auch für überflüssige Felder in Flatfiles: Die Software muss die überflüssigen Felder zwar lesen, ordnet ihnen jedoch keinen Speicher zu.
- Bewertung
- SQL lässt sich aus Entscheidungsbäumen, Regelsets, linearer Regression und faktorgenerierten Modellen generieren.
War das Thema hilfreich?
0/1000