Heim > Datenbank > MySQL-Tutorial > Verwenden von Pipelines zum Kombinieren von Vorgängen

Verwenden von Pipelines zum Kombinieren von Vorgängen

PHPz
Freigeben: 2023-09-04 19:29:02
nach vorne
734 Leute haben es durchsucht

Verwenden von Pipelines zum Kombinieren von Vorgängen

In einem DSS-Workflow ist die SQL-Pipeline der Prozess des Mischens mehrerer aufeinanderfolgender Rezepte (die jeweils dieselbe SQL-Engine verwenden). Anschließend können Sie eine einzelne Jobaktivität ausführen, die diese integrierten Rezepte enthält (möglicherweise visuelle Rezepte und SQL-Abfragerezepte).

Normalerweise werden SQL-Abfragen in Ausdrücke der relationalen Algebra umgewandelt, einer Reihe relationaler Operationen. Wenn wir jeweils nur einen Vorgang ausführen würden, wären die Kosten zu hoch, da wir temporäre Dateien auf der Festplatte erstellen müssten, um die Ergebnisse dieser temporären Vorgänge zu speichern. Es müssen große temporäre Dateien erstellt und auf der Festplatte gespeichert werden. Dies nimmt jedoch Zeit in Anspruch und ist normalerweise nicht erforderlich, da der folgende Prozess diese Dateien sofort als Eingabe verwendet. Es ist üblich, Abfrageausführungscode zu generieren, der Algorithmen für bestimmte Kombinationen von Vorgängen in der Abfrage entspricht, um die Anzahl temporärer Dateien zu reduzieren.

Beispiel

Zum Beispiel könnte eine Methode mit zwei Eingabedateien und einer Ausgabedatei eine JOIN- und zwei SELECT-Operationen für die Eingabedateien sowie eine abschließende PROJECT-Operation für die Ergebnisdatei ausführen, anstatt jede dieser Operationen einzeln zu implementieren. Anstatt vier temporäre Dateien zu erstellen, wenden wir die Methode an und erhalten nur eine resultierende Datei. Als Begriffe hierfür werden Pipelining oder Stream-basierte Verarbeitung verwendet.

Fazit

Um eine große Anzahl von Vorgängen auszuführen, ist es üblich, Abfrageausführungscode dynamisch zu generieren. Abfragen werden durch die Erstellung von Code generiert, der zahlreiche Algorithmen enthält, die verschiedenen Prozessen entsprechen. Nachdem eine Operation ausgeführt wurde, wird das resultierende Tupel generiert und als Eingabe für andere Operationen verwendet. Wenn beispielsweise auf zwei SELECT-Operationen für eine Basisbeziehung eine JOIN-Operation folgt, werden die von jeder SELECT-Operation erstellten Tupel in einen Stream oder eine Pipeline eingespeist und als Eingabe für den JOIN-Prozess verwendet.

Das obige ist der detaillierte Inhalt vonVerwenden von Pipelines zum Kombinieren von Vorgängen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage