Use of the PowerExchange Logger for Linux, UNIX, and Windows is optional. However, Informatica strongly recommends that you use it to reduce or avoid CDC impacts on your system, such as increased database I/O and the need to retain archive logs longer than normal. You can run the PowerExchange Logger in batch or continuous mode.
The maximum length of a row for which PowerExchange can capture and process change data is 128,000 bytes.
The PowerExchange Express CDC for Oracle capture process and the Oracle source instance that contains the redo logs can run on machines that have different operating systems and architectures. You can use any combination of supported Linux, UNIX, and Windows operating systems.
To capture changes across heterogeneous platforms, the Oracle source tables must be registered on the PowerExchange Logger system.
If the PowerExchange Express for Oracle capture process and the Oracle redo logs are located on different operating systems, one of which is Windows and the other is Linux or UNIX, PowerExchange can translate the forward or backward slash in the path to the redo logs so that it can process the logs locally. In this situation, PowerExchange issues the following message:
PWX-36113 ORAD Info Mbr 1: Server log file
path_filename_on_source_server
will be processed locally as
local_path_filename
.
The DIRSUB setting is still honored, and the slashes in its paths are translated appropriately.
PowerExchange Express for Oracle can read Oracle redo logs that are in ASM-managed storage, on a standard file system, or on a network file system (NFS). However, if the logs are on an NFS and the NFS buffers become stale, Express CDC might fail with error message PWX-36171 when reading the active logs. To avoid this problem, use one of the following options:
Configure the Oracle database to write active redo logs to ASM-managed storage.
Disable PowerExchange Express CDC use of active redo logs by setting the READER MODE parameter to ARCHIVEONLY or ARCHIVECOPY in the pwxorad.cfg file.
When you configure the NFS mount point for active redo logs, disable read buffering and attribute caching.
On Linux, PowerExchange Express CDC for Oracle cannot guarantee support for the combination of Oracle direct I/O writes and the reading of active redo logs over NFS. The Linux NFS server does not honor the request to open files by using direct I/O. The combination of direct I/O writes and buffered reads might lead to a corrupted page cache. If PowerExchange Express CDC detects a corrupted page cache, Express CDC fails with error message PWX-36171. Under some circumstances, duplexing the active redo logs might allow PowerExchange Express CDC to recover from the failure. To avoid the failure completely, you might need to disable Oracle direct I/O by setting the Oracle FILESYSTEMIO_OPTIONS parameter to none.
If you have an Oracle database that runs on HP-UX, you can run the PowerExchange Listener, PowerExchange Logger, and PowerExchange Express CDC on a Linux machine to capture change data remotely. In this special cross-platform scenario, the Oracle redo logs must be ASM-managed or NFS-mounted. Because CDC processing is remote, performance might be degraded.
Oracle ARCHIVELOG mode and minimal global supplemental logging must be enabled. Also, the registered Oracle source table columns for which you want to capture change data must be associated with an unconditional supplemental log group, also called an ALWAYS supplemental log group. With unconditional supplemental logging, Oracle logs before images of column data to redo logs whenever any column in a row is updated. PowerExchange Express CDC for Oracle requires before images to properly process updates.
The PowerExchange Express CDC for Oracle log reader must have access to the Oracle redo log files. If the Oracle redo log files are not stored in ASM, the operating system user ID under which PowerExchange Express CDC for Oracle log reader runs must have the authority to read the redo logs or copies of the archived redo logs. If the redo logs are stored in ASM, the user ID must have either SYSDBA authority or SYSASM authority with the ASM_ASSYSASM parameter is set to Y in the READER statement in the PowerExchange Express CDC configuration file.
PowerExchange Express CDC for Oracles reads the active and archived redo logs by default. If you want Express CDC to read only the archived redo logs, set the MODE parameter to ARCHIVEONLY in the Express CDC configuration file. If you do not have the authority to read the active or archived redo logs, you can configure Express CDC to read copies of the archived logs that are located on a file system. In this case, set the MODE parameter to ARCHIVECOPY and run the PowerExchange Logger in batch mode.
If a CDC problem occurs, Informatica Global Customer Support might need to request the Oracle archived redo logs from which changes are captured for diagnostic use.
You must use the PowerExchange Client for PowerCenter (PWXPC) to integrate with PowerCenter. The PowerExchange ODBC driver does not support PowerExchange Express CDC for Oracle.
If you use Oracle materialized views, PowerExchange can capture change data from the master tables that underlie those views. PowerExchange supports change capture for any type of materialized view. The view and its underlying table have a one-to-one correspondence and share the same name.
If you issue DTLDESCRIBE tables from the
Database Row Test
dialog box in the PowerExchange Navigator, the results include a row for the materialized view and a row for the underlying table. The
Type
column indicates which row is for the materialized view and which row is for the table.
PowerExchange Express CDC for Oracle uses the standard PowerExchange restart and recovery processing for relational sources. The format of PowerExchange Express CDC for Oracle restart tokens is different from that for any other data source type.
The default restart point for PowerExchange Express CDC for Oracle is one of the following points in the change stream:
For CDC sessions that run in batch extraction mode or continuous extraction mode, the beginning of the oldest PowerExchange Logger log file that is recorded in the CDCT file.
For CDC sessions that run in real-time extraction mode, the beginning of last log sequence that was archived.
If you capture change data only from archived redo logs and do not use the PowerExchange Logger, the Express CDC log reader uses one of the following default start points at initialization:
For non-RAC instances, the low SCN of the last available archive log.
For RAC instances, the highest low SCN of the last log archived across all active nodes.
If you capture change data only from archived redo logs and use the PowerExchange Logger, as recommended, the default restart point after a PowerExchange Logger cold start is the end of the last available archived log, also referred to as current end-of log (EOL), unless you set the RESTART_TOKEN and SEQUENCE_TOKEN parameters in the pwxccl.cfg file. In a RAC environment, the EOL is considered to be the lowest high SCN of the last log archived across all active nodes.
For tables that do not have row movement enabled, you can use the PowerExchange-generated DTL__CAPXROWID column in extraction maps and the OPTIONS ROWID=Y statement in the PowerExchange Express CDC for Oracle configuration file to include Oracle physical rowid values in change records. This feature is useful for processing rows in unkeyed tables during CDC extraction sessions.
PowerExchange Express CDC for Oracle can capture Oracle direct-path operations except for tables that use Oracle Exadata Hybrid Columnar Compression (EHCC). To capture direct-path operations, you must set the SUPPORT_DIRECT_PATH_OPS parameter to Y in the OPTIONS statement of the PowerExchange Express CDC for Oracle configuration file.
PowerExchange Express CDC for Oracle can capture conventional and direct-path DML changes from tables and table partitions and subpartitions that use Oracle Advanced Compression.
PowerExchange Express CDC for Oracle can capture conventional DML changes from tables and table partitions and subpartitions that use Oracle Exadata Hybrid Columnar Compression (EHCC). However, Express CDC does
not
capture Oracle direct-path operations for objects that use EHCC.
PowerExchange Express CDC for Oracle can capture changes from Oracle Data Guard logical and physical standby databases. PowerExchange Express CDC supports any configuration of primary and standby databases that Oracle Data Guard supports, including RAC databases in an ASM environment. The number of nodes on the primary and standby systems do not need to match. For example, the primary system can contain a RAC with multiple member instances, and the standby system can contain a single non-RAC instance. To handle database role transitions that involve a physical standby database, you might need to update some statements in the PowerExchange Express CDC configuration file. For more information, see
Oracle Data Guard Physical Standby Databases as Sources.
If an Oracle RESETLOGS event occurs on a source database, PowerExchange Express CDC can continue change capture processing across the RESETLOGS boundary in the archived redo logs. A RESETLOGS event occurs in situations that require you to open the database with the RESETLOGS option, such as after a flashback database operation, incomplete point-in-time recovery, or point-in-time recovery with a backup control file. A RESETLOGS event can also occur transparently in a Data Guard environment with a physical standby database after a failover or after a switchover that is preceded by an incomplete recovery and followed by an ALTER DATABASE ACTIVATE PHYSICAL STANDBY DATABASE operation. A RESETLOGS operation archives the current online redo logs, resets the log sequence number to 1, creates a new database incarnation, creates a new timestamp and SCN for the online redo logs, and updates all the current data files with the new RESETLOGS SCN.
The PowerExchange Express CDC restart token includes the resetlogs ID to identify the database incarnation to use for restart processing. At initialization, PowerExchange Express CDC uses the resetlogs ID to check whether the database has undergone a RESETLOGS event. If a RESETLOGS event occurred, PowerExchange Express CDC verifies that the restart information and the last change data that was hardened to the PowerExchange Logger log files are valid and have not been orphaned by the event. PowerExchange Express CDC then continues capture processing.
PowerExchange Express CDC for Oracle can capture changes from Oracle index-organized tables (IOTs).
If you use the Oracle Multitenant option, which was introduced in Oracle 12
c
, PowerExchange Express CDC for Oracle can capture change data from a pluggable database (PDB) within an Oracle multitenant container database (CDB). PowerExchange Express CDC can capture data from only a single PDB at a time. For more information, see
Oracle Multitenant Pluggable Databases as Sources.
PowerExchange Express CDC can capture change from an Oracle database in an Amazon Elastic Compute Cloud (EC2) environment. The Amazon EC2 instances must run on a 64-bit Red Hat Linux server. Express CDC does not support EC2 instances on 64-bit Windows servers. The configuration of PowerExchange, the Oracle database, the PowerCenter Integration Service, and Informatica domain is flexible. All of these applications can run on EC2 instances in the cloud, or some of them can run on premise. Any combination of these applications in the cloud and on premise is supported.
To capture change data, PowerExchange Express CDC requires no special configuration tasks. As usual, ensure that Express CDC can access to the Oracle archived redo logs. Also, ensure that the Express CDC user has the same privileges as are required for on-premise CDC processing.
PowerExchange Express CDC for Oracle can capture change data from online and archived redo logs for a cloud-based database instance that is deployed in an Amazon Relational Database Service (RDS) for Oracle environment. PowerExchange reads change data from the redo logs that are located in the ARCHIVELOG_DIR and ONLINELOG_DIR directories. For more information about creating these directories and performing other required configuration tasks, see
Amazon RDS for Oracle Database Instances as Sources.
PowerExchange Express CDC cannot capture change data that was retrieved from
TDE-encrypted
tablespaces in an Amazon RDS Oracle database because the Oracle wallet is not available.
If you perform an EXCHANGE PARTITION operation on an Oracle table, PowerExchange Express CDC does not capture the exchange operation or any rows it might generate. However, Express CDC does capture subsequent DML changes on the table or partition that was the target of the exchange operation, provided that you register it for CDC.