Entspannte Codepage-Validierung
In Ihrer Umgebung kann es notwendig sein, dass Sie Daten aus unterschiedlichen Quellen mit Zeichensätzen aus verschiedenen Sprachen verarbeiten. Zum Beispiel könnten Sie Daten aus englischen und japanischen Quellen unter Verwendung desselben PowerCenter-Repository verarbeiten müssen oder Quelldaten extrahieren wollen, die in einer Unicode-Codierung wie UTF-16LE codiert sind. Sie können den PowerCenter Integration Service für eine entspanntes Codepage-Validierung konfigurieren. Mit der entspannen Codepage-Validierung können Sie Daten mit Quellen und Targets verarbeiten, die inkompatible Codepages haben.
Auch wenn die entspannte Codepage-Validierung Codepage-Einschränkungen bei Quellen und Targets entfernt, erzwingt sie dennoch die Codepage-Kompatibilität zwischen dem PowerCenter Integration Service und dem PowerCenter-Repository.
HINWEIS: Die entspannte Codepage-Validierung ist kein Schutz vor möglichen Dateninkonsistenzen, wenn Sie Daten zwischen inkompatiblen Codepages verschieben. Sie müssen sicherstellen, dass die Zeichen, die der PowerCenter Integration Service aus der Quelle liest, in der Target-Codepage enthalten sind.
Informatica hebt die folgenden Einschränkungen auf, wenn Sie die entspannte Codepage-Validierung einsetzen:
- •Quell- und Target-Codepages. Sie können jede beliebige Codepage verwenden, die von Informatica für Ihre Quell- und Targetdaten unterstützt wird.
- •Sitzungs-Sortier-Reihenfolge Sie können beim Konfigurieren von Sitzungen jede beliebige Sortierreihenfolge verwenden, die von Informatica unterstützt wird.
Wenn Sie eine Sitzung mit entspannter Codepage-Validierung starten, schreibt der PowerCenter Integration Service die folgende Meldung in das Sitzungs-Log:
TM_6185 WARNING! Data code page validation is disabled in this session.
Wenn Sie die entspannte Codepage-Validierung verwenden, schreibt der PowerCenter Integration Service Beschreibungen der Datenbankverbindungs-Codepages in das Sitzungs-Log.
Der folgende Text zeigt ein Beispiel für eine Codepage-Meldung im Sitzungs-Log:
TM_6187 Repository code page: [MS Windows Latin 1 (ANSI), superset of Latin 1]
WRT_8222 Target file [$PMTargetFileDir\passthru.out] code page: [MS Windows Traditional Chinese, superset of Big 5]
WRT_8221 Target database connection [Japanese Oracle] code page: [MS Windows Japanese, superset of Shift-JIS]
TM_6189 Source database connection [Japanese Oracle] code page: [MS Windows Japanese, superset of Shift-JIS]
CMN_1716 Lookup [LKP_sjis_lookup] uses database connection [Japanese Oracle] in code page [MS Windows Japanese, superset of Shift-JIS]
CMN_1717 Stored procedure [J_SP_INCREMENT] uses database connection [Japanese Oracle] in code page [MS Windows Japanese, superset of Shift-JIS]
Wenn der PowerCenter Integration Service Daten nicht richtig konvertieren kann, schreibt er eine Fehlermeldung in das Sitzungs-Log.
Konfigurieren des PowerCenter Integration Service
Um den PowerCenter Integration Service auf Codepage Relaxation zu konfigurieren, müssen folgende Tasks im Administrator Tool durchgeführt werden:
- •Codepage-Validierung deaktivieren. Deaktivieren Sie die Option ValidateDataCodePages in den Eigenschaften des PowerCenter Integration Service.
- •Konfigurieren Sie den PowerCenter Integration Service auf Unicode-Datenverschiebungsmodus. Wählen Sie in den Eigenschaften des PowerCenter Integration Service Unicode als Datenverschiebungsmodus.
- •Konfigurieren Sie den PowerCenter Integration Service so, dass er zum Schreiben in den Logs den Zeichensatz UTF-16LE verwendet. Aktivieren Sie beim Konfigurieren von Sitzungen oder Arbeitsabläufen zum Schreiben in Log-Dateien die Option LogsInUTF8 in den Eigenschaften für den PowerCenter Integration Service. Wenn Sie die Option LogsInUTF8 aktivierten, schreibt der PowerCenter Integration Service alle Logs in UTF-16LE. Der PowerCenter Integration Service schreibt per Standard im Log-Manager in UTF-16LE.
Kompatible Quell- und Target-Codepages auswählen
Obwohl es das PowerCenter ermöglicht, jede unterstützte Codepage zu verwenden, gibt es Risiken mit inkompatiblen Codepages für Quellen und Targets. Wenn Ihre Target-Codepage keine Obermenge der Quell-Codepage ist, riskieren Sie Inkonsistenzen in den Target-Daten, denn die Quelldaten enthalten eventuell Zeichen, die nicht in der Target-Codepage codiert sind.
Wenn der PowerCenter Integration Service Zeichen liest, die nicht in der Target-Codepage enthalten sind, riskieren Sie Umwandlungsfehler, inkonsistente Daten oder fehlgeschlagene Sitzungen.
HINWEIS: Wenn Sie die Codepage-Validierung lockern, liegt es in Ihrer Verantwortung, dass die Datenkonvertierung von der Quelle in das Target korrekt funktioniert.
Fehlerbehebung für Codepage-Lockerung
- Der PowerCenter Integration Service hat einen Fehler in einer Sitzung begangen und schreibt folgende Meldung in das Sitzungs-Log:
TM_6188 The specified sort order is incompatible with the PowerCenter Integration Service code page.
Wählen Sie zum Validieren von Codepages eine Sortierreihenfolge aus, die mit der PowerCenter Integration Service-Codepage kompatibel ist. Um die Codepage-Validierung zu lockern, legen Sie im PowerCenter Integration Service fest, dass die Codepage-Validierung im Unicode-Datenverschiebungsmodus gelockert wird.
- Ich habe versucht, den Sitzungs- und Arbeitsablauf-Log anzuzeigen, aber sie enthalten nur unlesbare Zeichen.
Der PowerCenter Integration Service ist nicht für das Schreiben von Sitzungs- und Arbeitsablauf-Logs mit dem UTF-16LE Zeichensatz konfiguriert.
Aktivieren Sie die Option LogsInUTF8 in den Eigenschaften des PowerCenter Integration Service.