Zurück zur englischen Version der DokumentationFunktionsweise des SQL-Pushbacks
SQL-Optimierung (SPSS Modeler)
Letzte Aktualisierung: 07. Okt. 2024
Die ersten Fragmente eines Ablaufs, der von den Datenimportknoten ausgeht, sind die Hauptziele für die SQL-Generierung. Wenn ein Knoten gefunden wird, der sich nicht in SQL kompilieren lässt, werden die Daten aus der Datenbank extrahiert und die weitere Verarbeitung wird durchgeführt.
Während der Vorbereitung und vor der Ausführung eines Ablaufs findet die SQL-Generierung wie folgt statt.
- Die Software ordnet Abläufe neu, um nachgeordnete Knoten in die "SQL-Zone" zu verschieben, wenn dies erwiesenermaßen problemlos möglich ist.
- SQL-Ausdrücke werden schrittweise von den Importknoten zu den Endknoten hin erstellt. Diese Phase endet, wenn ein Knoten gefunden wird, der nicht in SQL konvertiert werden kann, oder der Endknoten (z. B. ein Tabellenknoten oder Diagrammknoten) in SQL konvertiert wird. 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 ausgehend von den Knoten mit den kompliziertesten SQL-Äquivalenten zurück zu den Importknoten auf Validität überprüft. Das SQL, das erfolgreich validiert wurde, wird für die Ausführung ausgewählt.
- Knoten, für die alle Operationen SQL generiert haben, werden durch ein Symbol SQL neben dem Knoten im Erstellungsbereich des Ablaufs hervorgehoben. Auf der Grundlage der Ergebnisse kann es angebracht sein, den Ablauf an den entsprechenden Stellen weiter zu reorganisieren, um die Datenbankausführung bestmöglich zu nutzen.
Wo erfolgen Verbesserungen?
Das SQL-Pushback verbessert die Leistung in einer Reihe von Datenoperationen:
- Joins (Zusammenführen nach Schlüssel). Joinoperationen können die Optimierung innerhalb von Datenbanken steigern.
- Aggregation. 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.
- Feldableitung. 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.