2016-07-17 13 views
0

Ich bin neu bei Informatica und ich weiß, dass es eine sehr grundlegende Frage ist.Informatica powercenter Joiner Transformation

Es wird empfohlen, dass wir Quelle mit weniger Zeilen als Master und Quelle mit mehr Zeilen als Detail wählen sollten. Warum?

Wenn ich 10 Zeilen im Master und 20 Zeilen im Detail habe, erstellt PowerCenter einen Cache mit 10 Zeilen und führt 10 Iterationen mit 20 Vergleichen durch. Wenn Master- und Detailquelle ausgetauscht werden, führt es 20 Iterationen mit 10 Vergleichen durch jede Iteration.

Wie ist die Leistung im ersten Fall verbessert, ist es wegen der Cache-Größe? Auch muss Powercenter nicht immer Daten aus der Detailquelle holen, um mit dem Master zu vergleichen. Wenn dies der Fall ist, sollten wir nicht die Detailquelle statt der Hauptquelle zwischenspeichern.

Antwort

0

Wenn ich 10 Zeilen in Master und 20 Reihen im Detail dann Powercenter einen Cache von 10 Zeilen erstellen und 10 Iterationen durchführen mit 20 Vergleichen und wenn Master- und Detailquelle ausgetauscht werden dann es 20 führen Iterationen mit 10 Vergleichen in jeder Iteration.

Ich glaube, es ist das Gegenteil: Im ersten Fall sind 10 Master-Zeilen zwischengespeichert. Also für jede der 20 Detailzeilen wird sie mit 10 zwischengespeicherten Zeilen verglichen. 20 Iterationen und 10 Vergleiche. Im zweiten Fall sind es 10 Iterationen und 20 Vergleiche.

Obwohl es in beiden Fällen 200 Operationen gibt, ist die Cache-Größe im ersten Fall geringer, aber effizienter.

auch nicht Powercenter haben Daten holen immer wieder aus Detail Quelle mit Master zu vergleichen, Wenn dies der Fall ist, dann sollten wir Details Quelle nicht statt Quelle Master werden das Caching?

Nein, PowerCenter liest jeden Datensatz nur einmal aus der Quelle und vergleicht ihn mit dem Cache.

0

Ich füge nur eine Sache zu @Samiks answer: Was passiert, wenn Sie sich einer großen und ver-kleinen Quelle anschließen? Sagen wir es 10GB und 10MB. Also, Sie definieren das kleine als Master. Sobald die Powercenter-Sitzung startet, liest sie die 10 MB in den Cache. Dann beginnt es Zeile für Zeile die 10GB-Quelle zu lesen. Für jede erhält sie Daten aus dem 10-MB-Cache und sendet die Daten an das Ziel, ohne es zwischenzuspeichern. Für den gesamten Prozess werden nur 10 MB Cache benötigt.