Verwenden von Iterationen mit einem eingebetteten Datenfluss
Iterationseinstellungen geben an, wie ein eingebetteter Datenfluss eingehende Datensätze verarbeiten soll. Standardmäßig verarbeiten eingebettete Datenflüsse genau wie jeder andere Schritt im Datenfluss jeden Datensatz einzeln. Wenn Sie jedoch Iterationen verwenden, können Sie Datensatzgruppen zusammen verarbeiten. Dies kann für Vorgänge wie Vergleiche oder Berechnungen basierend auf Datensatzgruppen statt auf dem gesamten Satz an Eingabedaten nützlich sein. Sie können auch Iterationen verwenden, um Schrittoptionen basierend auf den Daten in jedem Datensatz festzulegen.
Es gibt zwei Arten von Iterationen: nach Datensatz oder nach Gruppe. Bei Iterationen nach Datensatz verarbeitet ein eingebetteter Datenfluss jeweils einen Datensatz gleichzeitig und das Ergebnis wird an den nächsten, auf den eingebetteten Datenfluss folgenden Schritt gesendet. Die Iteration nach Datensatz ist nützlich, wenn Sie Schrittoptionen mithilfe von Feldwerten von Datensatz zu Datensatz festlegen möchten.
Bei Iterationen nach Gruppe werden Datensätze nach einem Schlüsselfeld gruppiert und der eingebettete Datenfluss verarbeitet jede Gruppe. Alle Datensätze in einer Gruppe werden in einer Iteration verarbeitet, anschließend wird die Gruppe in den nächsten, auf den eingebetteten Unterfluss folgenden Schritt geschrieben. Verwenden Sie Iterationen nach Gruppe, um Gruppen von verbundenen Datensätzen zu verarbeiten und um Schrittoptionen festzulegen, die bei der Verarbeitung der Gruppe von Datensätzen verwendet werden sollen. Sie möchten Datensätze beispielsweise nach Kunden-ID gruppieren, um eine Analyse des Datensatzes jedes Kunden durchzuführen, damit Sie ermitteln können, welches Geschäft von welchem Kunden am häufigsten besucht wird.
Sie sollten die Auswirkungen auf die Leistung berücksichtigen, wenn Sie Iterationen verwenden. Beim Start jeder neuen Iteration entsteht ein Mehraufwand während der Initialisierung des eingebetteten Datenflusses. Dieser Mehraufwand kann bedeutsame Auswirkungen haben, insbesondere bei eingebetteten Datenflüssen innerhalb anderer eingebetteter Datenflüsse. Wenn beispielsweise ein eingebetteter Datenfluss 1.000 Mal durchlaufen wird und innerhalb eines anderen Datenflusses enthalten ist, der ebenfalls 1.000 Male durchlaufen wird, würde die Gesamtsumme der Iterationen 1.000.000 betragen. Die Iterationen nach Datensatz haben größere Auswirkungen auf die Leistung, da jeder Datensatz eine neue Iteration auslöst.