Data Movement Modes
The data movement mode is a PowerCenter Integration Service option you choose based on the type of data you want to move, single-byte or multibyte data. The data movement mode you select depends the following factors:
- •Requirements to store single-byte or multibyte metadata in the PowerCenter repository
- •Requirements to access source data containing single-byte or multibyte character data
- •Future needs for single-byte and multibyte data
The data movement mode affects how the PowerCenter Integration Service enforces session code page relationships and code page validation. It can also affect performance. Applications can process single-byte characters faster than multibyte characters.
Character Data Movement Modes
The PowerCenter Integration Service runs in the following modes:
- •ASCII (American Standard Code for Information Interchange). The US-ASCII code page contains a set of 7-bit ASCII characters and is a subset of other character sets. When the PowerCenter Integration Service runs in ASCII data movement mode, each character requires one byte.
- •Unicode. The universal character-encoding standard that supports all languages. When the PowerCenter Integration Service runs in Unicode data movement mode, it allots up to two bytes for each character. Run the PowerCenter Integration Service in Unicode mode when the source contains multibyte data.
Tip: You can also use ASCII or Unicode data movement mode if the source has 8-bit ASCII data. The PowerCenter Integration Service allots an extra byte when processing data in Unicode data movement mode. To increase performance, use the ASCII data movement mode. For example, if the source contains characters from the ISO 8859-1 code page, use the ASCII data movement.
The data movement you choose affects the requirements for code pages. Ensure the code pages are compatible.
ASCII Data Movement Mode
In ASCII mode, the PowerCenter Integration Service processes single-byte characters and does not perform code page conversions. When you run the PowerCenter Integration Service in ASCII mode, it does not enforce session code page relationships.
Unicode Data Movement Mode
In Unicode mode, the PowerCenter Integration Service recognizes multibyte character data and allocates up to two bytes for every character. The PowerCenter Integration Service performs code page conversions from sources to targets. When you set the PowerCenter Integration Service to Unicode data movement mode, it uses a Unicode character set to process characters in a specified code page, such as Shift-JIS or UTF-8.
When you run the PowerCenter Integration Service in Unicode mode, it enforces session code page relationships.
Changing Data Movement Modes
You can change the data movement mode in the PowerCenter Integration Service properties in the Administrator tool. After you change the data movement mode, the PowerCenter Integration Service runs in the new data movement mode the next time you start the PowerCenter Integration Service. When the data movement mode changes, the PowerCenter Integration Service handles character data differently. To avoid creating data inconsistencies in your target tables, the PowerCenter Integration Service performs additional checks for sessions that reuse session caches and files.
The following table describes how the PowerCenter Integration Service handles session files and caches after you change the data movement mode:
Session File or Cache | Time of Creation or Use | PowerCenter Integration Service Behavior After Data Movement Mode Change |
---|
Session Log File (*.log) | Each session. | No change in behavior. Creates a new session log for each session using the code page of the PowerCenter Integration Service process. |
Workflow Log | Each workflow. | No change in behavior. Creates a new workflow log file for each workflow using the code page of the PowerCenter Integration Service process. |
Reject File (*.bad) | Each session. | No change in behavior. Appends rejected data to the existing reject file using the code page of the PowerCenter Integration Service process. |
Output File (*.out) | Sessions writing to flat file. | No change in behavior. Creates a new output file for each session using the target code page. |
Indicator File (*.in) | Sessions writing to flat file. | No change in behavior. Creates a new indicator file for each session. |
Incremental Aggregation Files (*.idx, *.dat) | Sessions with Incremental Aggregation enabled. | When files are removed or deleted, the PowerCenter Integration Service creates new files. When files are not moved or deleted, the PowerCenter Integration Service fails the session with the following error message: SM_7038 Aggregate Error: ServerMode: [server data movement mode] and CachedMode: [data movement mode that created the files] mismatch. Move or delete files created using a different code page. |
Unnamed Persistent Lookup Files (*.idx, *.dat) | Sessions with a Lookup transformation configured for an unnamed persistent lookup cache. | Rebuilds the persistent lookup cache. |
Named Persistent Lookup Files (*.idx, *.dat) | Sessions with a Lookup transformation configured for a named persistent lookup cache. | When files are removed or deleted, the PowerCenter Integration Service creates new files. When files are not moved or deleted, the PowerCenter Integration Service fails the session. Move or delete files created using a different code page. |