Informatica
Informatica Sequence Generator
Verwenden Sie den Sequence Generator, wenn Ihr Mapping in PowerCenter einen vorhersagbaren Surrogatschlüssel benötigt.
Funktion
- Erzeugt Zahlenwerte innerhalb eines Mappings, ohne vom Quellsystem abhängig zu sein.
- Versorgt in der Regel Dimensionen, Staging-Tabellen oder zeilenbezogene IDs mit Surrogatschlüsseln.
- Stellt zwei Ports bereit: NEXTVAL für den nächsten erzeugten Wert und CURRVAL für den aktuellen Wert.
Kernports
| Element | Bedeutung | Typischer Einsatz |
|---|---|---|
| NEXTVAL | Nächster erzeugter Wert in der Sequenz. | Einen neuen Surrogatschlüssel schreiben. |
| CURRVAL | Aktueller Wert nach dem Fortschreiten von NEXTVAL. | Denselben erzeugten Schlüssel erneut verwenden. |
| Startwert | Erster ausgegebener Wert. | Den ersten Schlüssel eines Lades festlegen. |
| Inkrement | Schrittweite zwischen den Werten. | Schlüsselabstände oder Partitionierung steuern. |
Grundlegender Ablauf
- 1Fügen Sie die Sequence-Generator-Transformation zum Mapping hinzu.
- 2Konfigurieren Sie Startwert, Inkrement und Port-Verwendung.
- 3Verbinden Sie NEXTVAL mit der Ziel-Schlüsselspalte, die einen neuen Bezeichner benötigt.
- 4Verwenden Sie CURRVAL nur, wenn derselbe erzeugte Wert im Mapping mehrfach benötigt wird.
Code
Typisches Surrogatschlüssel-Muster
SRC_CUSTOMER -> EXP_CLEAN -> SEQ_CUSTOMER_KEY.NEXTVAL -> TGT_DIM_CUSTOMER.CUSTOMER_KEYFAQ
Wann sollte ich CURRVAL verwenden?
Wenn ein erzeugter Schlüssel mehrere nachgelagerte Felder im selben Mapping versorgen muss.
Warum den Sequence Generator statt Quellschlüsseln nutzen?
Quellschlüssel kollidieren oft zwischen Systemen oder sind für Dimensionsmodelle nicht stabil genug.
Garantiert der Sequence Generator lückenlose Surrogatschlüssel?
Nein. Nach Sitzungsfehlern oder Zeilenrückweisungen erfolgt kein Rollback. Lücken sind in ETL-Workflows normal und zu erwarten.
Kann ich einen Sequence Generator für mehrere Zieltabellen gemeinsam nutzen?
Technisch ja, aber nicht empfohlen. Geteilte Generatoren erzeugen verschachtelte Schlüsselbereiche, was die Nachvollziehbarkeit des Schlüsselraums jeder Tabelle erschwert. Verwenden Sie pro Zieltabelle einen eigenen Generator für eine saubere Schlüsseltrennung.
Verwandt