PWX 851 Interfaces for Power Center

272
PowerExchange Interfaces for PowerCenter Informatica ® PowerExchange ® (Version 8.5.1)

Transcript of PWX 851 Interfaces for Power Center

Page 1: PWX 851 Interfaces for Power Center

PowerExchange Interfaces for PowerCenter

Informatica® PowerExchange®

(Version 8.5.1)

PWX_Interfaces_for_PowerCenter.book Page i Wednesday, December 12, 2007 10:19 AM

Page 2: PWX 851 Interfaces for Power Center

Informatica® PowerExchange® Interfaces for PowerCenterCopyright (c) 1998–2007 Informatica Corporation. All rights reserved.

This software and documentation contain proprietary information of Informatica Corporation and are provided under a license agreement containing restrictions on use and disclosure and are also protected by copyright law. Reverse engineering of the software is prohibited. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording or otherwise) without prior consent of Informatica Corporation. This Software is protected by U.S. and/or international Patents and other Patents Pending.

Use, duplication, or disclosure of the Software by the U.S. Government is subject to the restrictions set forth in the applicable software license agreement and as provided in DFARS 227.7202-1(a) and 227.7702-3(a) (1995), DFARS 252.227-7013(c)(1)(ii) (OCT 1988), FAR 12.212(a) (1995), FAR 52.227-19, or FAR 52.227-14 (ALT III), as applicable.

The information in this product or documentation is subject to change without notice. If you find any problems in this product or documentation, please report them to us in writing.

Informatica, PowerCenter, PowerCenterRT, PowerCenter Connect, PowerCenter Data Analyzer, PowerExchange, PowerMart, Metadata Manager, Informatica Data Quality, Informatica Data Explorer, Informatica Complex Data Exchange and Informatica On Demand Data Replicator are trademarks or registered trademarks of Informatica Corporation in the United States and in jurisdictions throughout the world. All other company and product names may be trade names or trademarks of their respective owners.

DISCLAIMER: Informatica Corporation provides this documentation “as is” without warranty of any kind, either express or implied, including, but not limited to, the implied warranties of non-infringement, merchantability, or use for a particular purpose. Informatica Corporation does not warrant that this software or documentation is error free. The information provided in this software or documentation may include technical inaccuracies or typographical errors. The information in this software and documentation is subject to change at any time without notice.

Part Number: PWX-IPC-851-0001

PWX_Interfaces_for_PowerCenter.book Page ii Wednesday, December 12, 2007 10:19 AM

Page 3: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page iii Wednesday, December 12, 2007 10:19 AM

Table of Contents

List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix

List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi

Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi

Informatica Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii

Informatica Customer Portal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii

Informatica Web Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii

Informatica Knowledge Base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii

Informatica Global Customer Support . . . . . . . . . . . . . . . . . . . . . . . . . . xii

Part 1: Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

Chapter 1: Understanding PowerExchange Interfaces for PowerCenter3

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

PowerExchange Client for PowerCenter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

Batch Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

CDC Batch and Continuous Extraction Modes . . . . . . . . . . . . . . . . . . . . 7

CDC Real-time Extraction Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

PowerExchange ODBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Part 2: PowerExchange Client for PowerCenter . . . . . . . . . . . . . . . . . 13

Chapter 2: Installing PWXPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Before You Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Installing PowerExchange Client for PowerCenter (PWXPC) . . . . . . . . . . . . 17

Installation Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Upgrading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Modifying the PowerExchange Configuration Files . . . . . . . . . . . . . . . . . . . . 18

Adding PowerExchange Nodes on the PowerCenter Client Machine . . . . 18

Adding PowerExchange Nodes on the Integration Service Machine . . . . . 18

Adding PowerExchange Nodes in the dbmover.cfg File . . . . . . . . . . . . . . 18

Working with PowerExchange and PowerExchange Client for PowerCenter . . 20

Table of Contents iii

Page 4: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page iv Wednesday, December 12, 2007 10:19 AM

Chapter 3: Working with Mappings . . . . . . . . . . . . . . . . . . . . . . . . . . .21

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Source and Target Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Working with Relational Source and Target Definitions . . . . . . . . . . . . . . . . 25

Working with DB2 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Working with Microsoft SQL Server Definitions . . . . . . . . . . . . . . . . . . 29

Working with Oracle Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

Working with Sybase Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

Editing Relational Source and Target Definitions . . . . . . . . . . . . . . . . . . 41

Working with Non-Relational Source and Target Definitions . . . . . . . . . . . . 43

Importing Non-Relational Source Definitions . . . . . . . . . . . . . . . . . . . . 44

Importing Non-Relational Target Definitions . . . . . . . . . . . . . . . . . . . . . 48

Viewing Non-Relational Source and Target Definition Details . . . . . . . . 51

Editing Non-Relational Source and Target Definitions . . . . . . . . . . . . . . 54

Working with Extraction Map Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . 57

Viewing Extraction Map Definition Details . . . . . . . . . . . . . . . . . . . . . . 60

Editing a Extraction Map Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

Previewing PowerExchange Data in Designer . . . . . . . . . . . . . . . . . . . . . . . . 63

Previewing PowerExchange Relational Data . . . . . . . . . . . . . . . . . . . . . . 63

Previewing PowerExchange Non-Relational Data . . . . . . . . . . . . . . . . . . 65

Previewing PowerExchange Changed Data . . . . . . . . . . . . . . . . . . . . . . . 67

PowerExchange Group Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

Using Group Source with Non-Relational Sources . . . . . . . . . . . . . . . . . 71

Using Group Source with CDC Sources . . . . . . . . . . . . . . . . . . . . . . . . . 72

Working with Source Qualifiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

Transformation Datatypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

Creating Source Qualifiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

Editing Source Qualifier Transformations . . . . . . . . . . . . . . . . . . . . . . . 75

Using Lookup Transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

Usage Considerations for PowerExchange Sources and Targets . . . . . . . . . 76

Configuring Lookups for IMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

Configuring Lookups for CDC Data . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

Chapter 4: Configuring Connections . . . . . . . . . . . . . . . . . . . . . . . . . 79

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

Connection Types for Extracting Source Data . . . . . . . . . . . . . . . . . . . . 80

Connection Types for Loading Target Data . . . . . . . . . . . . . . . . . . . . . . 81

iv Table of Contents

Page 5: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page v Wednesday, December 12, 2007 10:19 AM

Configuring Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

DB2 Batch Mode Relational Database Connections . . . . . . . . . . . . . . . . . . . 86

DB2 CDC Mode Application Connections . . . . . . . . . . . . . . . . . . . . . . . . . 89

NRDB Batch Mode Application Connections . . . . . . . . . . . . . . . . . . . . . . . 92

NRDB CDC Mode Application Connections . . . . . . . . . . . . . . . . . . . . . . . . 93

NRDB Lookup Relational Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

MSSQL Batch Mode Relational Connections . . . . . . . . . . . . . . . . . . . . . . . . 97

MSSQL CDC Mode Application Connections . . . . . . . . . . . . . . . . . . . . . . . 99

Oracle Batch Mode Relational Connections . . . . . . . . . . . . . . . . . . . . . . . . 102

Oracle CDC Mode Application Connections . . . . . . . . . . . . . . . . . . . . . . . 104

Sybase Batch Mode Relational Connections . . . . . . . . . . . . . . . . . . . . . . . . 107

Configuring Connection Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

Common Connection Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

Batch Application and Relational Connection Attributes . . . . . . . . . . . 110

CDC-Specific Connection Attributes . . . . . . . . . . . . . . . . . . . . . . . . . 112

Understanding Commit Processing with PWXPC . . . . . . . . . . . . . . . . . . . . 123

Chapter 5: Working with Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . 127

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128

Pipeline Partitioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128

Real-time Session Rules and Guidelines . . . . . . . . . . . . . . . . . . . . . . . . 128

Extracting Data in Batch Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

Extracting Data from Multiple Files . . . . . . . . . . . . . . . . . . . . . . . . . . 129

Constraint-Based Loading for Relational Targets . . . . . . . . . . . . . . . . . 129

Session Properties for Non-Relational Batch Mode Sessions . . . . . . . . . 129

Session Properties for Relational Batch Mode Sessions . . . . . . . . . . . . . 132

Extracting CDC Data in Change and Real-time Modes . . . . . . . . . . . . . . . . 135

PowerExchange Extraction Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

Extracting CDC Data from Multiple Sources in a Session . . . . . . . . . . . 136

Constraint-Based Loading for Relational Targets . . . . . . . . . . . . . . . . . 136

Session Properties for Change and Real-Time Mode Sessions . . . . . . . . 137

Loading Data to PowerExchange Targets . . . . . . . . . . . . . . . . . . . . . . . . . . 142

Loading Data to Relational Targets . . . . . . . . . . . . . . . . . . . . . . . . . . . 142

Loading Data to Non-Relational Targets . . . . . . . . . . . . . . . . . . . . . . . 144

Chapter 6: Restart and Recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

Table of Contents v

Page 6: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page vi Wednesday, December 12, 2007 10:19 AM

Understanding PWXPC Restart and Recovery . . . . . . . . . . . . . . . . . . . . . . 151

Session Recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

Recovery Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

Recovery State Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

Recovery State File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

The Restart Token File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

Determining the Restart Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155

Initializing and Running CDC Sessions . . . . . . . . . . . . . . . . . . . . . . . . 158

Ending CDC Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

Creating Recovery Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

Recovery Table Creation with PowerExchange Targets . . . . . . . . . . . . . . 160

Creating the Recovery Tables Manually . . . . . . . . . . . . . . . . . . . . . . . . 161

Configuring the Restart Token File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162

Syntax Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162

Statement Syntax Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162

Restart Token File Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162

Restart Token File Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164

PWXPC Restart and Recovery Operation . . . . . . . . . . . . . . . . . . . . . . . . . . 165

Enabling Session Recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165

Configuring CDC Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166

Application Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167

Using DTLUAPPL with CDC Sessions . . . . . . . . . . . . . . . . . . . . . . . . 167

Starting CDC Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

Stopping CDC Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

Changing CDC Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171

Recovering from CDC Session Failures . . . . . . . . . . . . . . . . . . . . . . . . 173

Managing Session Log and Restart Token File History . . . . . . . . . . . . . 175

Chapter 7: Flexible Key Custom Transformation . . . . . . . . . . . . . . . 177

Target Key Transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178

Configuring the PowerExchange Extraction Map . . . . . . . . . . . . . . . . . 179

Configuring PowerCenter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182

Group Source and Flexible Transformations . . . . . . . . . . . . . . . . . . . . . . . . 187

Part 3: PowerExchange ODBC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

vi Table of Contents

Page 7: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page vii Wednesday, December 12, 2007 10:19 AM

Chapter 8: Installing PowerExchange ODBC . . . . . . . . . . . . . . . . . . 193

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194

Installation Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194

Creating ODBC Data Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195

Creating ODBC Data Sources on the PowerCenter Client Machine . . . 195

Creating ODBC Data Sources on the Integration Service Machine . . . . 195

Chapter 9: Working with Mappings . . . . . . . . . . . . . . . . . . . . . . . . . . 197

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198

Working with Source and Target Definitions for PowerExchange Batch . . . . 199

Importing a Source or Target Definition . . . . . . . . . . . . . . . . . . . . . . . 199

Working with Source Definitions for PowerExchange Change or Real-time . 202

Importing a Change Data Capture Source Definition . . . . . . . . . . . . . . 202

Chapter 10: Configuring Connections . . . . . . . . . . . . . . . . . . . . . . . 205

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206

Working with Connections for PowerExchange ODBC . . . . . . . . . . . . . . . . 207

Connection Types for Extracting Source Data . . . . . . . . . . . . . . . . . . . 207

Connection Types for Loading Target Data . . . . . . . . . . . . . . . . . . . . . 207

Configuring Attributes for Connections . . . . . . . . . . . . . . . . . . . . . . . 208

Chapter 11: Working with Sessions . . . . . . . . . . . . . . . . . . . . . . . . . 211

Working with WorkflowsOverview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212

Pipeline Partitioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212

Extracting Data from PowerExchange in Batch Mode . . . . . . . . . . . . . . . . . 213

Session Properties for Non-Relational Batch Mode Sessions . . . . . . . . . 213

Session Properties for Relational Batch Mode Sessions . . . . . . . . . . . . . 215

Extracting Data from PowerExchange in Change and Real-time Mode . . . . . 217

Session Properties for Change and Real-time Mode Sessions . . . . . . . . . 217

Loading Data to PowerExchange Targets . . . . . . . . . . . . . . . . . . . . . . . . . . 219

Chapter 12: PowerExchange Restart and Recovery . . . . . . . . . . . . . 221

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222

Restart and Recovery Using PowerExchange ODBC . . . . . . . . . . . . . . . . . . 223

Managing Restart Tokens Using PowerExchange ODBC . . . . . . . . . . . . 223

Table of Contents vii

Page 8: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page viii Wednesday, December 12, 2007 10:19 AM

Part 4: Appendices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225

Appendix A: Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227

Organizing Sources by Map Type in Designer . . . . . . . . . . . . . . . . . . . . . . . 228

Filtering Source Data Using PWXPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230

Using DTLREXE to Submit MVS Batch Jobs . . . . . . . . . . . . . . . . . . . . . . . 233

Creating Sequential and GDG Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . 236

Appendix B: Datatypes and Code Pages . . . . . . . . . . . . . . . . . . . . . 239

Datatype ReferenceOverview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240

PowerExchange and Transformation Datatypes . . . . . . . . . . . . . . . . . . . . . . 241

Relational Datatypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243

Reading and Writing Binary Data in PowerExchange Client for PowerCenter 244

Using Code Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245

Appendix C: Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247

Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251

viii Table of Contents

Page 9: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page ix Wednesday, December 12, 2007 10:19 AM

List of Figures

Figure 1-1. PWXPC Batch Extraction Mode Data Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

Figure 1-2. PWXPC Change Mode Extraction Data Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Figure 1-3. PWXPC Real-time Mode Extraction Data Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Figure 3-1. Import from PowerExchange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Figure 3-2. Import from PowerExchange - Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Figure 3-3. Import from PowerExchange - DB2/390 Source . . . . . . . . . . . . . . . . . . . . . . . . . 26

Figure 3-4. Import from PowerExchange - DB2/400 or DB2/UDB Source . . . . . . . . . . . . . . . 27

Figure 3-5. Import from PowerExchange - DB2390 Select Datamaps List . . . . . . . . . . . . . . . . 29

Figure 3-6. Import from PowerExchange - Microsoft SQL Server Source . . . . . . . . . . . . . . . . 31

Figure 3-7. Import from PowerExchange - MSSQL Select Datamaps List . . . . . . . . . . . . . . . . 33

Figure 3-8. Import from PowerExchange - Oracle Source . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

Figure 3-9. Import from PowerExchange - Oracle Select Datamaps List . . . . . . . . . . . . . . . . . 37

Figure 3-10. Import from PowerExchange - Sybase Source . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

Figure 3-11. Import from PowerExchange - Sybase Select Datamaps List . . . . . . . . . . . . . . . . 41

Figure 3-12. Non-Relational Source Definition with Multiple Records . . . . . . . . . . . . . . . . . . 43

Figure 3-13. Import from PowerExchange - Non-Relational Source . . . . . . . . . . . . . . . . . . . . 45

Figure 3-14. Import from PowerExchange - Single Record Source Data Maps . . . . . . . . . . . . . 47

Figure 3-15. Import from PowerExchange - Multiple Record Source Data Maps . . . . . . . . . . . 48

Figure 3-16. Import from PowerExchange - Non-Relational Target . . . . . . . . . . . . . . . . . . . . 49

Figure 3-17. Import from PowerExchange - Non-Relational Target Select Datamaps List . . . . 51

Figure 3-18. Non-Relational Table - Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

Figure 3-19. Non-Relational Table - Metadata Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Figure 3-20. Import from PowerExchange - CDC Datamaps . . . . . . . . . . . . . . . . . . . . . . . . . 58

Figure 3-21. Import from PowerExchange - CDC Select Datamaps List . . . . . . . . . . . . . . . . . 59

Figure 3-22. Extraction Map Table - Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Figure 3-23. Extraction Map Table - Metadata Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Figure 3-24. Multi-record Non-Relational Source Definition . . . . . . . . . . . . . . . . . . . . . . . . 72

Figure 3-25. Group Source Mapping Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

Figure 4-1. Relational Connection Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

Figure 4-2. Application Connection Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

Figure 4-3. Application Connection Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

Figure 5-1. Session Mapping Tab - Batch VSAM Reader . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

Figure 5-2. Session Mapping Tab - DB2 Readers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

Figure 5-3. Session Properties Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

Figure 5-4. Session Mapping Tab - Extraction Map Source . . . . . . . . . . . . . . . . . . . . . . . . . 138

Figure 5-5. Session Mapping Tab - Relational Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

Figure 5-6. Session Mapping Tab - Relational Targets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

Figure 5-7. Session Mapping Tab - Non-Relational Targets . . . . . . . . . . . . . . . . . . . . . . . . . 145

Figure 6-1. Application Connection - Number of Restart Token Files . . . . . . . . . . . . . . . . . 175

Figure 7-1. Primary key updates from a source relational table . . . . . . . . . . . . . . . . . . . . . . . 178

List of Figures ix

Page 10: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page x Wednesday, December 12, 2007 10:19 AM

Figure 7-2. DB2 Extraction Map Source Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .183

Figure 7-3. DB2 Target Table Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .183

Figure 7-4. DB2 Source to DB2 Target CDC mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . .184

Figure 10-1. ODBC - Connection Object Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .208

Figure A-1. Filter Overrides: Single-Record Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .231

Figure A-2. Filter Overrides: Multi-Record Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .232

Figure A-3. Pre-Session Command - DTLREXE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .234

Figure A-4. Workflow Link Condition - DTLREXE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .235

Figure A-5. Command Task Expression Editor - DTLREXE . . . . . . . . . . . . . . . . . . . . . . . . .235

Figure A-6. Session Mapping Tab - File Create Pre-SQL Command . . . . . . . . . . . . . . . . . . . .237

x List of Figures

Page 11: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page xi Wednesday, December 12, 2007 10:19 AM

List of Tables

Table 1-1. Functional Comparison between PWXPC and PowerExchange ODBC . . . . . . . . . . . 4

Table 1-2. PowerExchange Client for PowerCenter Extract and Load Capabilities . . . . . . . . . . . 5

Table 1-3. Group Source Usage by PowerExchange Database Type . . . . . . . . . . . . . . . . . . . . . . 6

Table 1-4. PowerExchange ODBC Extract and Load Capabilities . . . . . . . . . . . . . . . . . . . . . . 10

Table 2-1. Valid Version Combinations for PowerExchange and PWXPC . . . . . . . . . . . . . . . . 20

Table 3-1. Attributes of Fields in a Non-Relational Source Definition . . . . . . . . . . . . . . . . . . . 52

Table 3-2. Non-Relational Source Definition Metadata Extensions . . . . . . . . . . . . . . . . . . . . . 53

Table 3-3. Attributes of Fields in a Extraction Map Definition . . . . . . . . . . . . . . . . . . . . . . . . 61

Table 3-4. Extraction Map Definition Metadata Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . 62

Table 4-1. Connection Types for Extracting Source Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

Table 4-2. Connection Types for Loading Target Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

Table 4-3. PWX DB2390, DB2400, and DB2UDB Relational Database Connection Attributes 86

Table 4-4. DB2390, DB2400, and DB2UDB CDC Mode Application Connection Attributes . 89

Table 4-5. NRDB Batch Mode Application Connection Attributes . . . . . . . . . . . . . . . . . . . . . 92

Table 4-6. NRDB CDC Mode Application Connection Attributes . . . . . . . . . . . . . . . . . . . . . 93

Table 4-7. NRDB Lookup Relational Connection Attributes . . . . . . . . . . . . . . . . . . . . . . . . . 96

Table 4-8. MSSQL Batch Mode Relational Connection Attributes . . . . . . . . . . . . . . . . . . . . . 97

Table 4-9. MSSQL CDC Mode Application Connection Attributes . . . . . . . . . . . . . . . . . . . . 99

Table 4-10. Oracle Batch Mode Relational Connection Attributes . . . . . . . . . . . . . . . . . . . . 102

Table 4-11. Oracle CDC Mode Application Connection Attributes . . . . . . . . . . . . . . . . . . . . 104

Table 4-12. Sybase Batch Mode Relational Connection Attributes . . . . . . . . . . . . . . . . . . . . 107

Table 4-13. Encryption and Compression Connection Attributes . . . . . . . . . . . . . . . . . . . . . 109

Table 4-14. Pacing Size Connection Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

Table 4-15. Convert Character Data Connection Attribute . . . . . . . . . . . . . . . . . . . . . . . . . . 110

Table 4-16. Write Mode Connection Attribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

Table 4-17. Retrieve PWX Log Entries Connection Attribute . . . . . . . . . . . . . . . . . . . . . . . . 112

Table 4-18. Image Type Connection Attribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

Table 4-19. Event Table Connection Attribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

Table 4-20. CAPI Connection Override Connection Attribute . . . . . . . . . . . . . . . . . . . . . . . 115

Table 4-21. Idle Time Connection Attribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

Table 4-22. Change and Real-time Mode Restart Connection Attributes . . . . . . . . . . . . . . . . 117

Table 4-23. UOW Count Connection Attribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

Table 4-24. Real-Time Flush Latency Connection Attribute . . . . . . . . . . . . . . . . . . . . . . . . . 119

Table 4-25. Commit Threshold Connection Attribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

Table 5-1. Session Properties for Non-Relational Targets . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

Table 6-1. Default Starting Extraction Points for Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

Table 6-2. Recovery Table SQL Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

Table 6-3. CDC Sessions - Recommended Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166

Table 10-1. Connection Types for Extracting Source Data . . . . . . . . . . . . . . . . . . . . . . . . . . 207

Table 10-2. Target Database Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207

List of Tables xi

Page 12: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page xii Wednesday, December 12, 2007 10:19 AM

Table 10-3. ODBC Connection Object Definition Table . . . . . . . . . . . . . . . . . . . . . . . . . . .209

Table 11-1. Partition Types for Partitioning Points for Sources . . . . . . . . . . . . . . . . . . . . . . .212

Table B-1. PowerExchange and Transformation Datatypes . . . . . . . . . . . . . . . . . . . . . . . . . . .241

xii List of Tables

Page 13: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page xi Wednesday, December 12, 2007 10:19 AM

Preface

PowerExchange Interfaces for PowerCenter describes the Informatica interface between PowerExchange and PowerCenter. It is written for developers and administrators who are responsible for creating, running, and administering workflows and sessions that interface with PowerExchange.

This manual assumes that you have knowledge of your operating systems, relational database concepts, and the database engines and non-relational files in your environment. This manual also assumes that you are familiar with the basic operation of PowerExchange and PowerCenter

This manual discusses:

♦ The PowerExchange Client for PowerCenter (PWXPC) interface

♦ The Power Exchange ODBC interface with PowerCenter

xi

Page 14: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page xii Wednesday, December 12, 2007 10:19 AM

Informatica Resources

Informatica Customer Portal

As an Informatica customer, you can access the Informatica Customer Portal site at http://my.informatica.com. The site contains product information, user group information, newsletters, access to the Informatica customer support case management system (ATLAS), the Informatica Knowledge Base, Informatica Documentation Center, and access to the Informatica user community.

Informatica Web Site

You can access the Informatica corporate web site at http://www.informatica.com. The site contains information about Informatica, its background, upcoming events, and sales offices. You will also find product and partner information. The services area of the site includes important information about technical support, training and education, and implementation services.

Informatica Knowledge Base

As an Informatica customer, you can access the Informatica Knowledge Base at http://my.informatica.com. Use the Knowledge Base to search for documented solutions to known technical issues about Informatica products. You can also find answers to frequently asked questions, technical white papers, and technical tips.

Informatica Global Customer Support

There are many ways to access Informatica Global Customer Support. You can contact a Customer Support Center through telephone, email, or the WebSupport Service.

Use the following email addresses to contact Informatica Global Customer Support:

[email protected] for technical inquiries

[email protected] for general customer service requests

WebSupport requires a user name and password. You can request a user name and password at http://my.informatica.com.

xii Preface

Page 15: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page xiii Wednesday, December 12, 2007 10:19 AM

Use the following telephone numbers to contact Informatica Global Customer Support:

North America / South America Europe / Middle East / Africa Asia / Australia

Informatica CorporationHeadquarters100 Cardinal WayRedwood City, California 94063United States

Toll Free +1 877 463 2435

Standard RateUnited States: +1 650 385 5800

Informatica Software Ltd.6 Waltham ParkWaltham Road, White WalthamMaidenhead, BerkshireSL6 3TNUnited Kingdom

Toll Free 00 800 4632 4357

Standard RateBelgium: +32 15 281 702France: +33 1 41 38 92 26Germany: +49 1805 702 702Netherlands: +31 306 022 797United Kingdom: +44 1628 511 445

Informatica Business SolutionsPvt. Ltd.Diamond DistrictTower B, 3rd Floor150 Airport RoadBangalore 560 008India

Toll Free Australia: 1 800 151 830Singapore: 001 800 4632 4357

Standard RateIndia: +91 80 4112 5738

Preface xiii

Page 16: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page xiv Wednesday, December 12, 2007 10:19 AM

xiv Preface

Page 17: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 1 Wednesday, December 12, 2007 10:19 AM

Part 1: Introduction

This part contains the following chapter:

♦ Understanding PowerExchange Interfaces for PowerCenter, 3

1

Page 18: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 2 Wednesday, December 12, 2007 10:19 AM

2 Part 1: Introduction

Page 19: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 3 Wednesday, December 12, 2007 10:19 AM

C h a p t e r 1

Understanding PowerExchange Interfaces for PowerCenter

This chapter includes the following topics:

♦ Overview, 4

♦ PowerExchange Client for PowerCenter, 5

♦ PowerExchange ODBC, 10

3

Page 20: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 4 Wednesday, December 12, 2007 10:19 AM

Overview

You can use the following interfaces to extract and load data through PowerExchange when using PowerCenter:

♦ PowerExchange Client for PowerCenter (PWXPC). Chapters 2 to 6 describe PowerExchange Client for PowerCenter. You can use it to extract and load data through PowerExchange for a variety of data types on a variety of platforms. PowerExchange Client for PowerCenter is fully integrated into PowerCenter.

♦ PowerExchange ODBC. Chapters 8 to 12 describe the PowerExchange ODBC interface. You can use PowerExchange ODBC connections with PowerCenter to extract and load data through PowerExchange for a variety of data types on a variety of platforms.

Note: When connecting to PowerExchange, Informatica recommends using PWXPC instead of PowerExchange ODBC. PWXPC has additional functionality as well as improved performance and superior CDC recovery and restart.

Table 1-1 compares the interface functionality of the PowerExchange Client for PowerCenter and PowerExchange ODBC:

For an overview of PowerExchange, see the PowerExchange Getting Started Guide.

For an overview of PowerCenter, see the PowerCenter Getting Started Guide.

Table 1-1. Functional Comparison between PWXPC and PowerExchange ODBC

PWXPC ODBC Function Description

Yes Yes Extract data in batch and CDC mode.

PowerExchange extracts relational and non-relational data in batch mode and changed data in CDC mode.

Yes No Extract data using Group Source

PowerExchange Group Source processes change data for multiple sources or multiple record types in a VSAM and sequential files in a single pass.

Yes No Save target data and CDC restart information in a single commit.

CDC restart information is stored in the same database as the relational target table. The restart information is updated in the same commit as the target data providing guaranteed restart and recovery for CDC data.

Yes No Use PowerCenter graceful stop for real-time sessions.

PowerCenter stops real-time sessions after all data in the pipeline is written to the targets.

Yes No Use the change indicator to determine the type of change record.

Each changed data record indicates whether it is an insert, update, or delete. When the change indicator is used, an Update Strategy transformation is not required to process inserts, updates, and deletes.

Yes No Create source definitions from PowerExchange extraction maps.

Extraction maps contain the PowerExchange auto-generated columns minimizing modification of the source definition in Designer.

Yes No Modify the file name in the PowerCenter source definition.

PowerCenter source definition can specify the file name and override the file name specified in the PowerExchange data map.

4 Chapter 1: Understanding PowerExchange Interfaces for PowerCenter

Page 21: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 5 Wednesday, December 12, 2007 10:19 AM

PowerExchange Client for PowerCenter

PowerExchange Client for PowerCenter is installed with PowerCenter and integrates PowerExchange and PowerCenter to extract relational, non-relational, and changed data. PWXPC also loads relational and non-relational data in batch mode.

Use the following modes to extract relational and non-relational data:

♦ Batch

♦ Change Data Capture (CDC) Real-time

♦ Change Data Capture (CDC) batch extraction mode from condense files

♦ Change Data Capture (CDC) continuous extraction mode from condense files

Table 1-2 lists the database types that PowerExchange Client for PowerCenter can access to extract data or load data:

PowerExchange group source reads all data from the same physical source in a single pass. PWXPC uses PowerExchange group source to extract changed data from the change stream. PWXPC also uses group source to extract data from VSAM data sets and sequential files containing multiple record types. As a result, PWXPC connections process data faster than PowerExchange ODBC connections and reduce PowerExchange resource consumption on the source or extraction platform. For more information about group source, see “PowerExchange Group Source” on page 71.

Table 1-2. PowerExchange Client for PowerCenter Extract and Load Capabilities

Database TypeBatch Mode Extract/Load

CDC Real Time Extraction Mode

CDC Batch Extraction Mode

CDC Continuous Extraction Mode

Adabas Yes/Yes Yes Yes Yes

Datacom Yes/No Yes No Yes

DB2 for z/OS Yes/Yes Yes Yes Yes

DB2 for i5/OS Yes/Yes Yes Yes Yes

DB2 for Linux, UNIX, and Windows

Yes/Yes Yes Yes No

IDMS Yes/No Yes No Yes

IMS Yes/Yes Yes Yes Yes

MSSQL Yes/Yes Yes Yes No

Oracle Yes/Yes Yes Yes Yes

Sequential files Yes/Yes No Yes No

Sybase Yes/Yes No Yes No

VSAM Yes/Yes* Yes Yes* Yes

* With ESDS and RRDS VSAM datasets, only inserts are allowed. Inserts, updates, and deletes are allowed for KSDS VSAM data sets.

PowerExchange Client for PowerCenter 5

Page 22: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 6 Wednesday, December 12, 2007 10:19 AM

Table 1-3 lists the PowerExchange database types that read sources in a single pass during extraction:

Batch Mode

Use PWX batch application and relational connections to extract and load data for relational databases and non-relational data sets and files through PowerExchange. PWXPC connects to PowerExchange using the PowerExchange Call Level Interface (SCLI).

You can extract all records in multiple record types from VSAM and sequential files with a single pass of the data using PWXPC. In contrast, ODBC connections read a single record type at a time requiring multiple passes of the data.

Table 1-3. Group Source Usage by PowerExchange Database Type

Database TypeBatch Extraction Mode

CDC Real Time Extraction Mode

CDC Batch Extraction Mode

CDC Continuous Extraction Mode

Adabas No Yes Yes No

Datacom No Yes Yes No

DB2 for z/OS No Yes Yes No

DB2 for i5/OS No Yes Yes No

DB2 for Linux, UNIX, and Windows

No Yes No No

IDMS No Yes Yes No

IMS No Yes Yes No

MSSQL No Yes No No

Oracle No Yes Yes Yes

Sequential files Yes No No No

Sybase No No No No

VSAM Yes Yes Yes No

6 Chapter 1: Understanding PowerExchange Interfaces for PowerCenter

Page 23: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 7 Wednesday, December 12, 2007 10:19 AM

The following diagram shows the data flow of source data from PowerExchange through PWXPC and PowerCenter to the target tables:

CDC Batch and Continuous Extraction Modes

PowerExchange Condense captures changes for relational tables and non-relational data sets and files from the change stream and writes the changed data to condense files. The change stream contains the source data changes in time sequence order. As a result, the changes in a single unit of work are not contiguous in the change stream. The UOW Cleanser reconstructs the units of work into complete and consecutive units of work based on transaction end time. PowerExchange Condense writes the reconstructed units of work to condense files after which you can use extract the changed data.

PWXPC extracts changed data from PowerExchange condense files in two different modes:

♦ Batch extraction mode from condense files. Use PWX CDC Change connections to extract changed data from condense files in batch extraction mode. PWXPC uses the PowerExchange CAPX access method when processing data with CDC Change connections. PowerExchange stops the extraction after the data from all condense files is read.

♦ Continuous extraction mode from condense files. Use PWX CDC Real Time connections for Oracle sources to extract changed data from condense files in continuous extraction mode. PWXPC uses the PowerExchange CAPXRT access method when

Figure 1-1. PWXPC Batch Extraction Mode Data Flow

PowerExchange Client for PowerCenter 7

Page 24: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 8 Wednesday, December 12, 2007 10:19 AM

processing data with CDC Real Time connections. PowerExchange runs the extraction until stopped. See the PowerExchange Oracle Adapter Guide for more information.

PWXPC connects to PowerExchange using the PowerExchange Call Level Interface (SCLI). PowerExchange reads the changed data from each condense file once for all sources in the mapping in a single pass.

The following diagram shows the data flow of condensed changed data from PowerExchange through PWXPC and PowerCenter to the target tables:

CDC Real-time Extraction Mode

You can extract changed data for relational tables and non-relational data sets and files directly from the change stream in real-time. The change stream contains the source data changes in time sequence order. As a result, the changes in a single unit of work are not contiguous in the change stream. The UOW Cleanser reconstructs the units of work into complete and consecutive units of work based on transaction end time. The UOW Cleanser is incorporated into UDB and SQL Server CDC but is a separate task for all other PowerExchange CDC sources.

Use PWX CDC Real Time application connections to extract changed data for relational tables or non-relational data sets and files directly from the change stream. PWXPC connects to PowerExchange using the PowerExchange Call Level Interface (SCLI) and specifying the PowerExchange CAPXRT access method. PowerExchange reads the changed data from the

Figure 1-2. PWXPC Change Mode Extraction Data Flow

8 Chapter 1: Understanding PowerExchange Interfaces for PowerCenter

Page 25: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 9 Wednesday, December 12, 2007 10:19 AM

change stream for all sources in the mapping in a single pass. PWXPC real-time sessions run for a specified period or continuously until stopped.

The following diagram shows the data flow of changed data from PowerExchange through PWXPC and PowerCenter to the target tables:

Figure 1-3. PWXPC Real-time Mode Extraction Data Flow

PowerExchange Client for PowerCenter 9

Page 26: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 10 Wednesday, December 12, 2007 10:19 AM

PowerExchange ODBC

PowerExchange provides a thin ODBC driver that you can use with PowerCenter. The Integration Service uses PowerExchange ODBC to connect to PowerExchange either locally or remotely. Using PowerExchange ODBC, you can extract and load relational and non-relational data. You can also extract changed data.

Use the following modes to extract relational and non-relational data:

♦ Batch. PowerExchange ODBC extracts and loads data from a relational table or non-relational file through PowerExchange. You can read multiple record VSAM data sets and sequential files using the ODBC interface with multiple passes of the data to read all record types.

♦ Change Data Capture (CDC) batch extraction mode from condense files. PowerExchange ODBC extracts changed data from condense files through PowerExchange reading all of the changes captured in condense files since the last extraction session. PowerExchange ODBC reads the changed data once for each source in the mapping resulting in multiple passes of the condense files. The extraction session ends when all captured changes are read. PowerExchange maintains restart information in the CDEP file on the source machine. PowerExchange ODBC has limited restart capability.

♦ Change Data Capture (CDC) Real-time. PowerExchange ODBC extracts changed data in real time from the change stream using one pass of the data for each source in the mapping. You can run real-time extractions for a specified time period or continuously until stopped. PowerExchange maintains restart information in the CDEP file on the source machine. PowerExchange ODBC has limited restart capability.

Table 1-4 shows the PowerExchange ODBC extract and load capabilities:

Table 1-4. PowerExchange ODBC Extract and Load Capabilities

Database TypeBatch Mode Extract

Batch Mode LoadCDC Batch Extraction Mode

CDC Real-time Extraction Mode

Adabas Yes Yes Yes Yes

Datacom Yes No Yes Yes

DB2 for z/OS Yes Yes Yes Yes

DB2 for i5/OS Yes Yes Yes Yes

DB2 for Linux, UNIX, and Windows

Yes Yes No Yes

IDMS Yes No Yes Yes

IMS Yes Yes Yes Yes

MSSQL No Yes No Yes

Oracle No Yes Yes Yes

Sequential/flat files Yes Yes No No

10 Chapter 1: Understanding PowerExchange Interfaces for PowerCenter

Page 27: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 11 Wednesday, December 12, 2007 10:19 AM

VSAM Yes Yes* Yes Yes

* With ESDS and RRDS VSAM datasets, only inserts are allowed. Inserts, updates, and deletes are allowed for KSDS VSAM data sets.

Table 1-4. PowerExchange ODBC Extract and Load Capabilities

Database TypeBatch Mode Extract

Batch Mode LoadCDC Batch Extraction Mode

CDC Real-time Extraction Mode

PowerExchange ODBC 11

Page 28: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 12 Wednesday, December 12, 2007 10:19 AM

12 Chapter 1: Understanding PowerExchange Interfaces for PowerCenter

Page 29: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 13 Wednesday, December 12, 2007 10:19 AM

Part 2: PowerExchange Client for PowerCenter

This part contains the following chapters:

♦ Installing PWXPC, 15

♦ Working with Mappings, 21

♦ Configuring Connections, 79

♦ Working with Sessions, 127

♦ Restart and Recovery, 149

♦ Flexible Key Custom Transformation, 177

13

Page 30: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 14 Wednesday, December 12, 2007 10:19 AM

14 Part 2: PowerExchange Client for PowerCenter

Page 31: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 15 Wednesday, December 12, 2007 10:19 AM

C h a p t e r 2

Installing PWXPC

This chapter includes the following topics:

♦ Overview, 16

♦ Installing PowerExchange Client for PowerCenter (PWXPC), 17

♦ Modifying the PowerExchange Configuration Files, 18

♦ Working with PowerExchange and PowerExchange Client for PowerCenter, 20

15

Page 32: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 16 Wednesday, December 12, 2007 10:19 AM

Overview

This chapter describes how to install and configure PowerExchange Client for PowerCenter (PWXPC).

Before You Begin

PowerExchange Client for PowerCenter (PWXPC) is a native PowerCenter plug-in that is installed with PowerCenter.

To use PWXPC, you must install the following products:

♦ PowerCenter 8.5.1. This includes the PWXPC plug-in. For more information about installing PowerCenter, see the PowerCenter Installation Guide.

♦ PowerExchange 8.5.1. Install PowerExchange on the PowerCenter Client and Integration Service machines. For more information about installing PowerExchange see the PowerExchange Installation Guide.

If you install the PowerCenter Integration Service on a 32-bit machine, install the 32-bit version of PowerExchange on the same machine. If you install the Integration Service on a 64-bit machine, install the 64-bit version of PowerExchange on the same machine. PowerExchange Navigator is a 32-bit application. You can use a 32-bit PowerCenter Client and PowerExchange Navigator to communicate with a 64-bit version of either product.

Note: If the appropriate version of PowerExchange is not installed and available on the PowerCenter Client platform, the Import from PowerExchange dialog box will not function.

16 Chapter 2: Installing PWXPC

Page 33: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 17 Wednesday, December 12, 2007 10:19 AM

Installing PowerExchange Client for PowerCenter (PWXPC)

To use PWXPC, PowerExchange must be installed on the node where the PowerCenter Integration Service executes as well as on PowerCenter Client platforms.

Installation Steps

The PowerExchange Client for PowerCenter (PWXPC) is installed when you install PowerCenter on the client and Integration Service machines.

You must still configure PowerExchange configuration files on the Integration Service node. To configure PowerExchange Client for PowerCenter for use on the PowerCenter Integration Service and Client, you must add NODE statements in the PowerExchange dbmover.cfg file on the PowerCenter Client and Integration Service machines for those PowerExchange Listeners to which you wish to connect. See “Modifying the PowerExchange Configuration Files” on page 18.

Read the Release Notes and PowerExchange Migration Guide for any changes to installation or connectivity.

Upgrading

When upgrading from a previous release of PowerCenter, you must perform a repository upgrade. This process registers the PWXPC plug-in. No repository upgrade is necessary if upgrading from 8.5 to 8.5.1.

When upgrading from PowerCenter 8.1.1 SP2 (or any higher 8.1.1 Service Pack) and using enhanced restart for CDC sessions, do the following:

Upgrading for PWXPC enhanced restart users:

1. Prior to migrating to PowerCenter 8.5.x, cleanly shutdown all CDC sessions and run recovery on all CDC sessions. PWXPC creates a backup restart token file with a timestamp appended. Save this file.

2. As a precaution, backup the relational tables which are targets in the CDC sessions. Also backup the PowerCenter recovery tables.

3. After completing the migration to PowerCenter 8.5.x, copy the backup restart token files PWXPC created to the appropriate restart token file for each CDC session. This ensures that the restart token files contain the restart points from the point of interruption on the previous release.

4. Cold start the session so PWXPC uses only the newly populated restart token file to restart the CDC session.

Installing PowerExchange Client for PowerCenter (PWXPC) 17

Page 34: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 18 Wednesday, December 12, 2007 10:19 AM

Modifying the PowerExchange Configuration Files

You must define nodes for the PowerExchange Listeners in the PowerExchange configuration file (dbmover.cfg) on the Integration Service and Client machines. The NODE statements specify the communication information that PowerExchange uses to communicate with Listeners that access the source or target databases or files.

Note: You can also use PowerExchange local mode if the data resides on the same machine as the Integration Service. In local mode, a PowerExchange Listener is not required. If local mode is used, there is no need to update to the PowerExchange dbmover.cfg file. Specify “local” in the Location attribute in PWXPC connections.

Adding PowerExchange Nodes on the PowerCenter Client Machine

PWXPC connects to a PowerExchange Listener to import source and target definitions. PWXPC retrieves the metadata from the machine indicated in the NODE statement, or locally if using local mode.

Update the dbmover.cfg file on the PowerCenter Client machine to provide the appropriate NODE statements for the PowerExchange Listeners to which you need to connect. See “Configuration File Parameters” in the PowerExchange Reference Manual for information about how to specify the NODE statement in the dbmover.cfg file.

The nodes you add to the dbmover.cfg file are specified in the Location field in “Import from PowerExchange” dialog box.

Adding PowerExchange Nodes on the Integration Service Machine

PWXPC connects to the appropriate PowerExchange Listener to extract data from a source or load data to a target.

Update the dbmover.cfg file on the Integration Service machine to provide the appropriate NODE= statements for the PowerExchange Listeners to which you need to connect. For information about how to specify the NODE statement in dbmover.cfg, see the “Configuration File Parameters” chapter in PowerExchange Reference Manual.

The nodes you add to the dbmover.cfg file on the Integration Service machine are specified in the Location value of the PWXPC connections.

Adding PowerExchange Nodes in the dbmover.cfg File

Use the following procedure to add PowerExchange nodes in the dbmover.cfg file.

To add PowerExchange nodes in the dbmover.cfg file:

1. Locate the dbmover.cfg file in the PowerExchange root directory.

2. Open the file with a text editor.

18 Chapter 2: Installing PWXPC

Page 35: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 19 Wednesday, December 12, 2007 10:19 AM

3. Create a node for each PowerExchange Listener you want to register using the following guidelines:

NODE=(<node name>,TCPIP,<hostname>,<port_number>)

where <node name> is a logical name used to reference the PowerExchange Listener and <hostname> and <port_number> are the host name (or IP address) and port number of the PowerExchange Listener.

4. Save your changes.

The following example shows several nodes in a dbmover.cfg file:

/********************************************************************//* PowerExchange Configuration File/********************************************************************/NODE=(AS400_DB2,TCPIP,AS400_1,2480)NODE=(MVS1_VSAM,TCPIP,MVS1,5539)NODE=(MVS2_DB2,TCPIP,10.3.4.5,5538)

For more information, see “Configuration File Parameters” in the PowerExchange Reference Manual.

Modifying the PowerExchange Configurat ion Files 19

Page 36: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 20 Wednesday, December 12, 2007 10:19 AM

Working with PowerExchange and PowerExchange Client for PowerCenter

You can use different versions of PowerExchange with PWXPC provided the PowerExchange version and release are equal to or higher than that of PowerCenter. In this environment, exploitation of new functionality is limited but existing functionality continues to operate.

Table 2-1 indicates the combinations of PowerCenter and PWXPC that you can use with PowerExchange for migration purposes:

Table 2-1. Valid Version Combinations for PowerExchange and PWXPC

PowerCenter / PowerExchange Client for PowerCenter

7.1.0 7.1.1 7.1.2 7.1.3 7.1.4 7.1.5 8.0.0 8.1.0 8.1.1 8.5.0 8.5.1

Pow

erE

xcha

nge

5.2.0 No Yes1 No No No No No No No No No

5.2.1 No Yes No No No No No No No No No

5.2.2 No Yes Yes2 Yes3 Yes3 Yes3 No No No No No

8.0.0 No No No Yes4 Yes4 Yes4 Yes No No No No

8.1.0 No No No Yes4 Yes4 Yes4 Yes Yes No No No

8.1.1 No No No Yes4 Yes4 Yes4 Yes Yes Yes No No

8.5.0 No No No Yes4 Yes4 Yes4 Yes Yes Yes Yes No

8.5.1 No No No Yes4 Yes4 Yes4 Yes Yes Yes Yes Yes

1. Support for PWXPC V7.1.1 was introduced with PowerExchange V5.2.0 Patch 022. Support for PWXPC V7.1.2 was introduced with PowerExchange V5.2.2 Patch 013. Support for PWXPC V7.1.3 was introduced with PowerExchange V5.2.2 Patch 02 is the minimum level required for V71.4 and V7.1.5. 4. See “Using Versions of PowerCenter Earlier than v8.x with PowerExchange v8.x” in PowerExchange Migration Guide.

20 Chapter 2: Installing PWXPC

Page 37: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 21 Wednesday, December 12, 2007 10:19 AM

C h a p t e r 3

Working with Mappings

This chapter includes the following topics:

♦ Overview, 22

♦ Source and Target Definitions, 23

♦ Working with Relational Source and Target Definitions, 25

♦ Working with Non-Relational Source and Target Definitions, 43

♦ Working with Extraction Map Definitions, 57

♦ Previewing PowerExchange Data in Designer, 63

♦ PowerExchange Group Source, 71

♦ Working with Source Qualifiers, 75

♦ Using Lookup Transformations, 76

21

Page 38: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 22 Wednesday, December 12, 2007 10:19 AM

Overview

A mapping is a set of source and target definitions linked by transformation objects that define the rules for data transformation. Mappings represent the data flow between sources and targets.

Source and target definitions represent metadata for sources and targets. When you create a source definition, its structure differs depending on the type of source it represents. Non-relational sources require a multi-group source definition. Relational sources use a single-group source definition. The source qualifier for a source definition also differs in structure depending on type of source definition.

After you create a source or target definition, you can include it in a mapping to extract data from the source or load data to the target. You can extract source data in batch, change, or real-time mode. For a list of sources and targets that PowerExchange Client for PowerCenter supports, see Table 1-2 on page 5. This table also lists whether the Integration Service can read the source data in batch, change, or real-time mode.

With CDC mappings, it is generally necessary to have multiple mappings: a batch mapping to materialize the target tables from the source tables in preparation for CDC and the CDC mapping itself which then uses extraction map sources for the source tables. To minimize the effort in creating these mappings, create any business rules applicable to both the batch and CDC sessions in Mapplets. For more information about Mapplets, see the PowerCenter Designer Guide.

22 Chapter 3: Working with Mappings

Page 39: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 23 Wednesday, December 12, 2007 10:19 AM

Source and Target Definitions

Both relational and non-relational sources and targets can be imported using the PowerCenter Designer.

This displays the Import from PowerExchange dialog box. The process and the dialog box displayed is the same for targets.

Figure 3-1. Import from PowerExchange

Source and Target Definitions 23

Page 40: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 24 Wednesday, December 12, 2007 10:19 AM

Figure 3-2 shows the dialog box used to import all PowerExchange sources and targets, including relational metadata, PowerExchange data maps, and PowerExchange capture extraction maps:

Additional input fields appear depending upon the “Source Type” chosen. You create the source and target definitions differently depending on the database type.

After you create a source or target definition, you can edit it.

Note: The Owner name is included in the source definitions for relational metadata and in the source and target definitions for PowerExchange data maps imported using this dialog. This information is used, unless overridden, when the source or target is accessed from the Integration Service node. This eliminates the need to provide the “Owner Name” attribute in the Session Properties for all source types and “Table Name Prefix” attribute in the Session Properties for non-relational PowerExchange targets.

Figure 3-2. Import from PowerExchange - Source

24 Chapter 3: Working with Mappings

Page 41: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 25 Wednesday, December 12, 2007 10:19 AM

Working with Relational Source and Target Definitions

With PowerExchange Client for PowerCenter, you can create source definitions to read from, and target definitions to write to, the following relational databases:

♦ DB2 UDB for z/OS (DB2/390)

♦ DB2 UDB for iSeries (DB2/400)

♦ DB2 for Linux, UNIX, and Windows (DB2/UDB)

♦ Microsoft SQL Server

♦ Oracle

♦ Sybase

Working with DB2 Definitions

You can create a DB2 source definition in the following ways:

♦ Import table definitions from the DB2 catalog using PowerExchange.

♦ Import DB2 or DB2 unload (DB2UNLD) data map definitions from PowerExchange. For more information, see “Importing Non-Relational Source Definitions” on page 44.

♦ Import extraction map definitions for PowerExchange. For more information, see “Working with Extraction Map Definitions” on page 57.

♦ Manually create a DB2 definition.

You can create a DB2 target definition in the following ways:

♦ Import table definitions from the DB2 catalog using PowerExchange.

♦ Manually create a DB2 definition.

♦ Create a DB2 target definition from a DB2 source definition. In the Target Designer, drag a DB2 source definition to the workspace.

See the PowerCenter Designer Guide for more information about using PowerCenter to create source and target definitions.

Tip: If your repository already contains DB2 definitions, you can use them to extract data from or load data to a DB2 table. However, the metadata definition must match the table structure of the DB2 table.

Importing a DB2 Relational Source or Target Definition

You can connect to a DB2 database through a PowerExchange Listener, or locally without a Listener, to import DB2 metadata. When you connect to the database, the Designer displays database schemas and tables. Before you connect to the database, you can filter the metadata the Designer displays by schema and/or table name.

Select a table to create the source or target definition. When you import a DB2 (390, 400, or UDB) source or target definition through a PowerExchange Listener (or locally), the Designer imports the primary keys.

Working with Relational Source and Target Definitions 25

Page 42: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 26 Wednesday, December 12, 2007 10:19 AM

DB2 tables that are mapped in PowerExchange as either DB2 data maps or DB2UNLD (DB2 database unload data set) data maps (DB2/390 only) are imported in the same manner as non-relational data map sources. For more information on how to import these sources, see “Importing Non-Relational Source Definitions” on page 44.

Use the following procedure to import DB2/390, DB2/400, and DB2/UDB source or target definitions.

To import a DB2/390, DB2/400 or DB2/UDB source or target definition:

1. To import a DB2 source definition, select Sources > Import from PowerExchange and select a source type of DB2390, DB2400, or DB2UDB.

To import a DB2 target definition, select Targets > Import from PowerExchange and select a source type of DB2390, DB2400, or DB2UDB.

The dialog box for a DB2/390 source definition import looks as follows:

The target dialog box looks similar but does not contain the Multi-Record Datamaps and CDC Datamaps options.

Figure 3-3. Import from PowerExchange - DB2/390 Source

26 Chapter 3: Working with Mappings

Page 43: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 27 Wednesday, December 12, 2007 10:19 AM

The dialog box for a DB2/400 or a DB2/UDB source looks as follows:

The target dialog box looks similar but does not contain the Multi-Record Datamaps and CDC Datamaps options.

2. Enter the following connection information:

Figure 3-4. Import from PowerExchange - DB2/400 or DB2/UDB Source

AttributeRequired/Optional

Description

Location Required Name of the PowerExchange Listener (Node name from PowerExchange dbmover.cfg) on the system on which the database resides.

User Name Required User name for the database you want to connect to.

Password Required Password associated with the User name.

Multi-Record Datamaps N/a Select to list multi-record data maps. SEQ or VSAM sources only.

Source Type Required DB2390, DB2400, or DB2UDB.

CDC Datamaps N/a Select to list CDC extraction maps - source only.

Subsystem Id Required Name of the subsystem for connection. DB2390 only.

Working with Relational Source and Target Definitions 27

Page 44: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 28 Wednesday, December 12, 2007 10:19 AM

3. Optionally, enter a filter to view particular schemas and tables from the database.

Enter a schema and/or table name. Or, enter a filter condition to display schemas and/or tables that meet the filter condition. Use one of the following wildcard characters in the filter condition:

♦ * (asterisk). Represents one or more characters.

♦ ? (question mark). Represents one character.

Use the following syntax when entering a wildcard character:

♦ Enter the filter condition as a prefix. For example, enter A* to display schemas and/or tables that begin with an A.

♦ Enter the filter condition as a suffix. For example, enter *A to display schemas and/or tables that end with an A.

♦ Enter the filter condition as a substring. For example, enter *cust* to display schemas and/or tables that contain “cust.”

Note: Schema and table names are not case sensitive.

4. Click Connect.

The available tables, based on the values specified in the dialog box, will appear in the Selected Datamaps list.

If no tables are found, “No Data Found” will appear in the Selected Datamaps list.

Database Name Required Name of the database for connection. DB2400 and DB2UDB only.

Schema Optional Enter a schema name to filter the resulting data maps.

Map name Optional Enter a table name to filter the resulting data maps.

AttributeRequired/Optional

Description

28 Chapter 3: Working with Mappings

Page 45: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 29 Wednesday, December 12, 2007 10:19 AM

The Designer displays metadata to import.

5. Select the table you want to import.

♦ Hold down the Shift key to select blocks of tables.

♦ Hold down the Ctrl key to make non-contiguous selections within a schema.

♦ Use the Select all button to select all tables.

♦ Use the Select none button to clear all highlighted selections.

6. Click OK.

The source or target definition appears in the workspace.

Working with Microsoft SQL Server Definitions

You can create a Microsoft SQL Server source definition in the following ways:

♦ Import table definitions from Microsoft SQL Server using PowerExchange.

♦ Import extraction map definitions from PowerExchange. For more information, see “Working with Extraction Map Definitions” on page 57.

Figure 3-5. Import from PowerExchange - DB2390 Select Datamaps List

Schema

Table

Working with Relational Source and Target Definitions 29

Page 46: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 30 Wednesday, December 12, 2007 10:19 AM

♦ Import table definitions from Microsoft SQL Server using the PowerCenter ODBC interface.

♦ Manually create a Microsoft SQL definition.

You can create a Microsoft SQL Server target definition in the following ways:

♦ Import table definitions from Microsoft SQL Server using PowerExchange.

♦ Import table definitions from Microsoft SQL Server using the PowerCenter ODBC interface.

♦ Manually create a Microsoft SQL definition.

See the PowerCenter Designer Guide for more information about using PowerCenter to create source and target definitions.

Tip: If your repository contains Microsoft SQL Server definitions, you can use them to extract data from or load data to a Microsoft SQL Server table. However, the metadata definition must match the table structure of the Microsoft SQL Server table.

Importing a Microsoft SQL Server Relational Source or Target Definition

You can connect to a Microsoft SQL Server database through a PowerExchange Listener, or locally without a Listener, to import SQL Server metadata. When you connect to the database, the Designer displays database schemas and tables. Before you connect to the database, you can filter the metadata the Designer displays by schema and/or table name.

Select a table to create the source or target definition. When you import a Microsoft SQL Server definition through a PowerExchange Listener or locally, the Designer imports the primary keys.

Use the following procedure to import Microsoft SQL Server source or target definitions.

To import a Microsoft SQL Server source or target definition:

1. To import a Microsoft SQL Server source definition, select Sources > Import from PowerExchange and select a source type of MSSQL.

To import a Microsoft SQL Server target definition, select Targets > Import from PowerExchange and select a source type of MSSQL.

30 Chapter 3: Working with Mappings

Page 47: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 31 Wednesday, December 12, 2007 10:19 AM

The dialog box for the Microsoft SQL Server source definition input looks as follows:

The target dialog box looks similar but does not contain the Multi-Record Datamaps and CDC Datamaps options.

2. Enter the following connection information:

Figure 3-6. Import from PowerExchange - Microsoft SQL Server Source

AttributeRequired/Optional

Description

Location Required Name of the PowerExchange Listener (Node name from PowerExchange dbmover.cfg) on the system on which the database resides.

User Name Required User ID for connection to the database.

Password Required Password associated with the User ID.

Multi-Record Datamaps N/a Select to list multi-record data maps. SEQ or VSAM sources only.

Source Type Required MSSQL.

CDC Datamaps N/a Select to list CDC extraction maps - source only

Server Name Required SQL Server instance name.

Working with Relational Source and Target Definitions 31

Page 48: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 32 Wednesday, December 12, 2007 10:19 AM

3. Optionally, enter a filter to view particular schemas and tables from the database.

Enter a schema and/or table name. Or, enter a filter condition to display schemas and/or tables that meet the filter condition. Use one of the following wildcard characters in the filter condition:

♦ * (asterisk). Represents one or more characters.

♦ ? (question mark). Represents one character.

Use the following syntax when entering a wildcard character:

♦ Enter the filter condition as a prefix. For example, enter A* to display schemas and/or tables that begin with an A.

♦ Enter the filter condition as a suffix. For example, enter *A to display schemas and/or tables that end with an A.

♦ Enter the filter condition as a substring. For example, enter *cust* to display schemas and/or tables that contain “cust.”

Note: Schema and table names are not case sensitive.

4. Click Connect.

The available tables, based on the values specified in the dialog box, will appear in the Selected Datamaps list.

If no tables are found, “No Data Found” will appear in the Selected Datamaps list.

Database Name Required Database name in the SQL instance specified.

Schema Optional Enter a schema name to filter the resulting data maps.

Map name Optional Enter a table name to filter the resulting data maps.

AttributeRequired/Optional

Description

32 Chapter 3: Working with Mappings

Page 49: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 33 Wednesday, December 12, 2007 10:19 AM

The Designer displays metadata to import.

5. Select the table you want to import.

♦ Hold down the Shift key to select blocks of tables.

♦ Hold down the Ctrl key to make non-contiguous selections within a schema.

♦ Use the Select all button to select all tables.

♦ Use the Select none button to clear all highlighted selections.

6. Click OK.

The source or target definition appears in the workspace.

Working with Oracle Definitions

You can create an Oracle source definition in the following ways:

♦ Import table definitions from Oracle using PowerExchange.

♦ Import extraction map definitions from PowerExchange. For more information, see “Working with Extraction Map Definitions” on page 57.

Figure 3-7. Import from PowerExchange - MSSQL Select Datamaps List

Schema

Table

Working with Relational Source and Target Definitions 33

Page 50: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 34 Wednesday, December 12, 2007 10:19 AM

♦ Import table definitions from Oracle using the PowerCenter ODBC interface.

♦ Manually create an Oracle source definition.

You can create an Oracle target definition in the following ways:

♦ Import table definitions from Oracle using PowerExchange.

♦ Import table definitions from Oracle using the PowerCenter ODBC interface.

♦ Manually create an Oracle source definition. F

See the PowerCenter Designer Guide for more information about using PowerCenter to create source and target definitions.

Tip: If your repository contains Oracle definitions, you can use them to extract data from or load data to an Oracle table. However, the metadata definition must match the table structure of the Oracle table.

Importing a Oracle Relational Source or Target Definition

You can connect to an Oracle database through a PowerExchange Listener, or locally without a Listener, to import Oracle metadata. When you connect to the database, the Designer displays database schemas and tables. Before you connect to the database, you can filter the metadata the Designer displays by schema and/or table name.

Select a table to create the source or target definition. When you import an Oracle source definition through a PowerExchange Listener, the Designer imports the primary keys.

Use the following procedure to import Oracle source or target definitions.

To import an Oracle source or target definition:

1. To import an Oracle source definition, select Sources > Import from PowerExchange and select a source type of Oracle.

To import an Oracle target definition, select Targets > Import from PowerExchange and select a source type of Oracle.

34 Chapter 3: Working with Mappings

Page 51: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 35 Wednesday, December 12, 2007 10:19 AM

The Import from PowerExchange > Oracle dialog box looks as follows:

The target dialog box looks similar but does not contain the Multi-Record Datamaps and CDC Datamaps options.

2. Enter the following connection information:

Figure 3-8. Import from PowerExchange - Oracle Source

AttributeRequired/Optional

Description

Location Required Name of the PowerExchange Listener (Node name from PowerExchange dbmover.cfg) on the system on which the database resides.

User Name Required User name for the database connecting to.

Password Required Password associated with the user name.

Multi-Record Datamaps N/a Select to list multi-record data maps. SEQ or VSAM sources only.

Source Type Required ORACLE.

CDC Datamaps N/a Select to list CDC extraction maps - source only.

TNS Name Required Oracle SID (instance name).

Working with Relational Source and Target Definitions 35

Page 52: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 36 Wednesday, December 12, 2007 10:19 AM

3. Optionally, enter a filter to view particular schemas and tables from the database.

Enter a schema and/or table name. Or, enter a filter condition to display schemas and/or tables that meet the filter condition. Use one of the following wildcard characters in the filter condition:

♦ * (asterisk). Represents one or more characters.

♦ ? (question mark). Represents one character.

Use the following syntax when entering a wildcard character:

♦ Enter the filter condition as a prefix. For example, enter A* to display schemas and/or tables that begin with an A.

♦ Enter the filter condition as a suffix. For example, enter *A to display schemas and/or tables that end with an A.

♦ Enter the filter condition as a substring. For example, enter *cust* to display schemas and/or tables that contain “cust.”

Note: Schema and table names are not case sensitive.

4. Click Connect.

The available tables, based on the values specified in the dialog box, will appear in the Selected Datamaps list.

If no tables are found, “No Data Found” will appear in the Selected Datamaps list.

Schema Optional Enter a schema name to filter the resulting data maps.

Map name Optional Enter a table name to filter the resulting data maps.

AttributeRequired/Optional

Description

36 Chapter 3: Working with Mappings

Page 53: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 37 Wednesday, December 12, 2007 10:19 AM

The Designer displays metadata to import.

5. Select the table you want to import.

♦ Hold down the Shift key to select blocks of tables.

♦ Hold down the Ctrl key to make non-contiguous selections within a schema.

♦ Use the Select all button to select all tables.

♦ Use the Select none button to clear all highlighted selections.

6. Click OK.

The source or target definition appears in the workspace.

Working with Sybase Definitions

You can create a Sybase source definition in the following ways:

♦ Import table definitions from Sybase using PowerExchange.

♦ Import table definitions from Sybase using the PowerCenter ODBC interface.

♦ Manually create an Sybase source definition.

Figure 3-9. Import from PowerExchange - Oracle Select Datamaps List

Schema

TableTable

Working with Relational Source and Target Definitions 37

Page 54: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 38 Wednesday, December 12, 2007 10:19 AM

You can create an Sybase target definition in the following ways:

♦ Import table definitions from Sybase using PowerExchange.

♦ Import table definitions from Sybase using the PowerCenter ODBC interface.

♦ Manually create an Sybase target definition.

See the PowerCenter Designer Guide for more information about using PowerCenter to create source and target definitions.

Tip: If your repository already contains Sybase definitions, you can use them to extract data from a Sybase source. However, the metadata definition must match the table structure of the Sybase table.

Importing a Sybase Relational Source or Target Definition

You can connect to an Sybase database through a PowerExchange Listener, or locally without a Listener, to import Sybase metadata. When you connect to the database, the Designer displays database schemas and tables. Before you connect to the database, you can filter the metadata the Designer displays by schema and/or table name.

Select a table to create the source or target definition. When you import an Sybase source definition through a PowerExchange Listener, the Designer imports the primary keys.

Use the following procedure to import Sybase source or target definitions.

To import an Sybase source or target definition:

1. To import an Sybase source definition, select Sources > Import from PowerExchange and select a source type of Sybase.

To import an Sybase target definition, select Targets > Import from PowerExchange and select a source type of Sybase.

38 Chapter 3: Working with Mappings

Page 55: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 39 Wednesday, December 12, 2007 10:19 AM

The Import from PowerExchange > Sybase dialog box looks as follows:

2. Enter the following connection information:

Figure 3-10. Import from PowerExchange - Sybase Source

AttributeRequired/Optional

Description

Location Required Name of the PowerExchange Listener (Node name from PowerExchange dbmover.cfg) on the system on which the database resides.

User Name Required User name for the database connecting to.

Password Required Password associated with the user name.

Multi-Record Datamaps N/A Select to list multi-record data maps. SEQ or VSAM sources only.

Source Type Required SYBASE.

CDC Datamaps N/A Select to list CDC extraction maps. N/A for Sybase.

Server Name Required Sybase Server Name.

Database Name Required Sybase Database Name.

Working with Relational Source and Target Definitions 39

Page 56: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 40 Wednesday, December 12, 2007 10:19 AM

3. Optionally, enter a filter to view particular schemas and tables from the database.

Enter a schema and/or table name. Or, enter a filter condition to display schemas and/or tables that meet the filter condition. Use one of the following wildcard characters in the filter condition:

♦ * (asterisk). Represents one or more characters.

♦ ? (question mark). Represents one character.

Use the following syntax when entering a wildcard character:

♦ Enter the filter condition as a prefix. For example, enter A* to display schemas and/or tables that begin with an A.

♦ Enter the filter condition as a suffix. For example, enter *A to display schemas and/or tables that end with an A.

♦ Enter the filter condition as a substring. For example, enter *cust* to display schemas and/or tables that contain “cust.”

Note: Schema and table names are not case sensitive.

4. Click Connect.

The available tables, based on the values specified in the dialog box, will appear in the Selected Datamaps list.

If no tables are found, “No Data Found” will appear in the Selected Datamaps list.

Schema Optional Enter a schema name to filter the resulting data maps.

Map name Optional Enter a table name to filter the resulting data maps.

AttributeRequired/Optional

Description

40 Chapter 3: Working with Mappings

Page 57: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 41 Wednesday, December 12, 2007 10:19 AM

The Designer displays metadata to import.

5. Select the table you want to import.

♦ Hold down the Shift key to select blocks of tables.

♦ Hold down the Ctrl key to make non-contiguous selections within a schema.

♦ Use the Select all button to select all tables.

♦ Use the Select none button to clear all highlighted selections.

6. Click OK.

The source or target definition appears in the workspace.

Editing Relational Source and Target Definitions

You can edit relational source and target definition to make minor changes to the definition. For example, you can:

♦ Modify column names.

♦ Modify column data types.

♦ Add or delete columns.

Figure 3-11. Import from PowerExchange - Sybase Select Datamaps List

Schema

Table

Working with Relational Source and Target Definitions 41

Page 58: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 42 Wednesday, December 12, 2007 10:19 AM

♦ Modify column key relationships.

♦ Add a description of the definition.

Note: If using the relational source in a CDC session you do not need to add the DTL__CAPXACTION field nor do you need to include an Update Strategy transformation. PWXPC will automatically include the DTL__CAPXACTION column in its SELECT statement for CDC sources. It then uses the value of the DTL__CAPXACTION to construct the appropriate SQL statement (INSERT, UPDATE, or DELETE).

For more information about editing source and target definitions, see the PowerCenter Designer Guide.

42 Chapter 3: Working with Mappings

Page 59: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 43 Wednesday, December 12, 2007 10:19 AM

Working with Non-Relational Source and Target Definitions

With PowerExchange Client for PowerCenter, you can create source definitions to read from, and target definitions to write to, the following non-relational data types:

♦ Adabas

♦ Datacom - source only

♦ DB2 data maps (DB2MAP) - source only

♦ DB2/390 unload files (DB2UNLD) - source only

♦ IDMS - source only

♦ IMS

♦ SEQ

♦ VSAM

You can create a non-relational source and target definitions by importing a data map from a PowerExchange Listener. Non-relational definitions represent the data map metadata in groups. Each group represents a table in the data map. Each group also contains metadata for the fields in the table.

The following diagram shows a non-relational source definition for a VSAM data map that contains multiple tables representing multiple records in the VSAM file. The tables in the VSAM data map are represented as groups in the source definition:

Figure 3-12. Non-Relational Source Definition with Multiple Records

A group represents a table in the PowerExchange data map.

Group name

Working with Non-Relational Source and Target Definitions 43

Page 60: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 44 Wednesday, December 12, 2007 10:19 AM

In this example, the source definition contains four groups: V07A_RECORD_LAYOUT, V07B_RECORD_LAYOUT, V07C_RECORD_LAYOUT and V07D_RECORD_LAYOUT. These groups are tables in the data map. The groups contain metadata for the fields in the tables.

Some data maps contain records that have hierarchical relationships with each other. For example, records can have a parent/child relationships. When you import data maps with hierarchies, the Designer imports the data map as a single group.

Importing Non-Relational Source Definitions

You can connect to PowerExchange locally or to a PowerExchange Listener to import a non-relational source definition or a data mapped DB2 definition. When you connect to PowerExchange, the Designer displays data map schemas and tables for the source type specified. Before you connect to PowerExchange, you can filter the metadata the Designer displays by schema and/or data map name. Select a data map to create the source definition.

The same procedure is used to import multi-record data maps (VSAM and sequential). Select the Multi-Record Datamaps box on the Import dialog box to import multi-record data maps.

You can use the following procedure to import multi-record (VSAM and sequential only) or single record data map source definitions.

44 Chapter 3: Working with Mappings

Page 61: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 45 Wednesday, December 12, 2007 10:19 AM

To import a non-relational source definition:

1. To import a non-relational source definition, select Sources > Import from PowerExchange and select the desired source type. The dialog box and parameters displayed are the same for each non-relational source type.

The Import from PowerExchange dialog box looks as follows:

2. Enter the following connection information:

Figure 3-13. Import from PowerExchange - Non-Relational Source

AttributeRequired/Optional

Description

Location Required Name of the PowerExchange Listener (Node name from PowerExchange dbmover.cfg) on the system on which the database resides.

User Name Required User name for the database to connect to.

Password Required Password associated with the User name.

Multi-Record Datamaps Optional Select to list multi-record data maps. SEQ or VSAM sources only.

Source Type Required Select one of the following source types: ADABAS, DATACOM, DB2MAP, DB2UNLD, IDMS, IMS, SEQ, or VSAM.

Working with Non-Relational Source and Target Definitions 45

Page 62: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 46 Wednesday, December 12, 2007 10:19 AM

3. Optionally, enter a filter to view particular schemas and tables from the database.

Enter a schema and/or table name. Or, enter a filter condition to display schemas and/or tables that meet the filter condition. Use one of the following wildcard characters in the filter condition:

♦ * (asterisk). Represents one or more characters.

♦ ? (question mark). Represents one character.

Use the following syntax when entering a wildcard character:

♦ Enter the filter condition as a prefix. For example, enter A* to display schemas and/or tables that begin with an A.

♦ Enter the filter condition as a suffix. For example, enter *A to display schemas and/or tables that end with an A.

♦ Enter the filter condition as a substring. For example, enter *cust* to display schemas and/or tables that contain “cust.”

Note: Schema and table names are not case sensitive.

4. Click Connect. The available data maps appear in the Selected Datamaps list.

The Designer displays metadata to import. The following two examples show the results when single record VSAM data maps and multi-record VSAM data maps are selected.

Each record in the multi-record data map will display in Selected Datamaps list when importing single record data maps. Each record in a multi-record data map is effectively a single record data map. It is possible to import only a single record within a multi-record data map as a source.

CDC Datamaps n/a Select to list CDC extraction maps - source only.

Schema Optional Enter a schema name to filter the resulting data maps.

Map name Optional Enter a data map name to filter the resulting data maps.

Selected Datamaps n/a Lists the available data maps for the connection, database and filter details that you entered.

AttributeRequired/Optional

Description

46 Chapter 3: Working with Mappings

Page 63: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 47 Wednesday, December 12, 2007 10:19 AM

This example shows the results for single record VSAM data maps:

Figure 3-14. Import from PowerExchange - Single Record Source Data Maps

Schema

Table

Working with Non-Relational Source and Target Definitions 47

Page 64: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 48 Wednesday, December 12, 2007 10:19 AM

This example shows the results for multi-record VSAM data maps:

5. Select the data map you want to import.

♦ Hold down the Shift key to select blocks of tables.

♦ Hold down the Ctrl key to make non-contiguous selections within a data map.

♦ Use the Select all button to select all tables.

♦ Use the Select none button to clear all highlighted selections.

6. Click OK.

The source definitions appear. The Designer uses the data map name as the name of the source definition.

Importing Non-Relational Target Definitions

You can connect to PowerExchange locally or to a PowerExchange Listener to import a non-relational target definition. When you connect to PowerExchange, the Designer displays data map schemas and tables for the target type specified. Before you connect to PowerExchange, you can filter the metadata the Designer displays by schema and/or data map name. Select a data map to create the source definition.

Figure 3-15. Import from PowerExchange - Multiple Record Source Data Maps

Schema

Table

48 Chapter 3: Working with Mappings

Page 65: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 49 Wednesday, December 12, 2007 10:19 AM

To import a non-relational target definition:

1. To import a non-relational target definition, select Targets > Import from PowerExchange and select the desired target type. The dialog box and parameters displayed are the same for each non-relational source type.

The Import from PowerExchange dialog box for targets looks as follows:

2. Enter the following connection information:

Figure 3-16. Import from PowerExchange - Non-Relational Target

AttributeRequired/Optional

Description

Location Required Name of the PowerExchange Listener (Node name from PowerExchange dbmover.cfg) on the system on which the database resides.

User Name Required User name for the database to connect to.

Password Required Password associated with the User name.

Source Type Required Select one of the following source types: ADABAS, IMS, SEQ, or VSAM.

Schema Optional Enter a schema name to filter the resulting data maps.

Working with Non-Relational Source and Target Definitions 49

Page 66: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 50 Wednesday, December 12, 2007 10:19 AM

3. Optionally, enter a filter to view particular schemas and tables from the database.

Enter a schema and/or table name. Or, enter a filter condition to display schemas and/or tables that meet the filter condition. Use one of the following wildcard characters in the filter condition:

♦ * (asterisk). Represents one or more characters.

♦ ? (question mark). Represents one character.

Use the following syntax when entering a wildcard character:

♦ Enter the filter condition as a prefix. For example, enter A* to display schemas and/or tables that begin with an A.

♦ Enter the filter condition as a suffix. For example, enter *A to display schemas and/or tables that end with an A.

♦ Enter the filter condition as a substring. For example, enter *cust* to display schemas and/or tables that contain “cust.”

Note: Schema and table names are not case sensitive.

4. Click Connect. The available data maps appear in the Selected Datamaps list. The Designer displays metadata to import.

Map name Optional Enter a data map name to filter the resulting data maps.

Selected Datamaps n/a Lists the available data maps for the connection, database and filter details that you entered.

AttributeRequired/Optional

Description

50 Chapter 3: Working with Mappings

Page 67: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 51 Wednesday, December 12, 2007 10:19 AM

The following example shows the results when a Source Type of VSAM is selected:

5. Select the data map you want to import.

♦ Hold down the Shift key to select blocks of tables.

♦ Hold down the Ctrl key to make non-contiguous selections within a data map.

♦ Use the Select all button to select all tables.

♦ Use the Select none button to clear all highlighted selections.

6. Click OK.

The source definitions appear. The Designer uses the data map name as the name of the source definition.

Viewing Non-Relational Source and Target Definition Details

Non-relational source and target definitions contain information about the data map structure on the Attributes tab. Additional metadata information is included on the Metadata Extensions tab.

Figure 3-17. Import from PowerExchange - Non-Relational Target Select Datamaps List

Schema

Table

Working with Non-Relational Source and Target Definitions 51

Page 68: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 52 Wednesday, December 12, 2007 10:19 AM

Viewing Data Map Information

The Attributes tab of a non-relational source or target definition lists each field in the definition. It also lists the attributes of each field and their values from the data map used to create the definition. The attributes include information such as the name of the base record to which the field belongs.

Figure 3-18 shows the Attributes information for a non-relational VSAM definition:

Table 3-1 describes the attributes the Attributes tab displays for each field in the non-relational definition:

Figure 3-18. Non-Relational Table - Attributes

Table 3-1. Attributes of Fields in a Non-Relational Source Definition

Attribute Name Description

column_name Name of the field in the data map.

base_rec Name of the record to which the field belongs. This corresponds to name of the group the field belongs to in the source definition.

base_fld Name of the base record and table field name in the following format:<Base_Field_Name>:<Table_Field_Name>

base_fld_tpe PowerExchange data type of the field.

base_fld_offset Offset value from which the field starts. For example, if the value is 5, the field starts at the fifth position. You determine the offset value of each field based on the order of fields in the data map.

52 Chapter 3: Working with Mappings

Page 69: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 53 Wednesday, December 12, 2007 10:19 AM

Viewing Metadata Extensions

Non-relational source and target definitions have metadata extensions that displays additional information from the data map used to create the definition. With VSAM and sequential definitions, the File Name extension field can be modified. See “Editing Metadata Extensions” on page 54.

You can override the data map name and schema name in the session properties. See “Session Properties for Non-Relational Batch Mode Sessions” on page 129.

The following example shows the Metadata Extensions information for a VSAM definition:

The following table describes the extensions on the Metadata Extensions tab for a non-relational definition:

Figure 3-19. Non-Relational Table - Metadata Extensions

Table 3-2. Non-Relational Source Definition Metadata Extensions

Extension Name Description

Access Method Method you specified in the data map to access the source database:- A = Adabas- D = IMS DL1- E = VSAM ESDS- I = IDMS- K = VSAM KSDS- O = IMS ODBA- N = VSAM RRDS- S = sequential (SEQ)- W = DB2 unload file (DB2UNLD)- X = Datacom- Z = DB2 data map

comments Any comments.

Working with Non-Relational Source and Target Definitions 53

Page 70: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 54 Wednesday, December 12, 2007 10:19 AM

Editing Non-Relational Source and Target Definitions

You can edit non-relational source and target definitions to make minor changes to the definition. For example, you can:

♦ Modify a column data type

♦ Modify the owner name

♦ Modify column key relationships

♦ Add or delete columns

♦ Add a description of the definition

♦ Create metadata extensions

Note: If using the non-relational source in a CDC session you do not need to add the DTL__CAPXACTION field nor do you need to include an Update Strategy transformation. PWXPC will automatically include the DTL__CAPXACTION column in its SELECT statement for CDC sources. It then uses the value of the DTL__CAPXACTION to construct the appropriate SQL statement (INSERT, UPDATE, or DELETE).

For more information about editing source definitions, see the PowerCenter Designer Guide.

Editing Metadata Extensions

With VSAM and sequential definitions, the File Name extension field can be modified. All other field populated by PWXPC when a data map is imported cannot be changed.

By default, the File Name field contains the value from the PowerExchange data map File Name field which contains the VSAM data set name or the sequential file name.

Note: Any VSAM and sequential definitions created prior to PowerCenter V8.5 will have a blank File Name. If desired, this field can be populated manually or by re-importing the data map.

File Name Name of the data set (sequential or VSAM only)

Map Name Name of the data map.

Schema Name Name of the schema on which you based the data map.

Table 3-2. Non-Relational Source Definition Metadata Extensions

Extension Name Description

54 Chapter 3: Working with Mappings

Page 71: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 55 Wednesday, December 12, 2007 10:19 AM

The following procedure explains how to manually update the File Name field to add or change the file name in a VSAM or sequential definition.

To manually update the file name field:

1. Double-click the source or target definition in the workspace.

2. Select the Metadata Extensions tab.

PWXPC populates the File Name field with the File Name for the PowerExchange data map. The following example shows the metadata extensions for a VSAM definition. The VSAM was created prior to PowerCenter V8.5 so the File Name field is blank.

3. Click in the Value field and select the down arrow.

Working with Non-Relational Source and Target Definitions 55

Page 72: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 56 Wednesday, December 12, 2007 10:19 AM

The Edit Metadata Extension Value panel displays allowing you to enter or change the file name.

Click OK when done.

4. Click OK to end Edit Tables.

You can also re-import the PowerExchange data map to automatically populate the File Name field with the information contained in the data map.

56 Chapter 3: Working with Mappings

Page 73: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 57 Wednesday, December 12, 2007 10:19 AM

Working with Extraction Map Definitions

When creating mappings for Change Data Capture (CDC), import the extraction map rather than the source table metadata. Extraction maps are imported using the Import from PowerExchange dialog box and are uniquely suited for the following cases:

♦ The extraction map for the source contains a subset of the actual columns defined for the source.

♦ The PowerExchange generated columns like DTL__CAPXTIMESTAMP, DTL__CAPXACTION, and DTL__BI before image columns are needed.

You can connect to PowerExchange locally or to a PowerExchange Listener to import an extraction map definition. Connect to the capture source platform location where the extraction maps are stored.

When you connect to PowerExchange, the Designer displays the extraction map schemas and tables. Before you connect to PowerExchange, you can filter the metadata the Designer displays by schema and/or data map name. Select an extraction map to create the source definition.

To import an extraction map as a source definition

1. To import an extraction map source definition, select Sources > Import from PowerExchange and select the CDC Datamaps box and then select the desired source type.

The dialog box and parameters displayed are the same for each non-relational source type.

Working with Extract ion Map Definitions 57

Page 74: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 58 Wednesday, December 12, 2007 10:19 AM

The Import from PowerExchange dialog box appears as follows:

Enter the following connection information:

Figure 3-20. Import from PowerExchange - CDC Datamaps

AttributeRequired/Optional

Description

Location Required Name of the PowerExchange Listener (Node name from PowerExchange dbmover.cfg) on the system on which the database resides.

User Name Required User name for the database connecting to.

Password Required Password associated with the User name.

Multi-Record Datamaps N/a Select to list multi-record data maps. SEQ or VSAM sources only.

Source Type Required Select one of the following source types: ADABAS, DATACOM, DB2390, DB2400, DB2UDB, IDMS, IMS, MSSQL, ORACLE or VSAM.

CDC Datamaps Required Select to list CDC extraction maps - source only.

Schema Optional Enter a schema name to filter the resulting data maps.

Map name Optional Enter a data map name to filter the resulting data maps.

58 Chapter 3: Working with Mappings

Page 75: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 59 Wednesday, December 12, 2007 10:19 AM

2. Optionally, enter a filter to view particular schemas and tables from the database.

Enter a schema, table name, or both. Or enter a filter condition to display schemas or tables that meet the filter condition. Use one of the following wildcard characters in the filter condition:

♦ * (asterisk). Represents one or more characters.

♦ ? (question mark). Represents one character.

Use the following syntax when entering a wildcard character:

♦ Enter the filter condition as a prefix. For example, enter A* to display schemas or tables that begin with an A.

♦ Enter the filter condition as a suffix. For example, enter *A to display schemas or tables that end with an A.

♦ Enter the filter condition as a substring. For example, enter *cust* to display schemas or tables that contain “cust.”

Note: Schema and table names are not case sensitive.

3. Click Connect. The Designer displays the metadata to import. The extraction maps shown will be filtered based on the source type specified.

Figure 3-21. Import from PowerExchange - CDC Select Datamaps List

Schema

Table

Working with Extract ion Map Definitions 59

Page 76: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 60 Wednesday, December 12, 2007 10:19 AM

In this example, only extraction maps for a specific Schema and Map name appear in the Designer.

4. Select the data map you want to import.

♦ Hold down the Shift key to select blocks of tables.

♦ Hold down the Ctrl key to make non-contiguous selections within a data map.

♦ Use the Select all button to select all tables.

♦ Use the Select none button to clear all highlighted selections.

5. Click OK.

The source definition appears in the workspace. The Designer uses the data map name as the name of the source definition.

Viewing Extraction Map Definition Details

Extraction map definitions contain information about the data map structure on the Attributes tab. They also contain metadata extensions on the Metadata Extensions tab.

Viewing Extraction Map Information

The Attributes tab of a extraction map definition lists each field in the source definition. It also lists the attributes of each field and their values based on the extraction map from which you imported the source definition. The attributes include information such as the name of the base record to which the field belongs.

Figure 3-22 shows the Attributes tab of a extraction map definition:

Figure 3-22. Extraction Map Table - Attributes

60 Chapter 3: Working with Mappings

Page 77: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 61 Wednesday, December 12, 2007 10:19 AM

Table 3-3 describes the attributes that the Attributes tab displays for each field in the source definition:

Viewing Metadata Extensions

Extraction map definitions have metadata extensions that display information about the data map on which you based the source definition. You cannot modify these metadata extensions. However, you can override the data map name and schema name in the session properties.

The following example shows the Metadata Extensions tab of a extraction map definition:

Table 3-3. Attributes of Fields in a Extraction Map Definition

Attribute Name Description

column_name Name of the field in the extraction map.

base_rec blank.

base_fld blank

base_fld_tpe blank.

base_fld_offset blank

Figure 3-23. Extraction Map Table - Metadata Extensions

Working with Extract ion Map Definitions 61

Page 78: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 62 Wednesday, December 12, 2007 10:19 AM

The following table describes the extensions on the Metadata Extensions tab for an extraction map definition:

Editing a Extraction Map Definition

You can edit extraction map definitions to make minor changes to the definition. For example, you can:

♦ Modify a column data type.

♦ Modify the owner name.

♦ Add or delete columns.

♦ Add a description of the definition.

♦ Create metadata extensions.

When using extraction maps, you do not need to add the DTL__CAPXACTION field nor do you need to include an Update Strategy transformation. PWXPC will automatically include the DTL__CAPXACTION column in its SELECT statement for CDC sources. It then uses the value of the DTL__CAPXACTION to construct the appropriate SQL statement (INSERT, UPDATE, or DELETE).

Warning: Changing column information in the extraction map could result in failures in the session or workflow during the extraction process.

For more information about editing source definitions, see the PowerCenter Designer Guide.

Table 3-4. Extraction Map Definition Metadata Extensions

Extension Name Description

Access Method Method you specified in the data map to access the source database:- A = Adabas- B = DB2/390 and DB2/400- D = IMS- E = VSAM ESDS- I = IDMS- K = VSAM KSDS- L = MSSQL- N = VSAM RRDS- P = Oracle- V = DB2/UDB- X = Datacom

comments Any comments.

Map Name Name of the extraction map.

Original Name Original table name in relational database or PowerExchange data map.

Original Schema Original schema or owner name in relational database or PowerExchange data map.

Schema Name Name of the schema for the extraction map.

62 Chapter 3: Working with Mappings

Page 79: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 63 Wednesday, December 12, 2007 10:19 AM

Previewing PowerExchange Data in Designer

You can preview data in the Designer for any valid relational and non-relational source or target definitions. You can also preview changed data for extraction map source definitions. You cannot preview data for multi-record data map source definitions.

Previewing data allows you to see the source or target data. The data that is shown depends upon the database type of the source or target definition. There are three database types for PowerExchange source and target definitions:

1. Relational, such as DB2 for DB2 metadata.

2. Non-relational, such as PWX_VSAM_NRDB2 for VSAM data maps.

3. Extraction Maps, such as PWX_DB2390_CDC for DB2 CDC data maps.

You can preview source or target data in the following Designer tools:

♦ Source Analyzer. Preview source data in the Source Analyzer after you import the source.

♦ Target Designer. Preview target data in the Target Designer after you import a target.

♦ Mapplet Designer. Preview source data in the Mapplet Designer while creating a mapplet.

♦ Mapping Designer. Preview source and target data in the Mapping Designer while creating a mapping.

For sources and targets other than those accessed through PowerExchange, see the PowerCenter Designer Guide.

Previewing PowerExchange Relational Data

Previewing data for source or target relational definitions displays data from the relational table. You must be able to connect to PowerExchange on the source or target database platform to preview data.

Note: Previewing data requires an ODBC data source to connect to PowerExchange.

To preview relational source or target data:

1. Select a relational source or target definition in the workspace.

2. Right-click the source or target definition in the workspace and choose Preview Data.

Previewing PowerExchange Data in Designer 63

Page 80: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 64 Wednesday, December 12, 2007 10:19 AM

The Preview Data dialog box appears.

3. Select an ODBC data source name.

You can add a new ODBC data source using the ... button.

4. If necessary, enter the Username and Password.

For PowerExchange sources and targets on MVS and AS/400, this is only necessary if connecting to a PowerExchange Listener configured with security (SECURITY=1 or SECURITY=2 in DBMOVER).

5. Enter the database table owner name.

6. Enter the number of rows you want to preview.

The default is 100. The Preview Data dialog box can display up to 500 rows and up to 65,000 columns.

7. Click Connect.

64 Chapter 3: Working with Mappings

Page 81: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 65 Wednesday, December 12, 2007 10:19 AM

The contents of the table appear in the Preview Data dialog box.

8. To change the number of rows you want to preview, enter a new number and click Refresh.

9. Click Close to exit.

Previewing PowerExchange Non-Relational Data

Previewing data for source or target non-relational definitions displays data from the non-relational file. In the case of DB2 data maps, data from the source DB2 table displays. Previewing data for non-relational definitions uses PWXPC to connect to PowerExchange.

You must be able to connect to PowerExchange on the source or target platform to preview data.

To preview non-relational source or target data:

1. Select a non-relational source or target definition in the workspace.

2. Right-click the source or target definition in the workspace and choose Preview Data.

Previewing PowerExchange Data in Designer 65

Page 82: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 66 Wednesday, December 12, 2007 10:19 AM

The Preview Data dialog box appears.

3. Select a Location name.

The Location names are retrieved from the NODE statements in the dbmover.cfg file on the Designer platform. To add additional Locations, edit this file and add additional NODE statements.

4. If necessary, enter the Username and Password.

For PowerExchange sources and targets on MVS and AS/400, this is only necessary if connecting to a PowerExchange Listener configured with security (SECURITY=1 or SECURITY=2 in DBMOVER).

5. The Schema field is automatically populated with the PowerExchange data map schema name. This can be changed if desired.

6. Enter the number of rows you want to preview.

The default is 10. The Preview Data dialog box can display up to 500 rows and up to 65,000 columns.

7. Click Connect.

66 Chapter 3: Working with Mappings

Page 83: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 67 Wednesday, December 12, 2007 10:19 AM

The contents of the table appear in the Preview Data dialog box.

8. To return more data, click More.

9. To change the number of rows you want to preview, enter a new number and click Connect.

10. Click Close to exit.

Previewing PowerExchange Changed Data

Previewing data for extraction map (CDC datamaps) definitions displays changed data from the change stream. Previewing data for extraction maps uses PWXPC to connect to PowerExchange.

You must be able to connect to PowerExchange on the source platform to preview data.

To preview changed data:

1. Select an extraction map source definition in the workspace.

2. Right-click the source definition in the workspace and choose Preview Data.

Previewing PowerExchange Data in Designer 67

Page 84: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 68 Wednesday, December 12, 2007 10:19 AM

The Preview Data dialog box appears.

3. Select a Location name.

The Location names are retrieved from the NODE statements in the dbmover.cfg file on the Designer platform. To add additional Locations, edit this file and add additional NODE statements.

4. If necessary, enter the Username and Password.

For PowerExchange sources and targets on MVS and AS/400, this is only necessary if connecting to a PowerExchange Listener configured with security (SECURITY=1 or SECURITY=2 in DBMOVER).

5. The Schema field is automatically populated with the PowerExchange extraction map schema name. This can be changed if desired.

6. Select either Real Time or Change.

Real Time extracts data in real-time from the change stream using the earliest starting restart point. Change extracts data from condense files using the earliest starting restart point. See “Default Restart Points” on page 157 for more information about default restart points.

7. If desired, change the Time Out value.

68 Chapter 3: Working with Mappings

Page 85: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 69 Wednesday, December 12, 2007 10:19 AM

The time out value indicates the maximum time (in seconds) to wait for additional data at the end of log. After this time period expires, EOF is returned and the number of rows requested is displayed. Returning EOF terminates any further retrieval of data from the change stream.

The default is 10 seconds. The value can be any number between 0 and 86400. A value of 0 indicates that EOF is returned as soon as the end of log is reached whereas 86400 indicates that EOF is never returned. Do not specify 86400 as no data is displayed and the Preview Data session hangs until the extraction task in PowerExchange Listener is stopped.

8. Enter the number of rows you want to preview.

The default is 10. The Preview Data dialog box can display up to 500 rows and up to 65,000 columns.

9. Click Connect.

The contents of the table appear in the Preview Data dialog box.

10. To return more data, click More.

When the end of log is reached, the More button is greyed out.

Previewing PowerExchange Data in Designer 69

Page 86: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 70 Wednesday, December 12, 2007 10:19 AM

11. To change the number of rows you want to preview, enter a new number and click Connect.

12. Click Close to exit.

70 Chapter 3: Working with Mappings

Page 87: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 71 Wednesday, December 12, 2007 10:19 AM

PowerExchange Group Source

PowerExchange Client for PowerCenter uses PowerExchange Group Source functionality. Group Source is used when reading Changed Data Capture (CDC) data. It can also be used when processing VSAM and sequential datasets or files that have multiple record types.

Group Source allows PowerExchange to read all data from the same physical source in a single pass. For CDC data, this means that changes for all tables defined in the mapping can be read from the change stream in a single pass. For multi-record VSAM or sequential data sets, the file needs only be read once to acquire all of the record types. Records are then provided to the appropriate source in the mapping.

This provides enhanced performance by eliminating multiple passes of the data. It also reduces the resource consumption of PowerExchange on the platform from which the data is being extracted.

Using Group Source with Non-Relational Sources

VSAM and sequential datasets that contain multiple record types with physically different record layouts in a single data set are candidates for Group Source. Within PowerExchange each record type is separately defined as a unique record in the data map. This results in separate tables to represent the relational view of each record.

Traditionally, the table for each record type would be imported into PowerCenter Designer thereby decoupling the relational view of the data from the physical data set. As a result, the data set would be read in its entirety for each of the different record types imported. For example, a sequential data set containing three different record layouts would be read, in its entirety, three times to provide the data to each record type.

With PWXPC, the Group Source functionality of PowerExchange can be used for multi-record VSAM and sequential datasets resulting in the data set/file being read only once regardless of the number of unique record types that exist. To exploit this functionality, the metadata must be imported as a multi-record data map in Designer. This is done by selecting the “Multi-record Datamaps” box on the Import dialog box. For more information on how to do this, see “Importing Non-Relational Source Definitions” on page 44.

Non-relational source definitions represent the data map metadata in groups. Each group represents a table in the data map. Each group also contains metadata for the fields in the table.

PowerExchange Group Source 71

Page 88: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 72 Wednesday, December 12, 2007 10:19 AM

Figure 3-24 shows a non-relational source definition with multiple groups:

The PowerExchange NRDB Batch application connection is used to read the data and uses Group Source functionality. Group Source processing for multi-record non-relational data maps is done for each source definition. Each source definition in a mapping will result in a connection to PowerExchange to read the source data. It is possible to have multiple multi-record source definitions in a mapping and each one can use Group Source processing.

Using Group Source with CDC Sources

With PWXPC, the Group Source functionality of PowerExchange can be used for all CDC sources resulting in the change stream for the CDC source being read only once, for each unique source type, regardless of the number of source tables included in the mapping.

You can create a CDC source definition that can use group source in the following ways:

♦ Import table definitions from the relational database using PowerExchange. For more information, see “Working with Relational Source and Target Definitions” on page 25.

♦ Import data map table definitions from PowerExchange (non-relational and DB2/390 sources). For more information, see “Working with Non-Relational Source and Target Definitions” on page 43.

♦ Import extraction map definitions from PowerExchange for all source types. For more information, see “Working with Extraction Map Definitions” on page 57.

♦ Import relational table definitions using the PowerCenter ODBC interface. For more information, see the PowerCenter Designer Guide.

Figure 3-24. Multi-record Non-Relational Source Definition

PowerExchange data map table name

PowerExchange map name

72 Chapter 3: Working with Mappings

Page 89: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 73 Wednesday, December 12, 2007 10:19 AM

For non-relational CDC sources, the source metadata must be imported using PWXPC.

Tip: Use extraction maps, or CDC Datamaps, for CDC sources as this eliminates the need to specify the extraction map name in the Session Properties. It also eliminates the need to add any of the special DTL columns: the DTL__CAPX fields, the DTL__CI change indicator fields, and the DTL__BI before image fields. This can significantly simplify the mapping design process.

Group Source functionality is invoked for each source type. A mapping should contain only a specific source type. Sessions with a mappings containing multiple source types, even if the same change stream is being read, will fail with:

PWXPC_10080 [ERROR] All the readers should be of one database type only

For example, a mapping containing both VSAM and IMS sources will fail with the 10080 message. Two separate mappings should be made: one for the VSAM sources and one for the IMS sources. If these two mappings are included in two sessions in the same workflow, they result in separate Group Source connections to the change stream: one for VSAM and one for IMS.

Group Source for batch access to non-relational sources requires that the source be imported as a multi-record data map and is used for an individual source definition. With CDC access, group source is invoked at a mapping level for all source definitions rather than at an individual source definition level.

The invocation of Group Source occurs automatically when a PWX Change or Real-Time connection is used in a session, regardless of the number of sources included in the session. It also occurs automatically if a multi-record source definition exists in a mapping.

The following diagram shows an example of a mapping for three DB2 sources:

Figure 3-25. Group Source Mapping Example

PowerExchange Group Source 73

Page 90: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 74 Wednesday, December 12, 2007 10:19 AM

When you include this mapping in a session that uses the PowerExchange DB2 CDC application connection, PowerExchange reads through the change stream a single time, using Group Source, to extract the changes for all three source tables. The changes for each source are provided to the source qualifier in the chronological order in which each unit of work (UOW) completed.

When you include this mapping in a session that uses a PowerExchange DB2 relational connection, PowerExchange reads each source table separately. A unique pipeline is created for each source which results in three unique tasks in the PowerExchange Listener.

74 Chapter 3: Working with Mappings

Page 91: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 75 Wednesday, December 12, 2007 10:19 AM

Working with Source Qualifiers

Source qualifiers determine how the Integration Service reads data from the source. You connect a source qualifier to a source instance in a mapping. The type of source qualifier you use depends on the source definition:

♦ Relational source definitions use a Source Qualifier transformation.

♦ Non-relational source definitions use an Application Multi-Group Source Qualifier transformation.

Transformation Datatypes

The transformation datatypes in Source Qualifier and Application Multi-Group Source Qualifier transformations are internal datatypes based on ANSI SQL-92 generic datatypes, which PowerCenter uses to move data across platforms. When the Integration Service reads data from a source, it converts the data from the PowerExchange data type to the transformation data type. When you run a session, the Integration Service performs transformations based on the transformation datatypes. When writing data to a target, the Integration Service converts the data based on the datatypes in the target definition.

The transformation data type for all ports in the Application Multi-Group Source Qualifier transformation are predefined. You cannot change the data type for any of the fields in the Application Multi-Group Source Qualifier transformations. For more information about transformation datatypes, see the PowerCenter Designer Guide.

Creating Source Qualifiers

By default, the PowerCenter Designer creates an Application Multi-Group Source Qualifier transformation when you add a non-relational source definition to a mapping. Similarly, it creates a Source Qualifier transformation when you add a relational source definition to a mapping.

If you configure the PowerCenter Designer to manually create a source qualifier when you add a source definition to a mapping, you must manually connect the source qualifier to the source definition.

For more information about source qualifiers, see the PowerCenter Transformation Guide.

Editing Source Qualifier Transformations

After you create a Source Qualifier transformation, you can edit the transformation. You cannot edit an Application Multi-Group Source Qualifier transformation. For more information about Source Qualifier transformations, see the PowerCenter Transformation Guide.

Working with Source Qualif iers 75

Page 92: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 76 Wednesday, December 12, 2007 10:19 AM

Using Lookup Transformations

This section discusses considerations for using lookup transformations with PWXPC for PowerExchange sources and targets. See the PowerCenter Transformation Guide for more information about Lookup transformations and lookup caching.

Use a Lookup transformation in a mapping to look up data, through PowerExchange, in a non-relational file or a relational table, view, or synonym. You can import a lookup definition for any flat file, non-relational file, or relational table to which both the PowerCenter Client and Integration Service can connect.

Usage Considerations for PowerExchange Sources and Targets

There are a number of unique usage considerations for using Lookup transformations with PowerExchange sources and targets. These are listed below:

♦ The Lookup transformation import process uses ODBC for non-relational files and relational tables.

To use PWXPC to import definitions for non-relational files or relational tables, first import the definitions using the Import from PowerExchange dialog box in either the Source Analyzer or Target Designer prior to configuring the lookup in the mapping.

♦ You can use PWXPC connections for lookup both non-relational files and relational tables:

− For relational tables, select the appropriate PWXPC relational connection for the database type, such as PWX DB2390, PWX DB2400, PWX DB2UDB, PWX Microsoft SQL Server, PWX Oracle, or PWX Sybase. See “Configuring Connections” on page 83 for connection configuration information.

− For non-relational files, select the PWXPC relational connection for NRDB lookups, PWX NRDB Lookup. See “NRDB Lookup Relational Connections” on page 96 for connection configuration information.

♦ When using Lookup transformations with a resume recovery strategy, select the “Lookup source is static” transformation attribute to avoid failures during session execution.

♦ When using Lookup transformations with IMS databases, careful consideration needs to be given to the fields used to perform the search of the IMS database. Concatenated keys (CCK) fields achieve the best performance with the least impact on the IMS database. For more information about search fields for IMS lookups, see “Configuring Lookups for IMS” on page 76.

♦ When using Lookup transformations for targets being updated with CDC data in the same mapping, use special custom properties to ensure change stream data is accessible across pipelines. For more information, see “Configuring Lookups for CDC Data” on page 77.

Configuring Lookups for IMS

Using keys is a fast and efficient method of retrieving data from IMS databases. PowerExchange allows you to build Concatenated Key (CCK) fields in the data map.

76 Chapter 3: Working with Mappings

Page 93: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 77 Wednesday, December 12, 2007 10:19 AM

Concatenated Key (CCK) fields allows PowerExchange to construct a fully-qualified Segment Search Argument (SSA) thereby improving IMS database search efficiency. See the PowerExchange IMS Adapter Guide for more information about creating CCK fields.

Fields specified in the Lookup condition transformation attribute are used by PowerExchange to create the Segment Search Argument (SSA). In order for a field to be used in the SSA, it must be marked as a key in the IMS source or target definition in Designer.

To provide search keys for IMS database lookups, use the following types of fields in the Lookup condition transformation attribute:

♦ Concatenated Key (CCK) fields. Specify these fields as keys in the IMS source or target definition and use them in the Lookup condition attribute. Using CCK fields results in the most efficient search of the IMS database.

♦ Key fields. Specify these fields as key in the IMS source or target definition and use them in the Lookup condition attribute. You can specify either the CCK field or the key field for the desired segment as both will exist in the IMS source or target definition. If the segment is not the root, a combination of both CCK fields and key fields will likely be needed in the Lookup condition.

♦ Search fields defined in the IMS Database Definition (DBD). Specify these as keys in the IMS source or target definition and use them in the Lookup condition attribute. If the segment does not have a key, IMS can still scan the IMS segments using an IMS search field. This type of search call is not as efficient as a keyed search with CCK fields or key fields. Assuming the root segment is keyed, include its CCK field with the search fields to limit the amount of data IMS scans and therefore the impact on the database.

♦ Non-key or non-search fields. The least efficient search method is to mark non-key fields or non-search fields as keys in the IMS source or target definition and in the Lookup condition attribute. This causes a scan of the IMS database to be done in order to find a match. This can adversely affect your IMS operational system and therefore should be avoided.

Tip: You can limit the amount of the database that will be scanned by specifying as many CCK and key fields as possible. If using Search fields, include as many CCK fields as possible and, at minimum, the root CCK field. Only use non-key or non-search fields as a last resort.

Configuring Lookups for CDC Data

Lookup transformations can be used in mappings extracting data from CDC sources including tables to which the CDC data is being applied.

If you are using dynamic lookups for CDC data and sharing the lookup cache with other static lookups in the same mapping, specify both of the following custom properties in the session Custom Properties attribute field on the Config Object tab:

♦ MergeCDCReaders=Yes

♦ SingleThreadExecutionModel=Yes

These custom properties remove any partition points from the PWXPC CDC Reader through the transformations to the Writer. As a result, the order of the changes read from the change

Using Lookup Transformations 77

Page 94: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 78 Wednesday, December 12, 2007 10:19 AM

stream is maintained until the changes reach the Writer. This then ensures that any CDC data placed into a dynamic lookup cache is accessible to lookups sharing that cache in other pipelines.

Warning: The use of these custom properties will impact session throughput as it will single-thread all source data from the Reader through to the Writer. As a result, these custom properties should only be specified when there is a need to share CDC data stored in a dynamic cache across pipeline.

78 Chapter 3: Working with Mappings

Page 95: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 79 Wednesday, December 12, 2007 10:19 AM

C h a p t e r 4

Configuring Connections

This chapter includes the following topics:

♦ Overview, 80

♦ DB2 Batch Mode Relational Database Connections, 86

♦ DB2 CDC Mode Application Connections, 89

♦ NRDB Batch Mode Application Connections, 92

♦ NRDB CDC Mode Application Connections, 93

♦ NRDB Lookup Relational Connections, 96

♦ MSSQL Batch Mode Relational Connections, 97

♦ MSSQL CDC Mode Application Connections, 99

♦ Oracle Batch Mode Relational Connections, 102

♦ Oracle CDC Mode Application Connections, 104

♦ Sybase Batch Mode Relational Connections, 107

♦ Configuring Connection Attributes, 108

♦ Understanding Commit Processing with PWXPC, 123

79

Page 96: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 80 Wednesday, December 12, 2007 10:19 AM

Overview

Before the Integration Service can access a source or target in a session, you must configure connections in the Workflow Manager. When you create or modify a session that reads from or writes to a database of file, you can select only configured source and target databases. Connections are saved in the repository.

For PowerExchange Client for PowerCenter, you configure relational database or application connections, depending upon the source or the target type.

Connection Types for Extracting Source Data

The connection you configure depends on the type of source data you want to extract and the extraction mode.

Table 4-1 describes the connections you create for data extraction based on the data source and the extraction mode:

Table 4-1. Connection Types for Extracting Source Data

Source Type Extraction Mode Connection Type Connection Name

Adabas Batch Application PWX NRDB Batch

Change Application PWX NRDB CDC Change

Real-Time Application PWX NRDB CDC Real Time

Datacom Batch Application PWX NRDB Batch

Change Application PWX NRDB CDC Change

Real-Time Application PWX NRDB CDC Real Time

DB2 for z/OS Batch Relational PWX DB2390

Change Application PWX DB2390 CDC Change

Real-Time Application PWX DB2390 CDC Real Time

DB2 for i5/OS Batch Relational PWX DB2400

Change Application PWX DB2400 CDC Change

Real-Time Application PWX DB2400 CDC Real Time

DB2 for Linux, UNIX, and Windows

Batch Relational PWX DB2UDB

Change n/a n/a

Real-Time Application PWX DB2UDB CDC Real Time

IDMS Batch Application PWX NRDB Batch

Change Application PWX NRDB CDC Change

Real-Time Application PWX NRDB CDC Real Time

80 Chapter 4: Configuring Connections

Page 97: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 81 Wednesday, December 12, 2007 10:19 AM

Connection Types for Loading Target Data

The connection you configure depends on the type of target data you want to load.

Table 4-2 describes the relational database connections you create to load data to supported PowerExchange targets:

IMS Batch Application PWX NRDB Batch

Change Application PWX NRDB CDC Change

Real-Time Application PWX NRDB CDC Real Time

Microsoft SQL Server

Batch Relational PWX MSSQLServer

Change n/a n/a

Real-Time Application PWX MSSQL CDC Real Time

Oracle Batch Relational PWX Oracle

Change Application PWX Oracle CDC Change

Real-Time Application PWX Oracle CDC Real Time

Sequential and flat files

Batch Application PWX NRDB Batch

Change n/a n/a

Real-Time n/a n/a

Sybase Batch Relational PWX Sybase

Change n/a n/a

Real-Time n/a n/a

VSAM Batch Application PWX NRDB Batch

Change Application PWX NRDB CDC Change

Real-Time Application PWX NRDB CDC Real Time

Table 4-2. Connection Types for Loading Target Data

Target Type Connection Connection Type

Adabas Application PWX NRDB Batch

DB2 for z/OS Relational PWX DB2390

DB2 for i5/OS Relational PWX DB2400

DB2 for Linux, UNIX, and Windows

Relational PWX DB2UDB

IMS Application PWX NRDB Batch

Table 4-1. Connection Types for Extracting Source Data

Source Type Extraction Mode Connection Type Connection Name

Overview 81

Page 98: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 82 Wednesday, December 12, 2007 10:19 AM

Microsoft SQL Server Relational PWX MSSQLServer

Oracle Relational PWX Oracle

Sequential and flat files Application PWX NRDB Batch

Sybase Relational PWX Sybase

VSAM Application PWX NRDB Batch

Table 4-2. Connection Types for Loading Target Data

Target Type Connection Connection Type

82 Chapter 4: Configuring Connections

Page 99: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 83 Wednesday, December 12, 2007 10:19 AM

Configuring Connections

The connection you configure depends upon the database or data structure.

Source and target connections can be configured for:

♦ Extracting data (Batch) from relational or non-relational sources.

♦ Extracting changed data (Change or Real-Time) from non-relational or relational sources.

♦ Loading data (Batch) to a relational target.

♦ Loading data (Batch) to a non-relational target.

For more information about available connection types, see Table 4-1 on page 80 and Table 4-2 on page 81.

To configure connections:

1. In the Workflow Manager, connect to a PowerCenter repository.

2. To configure a PowerExchange Batch relational database connection, click Connections > Relational. The Relational Connection Browser dialog box appears:

Figure 4-1. Relational Connection Browser

Configuring Connections 83

Page 100: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 84 Wednesday, December 12, 2007 10:19 AM

To configure a PowerExchange application connection, click Connections > Application. The Application Connection Browser dialog box appears:

In the Select Type field, select the type of connection you want to create. For a list of connections to configure according to data source and extraction mode, see Table 4-1 on page 80. For a list of connections to configure according to target data type, see Table 4-2 on page 81.

3. Click New.

Figure 4-2. Application Connection Browser

84 Chapter 4: Configuring Connections

Page 101: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 85 Wednesday, December 12, 2007 10:19 AM

The Connection Object Definition dialog box appears. The relational and application dialog boxes are very similar. An application dialog box is shown here:

4. Enter the values for the connection attributes. The various connection types are described in subsequent sections in this chapter.

5. Click OK.

The new connection appears in the Application or Relational Object Browser.

To edit or delete a relational database or application connections, select the connection from the list and click the appropriate button.

Figure 4-3. Application Connection Editor

Configuring Connections 85

Page 102: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 86 Wednesday, December 12, 2007 10:19 AM

DB2 Batch Mode Relational Database Connections

Configure relational database connections for DB2 for z/OS, DB2 for i5/OS, and DB2 for Linux, UNIX, and Windows to extract data and load data in batch mode to DB2 sources and targets.

Table 4-3 describes the connection attributes you configure for PWX DB2390, DB2400, and DB2UDB relational database connections:

Table 4-3. PWX DB2390, DB2400, and DB2UDB Relational Database Connection Attributes

Connection Attribute

RequiredDB2390DB2400DB2UDB

Description

Name Yes All Name of the relational database connection.

Code Page Yes All Select the code page for the Integration Server to use to extract data from the source database. Note: In Unicode mode, PWXPC sets the code page with this value overriding any code page specification in the PowerExchange configuration file.

Location Yes All Location of the source or target database as specified as a node in the PowerExchange configuration file dbmover.cfg.

Database Name Yes All DB2 subsystem or database instance name.

User Name Yes All User name for the database connected to.

Password Yes All Password for the user name.

Isolation Level Yes DB2400 Commit scope of the transaction. Default is CS.

Database file overrides

No DB2400 Overrides any occurrence of the specified filename (in any SQL statement) with the library/filename/member specified, regardless of whether the file is qualified or not. This includes any files qualified using Library List.Separate libraries with semicolons.

Note: If both Library List and Database file overrides are specified and a table exists both, the Database file overrides takes precedence.

Library List No DB2400 List of libraries that PowerExchange searches to qualify the table name for Select, Insert, Delete Or Update statements. PowerExchange searches the list if the table name is unqualified. Separate libraries with semicolons.

Note: If both Library List and Database file overrides are specified and a table exists both, the Database file overrides takes precedence.

Environment SQL No All SQL commands run in the database environment.

Compression No All Select to compress source data during the PowerCenter session. See “Configuring Encryption and Compression” on page 108.

86 Chapter 4: Configuring Connections

Page 103: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 87 Wednesday, December 12, 2007 10:19 AM

Encryption Type Yes All Select the encryption type. See “Configuring Encryption and Compression” on page 108.

Encryption Level No All Select the encryption level. See “Configuring Encryption and Compression” on page 108.

Pacing Size Yes All Enter the pacing size. See “Configuring Pacing” on page 109.

Interpret as Rows No All Specifies whether, or not, pacing size is in number of rows.See “Configuring Pacing” on page 109.

Bulk Load* No DB2390 Select to cause PowerExchange to load data to DB2 for z/OS targets using the DB2LOAD utility. If you select this option, you can configure the remaining connection attributes. Otherwise, the PowerExchange ignores these attributes.

Filename* No DB2390 Specifies the data set prefix PowerExchange uses to create the temporary files needed when using the DB2 LOAD utility to load data into a DB2 table.

Space* Yes DB2390 Enter one of the following values to allocate MVS space in tracks or cylinders:- TRACK- CYLINDERDefault is TRACK.

Primary Space* Yes DB2390 Value for the primary space on MVS. Default is 0.

Secondary Space* Yes DB2390 Value for the secondary space on MVS. Default is 0.

Delete Temporary Files*

Yes DB2390 Specifies how PowerExchange should handle the temporary files it creates when using the DB2 LOAD utility to load data into a DB2 table. Select one of the following values:- NO does not delete the temporary files.- BEFORE deletes the temporary files before running the utility.- AFTER SUCCESS ONLY deletes the temporary files after

running the utility if it ends with a return code 0.- AFTER deletes the temporary files after running the utility.Default is NO.

JCL Template* Yes DB2390 Specifies the name of the JCL template for the DB2 LOAD utility on the PowerExchange target system. Default is DB2LDJCL.

CTL Template* Yes DB2390 Specifies the name of the control file template for the DB2 LOAD utility on the PowerExchange on the target system. Default is DB2LDCTL.

Table 4-3. PWX DB2390, DB2400, and DB2UDB Relational Database Connection Attributes

Connection Attribute

RequiredDB2390DB2400DB2UDB

Description

DB2 Batch Mode Relat ional Database Connections 87

Page 104: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 88 Wednesday, December 12, 2007 10:19 AM

Load Options* Yes DB2390 Specifies how PowerExchange should handle the data when using the DB2 LOAD utility to load data into a DB2 table. Select one of the following values:- INSERT- REPLACEDefault is INSERT.

Mode Type* Yes DB2390 Specifies how PowerExchange should run the DB2 LOAD utility to load data into a DB2 table. Select one of the following values:- TASK runs the LOAD utility as a sub-task under the

PowerExchange Listener.- JOB submits a separate job to run the DB2 LOAD utility.- NOSUBMIT creates the files and JCL to run the DB2 LOAD utility

but does not submit the job.Default is TASK.

Mode Time* Yes DB2390 Specifies how PowerExchange handles the execution of the DB2 LOAD utility. Select one of the following values:- WAIT waits for the job to end before returning control to

PowerCenter. WAIT can only be specified with Mode Type JOB or TASK.

- NO WAIT returns to PowerCenter without waiting for the job to end. NO WAIT can only be specified with Mode Type JOB or NOSUBMIT.

- TIMED waits the number of seconds specified In TIme before returning control to PowerCenter. TIMED can only be specified with Mode Type JOB.

- DATAONLY creates the files and JCL to run the DB2 LOAD utility but does not submit the job.

Default is WAIT.

Time* Yes DB2390 Specifies the wait time in seconds when you select JOB for the Mode Type and TIMED for Mode Time.Valid values are 1 to 99998.Default is 0.

Convert character data to string

No All Convert embedded nulls in character fields to spaces.See “Converting Character Data to Strings” on page 110.Default is no.

Write Mode No All Select the write mode. See “Configuring Write Mode” on page 111.Default is Confirm Write On.

Reject File No All Overrides the default prefix of PWXR for the reject file.PowerExchange creates the reject file on the target machine when the Write Mode is Asynchronous with Fault Tolerance.

Note: Specifying PWXDISABLE will prevent creation of the reject files.

See the PowerExchange Reference Manual for further information.

*For more information, see the PowerExchange Reference Manual.

Table 4-3. PWX DB2390, DB2400, and DB2UDB Relational Database Connection Attributes

Connection Attribute

RequiredDB2390DB2400DB2UDB

Description

88 Chapter 4: Configuring Connections

Page 105: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 89 Wednesday, December 12, 2007 10:19 AM

DB2 CDC Mode Application Connections

Configure application connections to extract data from DB2 for z/OS and DB2 for i5/OS in real-time or change modes. Configure application connections to extract data from DB2 for Linux, UNIX, and Windows in real-time mode. For a list of connections to configure according to data source and extraction mode, see Table 4-1 on page 80.

Table 4-4 describes the connection attributes you configure for DB2390, DB2400 and DB2UDB application connections:

Table 4-4. DB2390, DB2400, and DB2UDB CDC Mode Application Connection Attributes

Connection Attribute

RequiredChange orReal-time

Description

Name Yes Both Name of the relational database connection.

Code Page Yes Both Select the code page for the Integration Service to use to extract data from the source database.

Note: In Unicode mode, PWXPC sets the code page with this value overriding any code page specification in the PowerExchange configuration file.

Location Yes Both Location of the source or target database as specified as a node in the PowerExchange configuration file dbmover.cfg.

User Name Yes Both User name for DB2.

Password Yes Both Password for the user name.

Compression No Both Select to compress source data during the PowerCenter session. See “Configuring Encryption and Compression” on page 108.

Encryption Type Yes Both Select the encryption type. See “Configuring Encryption and Compression” on page 108.

Encryption Level No Both Select the encryption level. See “Configuring Encryption and Compression” on page 108.

Pacing Size Yes Both Enter the pacing size. See “Configuring Pacing” on page 109.

Interpret as Rows No Both Specifies whether, or not, pacing size is in number of rows.See “Configuring Pacing” on page 109.

Image Type No Both Select the image type. See “Configuring Image Type” on page 113.Default is BA.

Application Name No Both Specify the Application Name. See “Configuring CDC Restart Attributes” on page 117.Default is the first 20 characters of the workflow name.

RestartToken File Folder

Yes Both Specify the Restart token folder.See “Configuring CDC Restart Attributes” on page 117.Default is $PMRootDir/Restart.

DB2 CDC Mode Application Connections 89

Page 106: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 90 Wednesday, December 12, 2007 10:19 AM

RestartToken File Name

No Both Specify the Restart token file. See “Configuring CDC Restart Attributes” on page 117.Default is the Application Name if specified or the workflow name if Application Name is not specified.

Number of Runs to Keep RestartToken File

No Both Specify the maximum number of backup copies to keep of the Restart Token File. See “Managing Session Log and Restart Token File History” on page 175.Default is 0.

Recovery Cache Folder

No Both Specify file cache folder to enable recovery for the session. See “Enabling Session Recovery” on page 165.Default is $PMRootDir/Cache.

UOW Count No Both Specifies the number of units of work (UOWs) you want the PWXPC to read from the source before flushing data to the target.

If you enter: -1 = UOW count is not used0 = UOW count is not used n = n is the count of UOWs

See “Configuring UOW Count” on page 118 and “Understanding Commit Processing with PWXPC” on page 123.Default is 1.

Reader Time Limit No Real Time Specifies the number of seconds that Integration Service reads data from the source before stopping. If you enter 0, Reader Time Limit does not limit the reader time. This attribute is intended for testing purposes only.Tip: Use Idle Time instead of Reader Time Limit. Default is 0.

Idle Time No Real Time Specifies the number of seconds the PowerExchange Listener remains idle after reaching the end of the change log (as indicated by message PWX-09967) before returning an end-of-file (EOF).

If you enter:-1 = EOF is never retuned; the session runs continuously.0 = EOF is returned at the end of log; the session terminates successfully.n = n is the number of seconds.

See “Configuring Idle Time” on page 115.Default is -1.

Table 4-4. DB2390, DB2400, and DB2UDB CDC Mode Application Connection Attributes

Connection Attribute

RequiredChange orReal-time

Description

90 Chapter 4: Configuring Connections

Page 107: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 91 Wednesday, December 12, 2007 10:19 AM

Real-Time Flush Latency

No Real Time Specifies the milliseconds between buffer flushes. Valid values are between 0 and 86400 milliseconds. PWXPC sets values between 0 and 2000 to 2000.See “Configuring Real-Time Flush Latency” on page 119.Default is 0.

Commit Threshold No Real Time Specifies the number of change records (not UOWs) after which a commit should be inserted into the change stream. See “Configuring Commit Threshold” on page 121.Default is 0.

Journal Name* No Both Overrides the library and journal name in the PowerExchange CAPI_CONNECTION.Specify complete library and journal names in the format:library/journal

Library/File Override*

No Both Overrides the library and file name in the extraction map.Specify complete library and file names in the format:library/fileThis attribute overrides the Library/File Override value on the application connection.Warning: Do not specify an asterisk for library name if using PWXPC restart.

Convert character data to string

No Both Converts embedded nulls in character fields to spaces.See “Converting Character Data to Strings” on page 110.Default is no.

Event Table No Real Time Specifies the PowerExchange extraction map name used for event processing.See “Configuring Event Table Processing” on page 114..

CAPI Connection Name Override

No Real Time Overrides the default CAPI connection name.See “Configuring the CAPI Connection Name Override” on page 115.

Retrieve PWX Log Entries

No Both Includes all related PowerExchange log entries in the session log. See “Retrieving PWX Log Entries” on page 112.

* These attributes only apply to PWX CDC DB2400 Real Time application connections.

Table 4-4. DB2390, DB2400, and DB2UDB CDC Mode Application Connection Attributes

Connection Attribute

RequiredChange orReal-time

Description

DB2 CDC Mode Application Connections 91

Page 108: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 92 Wednesday, December 12, 2007 10:19 AM

NRDB Batch Mode Application Connections

Configure application connections to extract data from non-relational databases (NRDB) in batch mode. For a list of connections to configure according to data source and extraction mode, see Table 4-1 on page 80.

Table 4-5 describes the connection attributes you configure for non-relational batch mode application connections:

Table 4-5. NRDB Batch Mode Application Connection Attributes

Connection Attribute

Required Description

Name Yes Name of the relational database connection.

Code Page Yes Select the code page for the Integration Service to use to extract data from the source database.

Note: In Unicode mode, PWXPC sets the code page with this value overriding any code page specification in the PowerExchange configuration file.

Location Yes Location of the source or target database as specified as a node in the PowerExchange configuration file dbmover.cfg.

User Name Yes User name for the database being connected to.

Password Yes Password for the user name.

Compression No Select to compress source data during the PowerCenter session. See “Configuring Encryption and Compression” on page 108.

Encryption Type No Select the encryption type. See “Configuring Encryption and Compression” on page 108.

Encryption Level No Select the encryption level. See “Configuring Encryption and Compression” on page 108.

Pacing Size No Enter the pacing size. See “Configuring Pacing” on page 109.

Interpret as Rows No Specifies whether, or not, pacing size is in number of rows.See “Configuring Pacing” on page 109.

Confirm Write No Selects the write mode. See “Configuring Write Mode” on page 111.Default is Confirm Write On.

Convert character data to string

No Convert embedded nulls in character fields to spaces.See “Converting Character Data to Strings” on page 110.Default is no.

Retrieve PWX Log Entries

No Include all related PowerExchange log entries in the session log.

92 Chapter 4: Configuring Connections

Page 109: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 93 Wednesday, December 12, 2007 10:19 AM

NRDB CDC Mode Application Connections

Configure application connections to extract data from non-relational databases in change mode or real-time mode. For a list of connections to configure according to data source and extraction mode, see Table 4-1 on page 80.

Table 4-6 describes the connection attributes you configure for non-relational database change and real-time mode application connections:

Table 4-6. NRDB CDC Mode Application Connection Attributes

Connection Attribute

RequiredChange orReal-time

Description

Name Yes Both Name of the application connection.

Code Page Yes Both Select the code page for the Integration Service to use to extract data from the source database.

Note: In Unicode mode, PWXPC sets the code page with this value overriding any code page specification in the PowerExchange configuration file.

Location Yes Both Location of the source or target database as specified as a node in the PowerExchange configuration file dbmover.cfg.

User Name Yes Both User name for the database being connected to.

Password Yes Both Password for the user name.

Compression No Both Select to compress source data during the PowerCenter session. See “Configuring Encryption and Compression” on page 108.

Encryption Type Yes Both Select the encryption type. See “Configuring Encryption and Compression” on page 108.

Encryption Level No Both Select the encryption level. See “Configuring Encryption and Compression” on page 108.

Pacing Size Yes Both Enter the pacing size. See “Configuring Pacing” on page 109.

Interpret as Rows No Both Specifies whether, or not, pacing size is in number of rows.See “Configuring Pacing” on page 109.

Image Type No Both Select the image type. See “Configuring Image Type” on page 113.Default is BA.

Application Name No Both Specify the Application Name. See “Configuring CDC Restart Attributes” on page 117.Default is the first 20 characters of the workflow name.

RestartToken File Folder

Yes Both Specify the Restart token folder.See “Configuring CDC Restart Attributes” on page 117.Default is $PMRootDir/Restart.

NRDB CDC Mode Application Connections 93

Page 110: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 94 Wednesday, December 12, 2007 10:19 AM

RestartToken File Name

No Both Specify the Restart token file. See “Configuring CDC Restart Attributes” on page 117.Default is the Application Name if specified or the workflow name if Application Name is not specified.

Number of Runs to Keep RestartToken File

No Both Specify the maximum number of backup copies to keep of the Restart Token File. See “Managing Session Log and Restart Token File History” on page 175.Default is 0.

Recovery Cache Folder

No Both Specify file cache folder to enable recovery for the session. See “Enabling Session Recovery” on page 165.Default is $PMRootDir/Cache.

UOW Count No Both Specifies the number of units of work (UOWs) you want the PWXPC to read from the source before flushing data to the target.

If you enter: -1 = UOW count is not used0 = UOW count is not used n = n is the count of UOWs

See “Configuring UOW Count” on page 118 and “Understanding Commit Processing with PWXPC” on page 123.Default is 1.

Reader Time Limit No Real Time Specifies the number of seconds that Integration Service reads data from the source before stopping. If you enter 0, Reader Time Limit does not limit the reader time. This attribute is intended for testing purposes only.Tip: Use Idle Time instead of Reader Time Limit. Default is 0.

Idle Time No Real Time Specifies the number of seconds the PowerExchange Listener remains idle after reaching the end of the change log (as indicated by message PWX-09967) before returning an end-of-file (EOF).

If you enter:-1 = EOF is never retuned; the session runs continuously.0 = EOF is returned at the end of log; the session terminates successfully.n = n is the number of seconds.

See “Configuring Idle Time” on page 115.Default is -1.

Table 4-6. NRDB CDC Mode Application Connection Attributes

Connection Attribute

RequiredChange orReal-time

Description

94 Chapter 4: Configuring Connections

Page 111: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 95 Wednesday, December 12, 2007 10:19 AM

Real-Time Flush Latency

No Real Time Specifies the milliseconds between buffer flushes. Valid values are between 0 and 86400 milliseconds. PWXPC sets values between 0 and 2000 to 2000.See “Configuring Real-Time Flush Latency” on page 119.Default is 0.

Commit Threshold No Real Time Specifies the number of change records (not UOWs) after which a commit should be inserted into the change stream. See “Configuring Commit Threshold” on page 121.Default is 0.

Convert character data to string

No Both Convert embedded nulls in character fields to spaces.See “Converting Character Data to Strings” on page 110.Default is no.

Event Table No Real Time Specifies the PowerExchange extraction map name used for event processing.See “Configuring Event Table Processing” on page 114.

CAPI Connection Name Override

No Real Time Overrides the default CAPI connection name. See “Configuring the CAPI Connection Name Override” on page 115

Retrieve PWX Log Entries

No Both Include all related PowerExchange log entries in the session log.

Table 4-6. NRDB CDC Mode Application Connection Attributes

Connection Attribute

RequiredChange orReal-time

Description

NRDB CDC Mode Application Connections 95

Page 112: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 96 Wednesday, December 12, 2007 10:19 AM

NRDB Lookup Relational Connections

Configure NRDB Lookup relational database connections when using lookups to extract data from PowerExchange non-relational source and target definitions. For more information about using lookups for non-relational definitions, see “Using Lookup Transformations” on page 76.

Table 4-7 describes the connection attributes you configure for NRDB Lookup relational database connections:

Table 4-7. NRDB Lookup Relational Connection Attributes

Connection Attribute

Required Description

Name Yes Name of the relational database connection.

Code Page Yes Select the code page for the Integration Service to use to extract data from the source database.

Note: In Unicode mode, PWXPC sets the code page with this value overriding any code page specification in the PowerExchange configuration file.

Location Yes Location of the source or target database as specified as a node in the PowerExchange configuration file dbmover.cfg.

User Name Yes User name for the Listener being connected to.

Password Yes Password for the user name.

Environment SQL No SQL commands run in the database environment.

Compression No Select to compress source data during the PowerCenter session. See “Configuring Encryption and Compression” on page 108.

Encryption Type No Select the encryption type. See “Configuring Encryption and Compression” on page 108.

Encryption Level No Select the encryption level. See “Configuring Encryption and Compression” on page 108.

Pacing Size No Enter the pacing size. See “Configuring Pacing” on page 109.

Interpret as Rows No Specifies whether, or not, pacing size is in number of rows.See “Configuring Pacing” on page 109.

Convert character data to string

No Convert embedded nulls in character fields to spaces.See “Converting Character Data to Strings” on page 110.Default is no.

96 Chapter 4: Configuring Connections

Page 113: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 97 Wednesday, December 12, 2007 10:19 AM

MSSQL Batch Mode Relational Connections

Configure relational database connections for Microsoft SQL Server to extract data and load data in batch mode to SQL Server sources and targets.

Table 4-8 describes the connection attributes you configure for Microsoft SQL Server relational database connections:

Table 4-8. MSSQL Batch Mode Relational Connection Attributes

Connection Attribute

Required Description

Name Yes Name of the relational database connection.

Code Page Yes Select the code page for the Integration Service to use to extract data from the source database.

Note: In Unicode mode, PWXPC sets the code page with this value overriding any code page specification in the PowerExchange configuration file.

Location Yes Location of the source or target database as specified as a node in the PowerExchange configuration file dbmover.cfg.

Server Name Yes Name of the SQL Server instance.

Database Name Yes Name of the database in the SQL Server instance.

User Name Yes User name for the database being connected to.

Password Yes Password for the user name.

Environment SQL No SQL commands run in the database environment.

Compression No Select to compress source data during the PowerCenter session. For more information, see “Configuring Encryption and Compression” on page 108.

Encryption Type No Select the encryption type. For more information, see “Configuring Encryption and Compression” on page 108.Default is None.

Encryption Level No Select the encryption level. For more information, see “Configuring Encryption and Compression” on page 108.Default is 1.

Pacing Size No Enter the pacing size. For more information, see “Configuring Pacing” on page 109.Default is 0.

Interpret as Rows No Specifies whether, or not, pacing size is in number of rows. For more information, see “Configuring Pacing” on page 109.

MSSQL Batch Mode Relational Connections 97

Page 114: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 98 Wednesday, December 12, 2007 10:19 AM

Convert character data to string

No Convert embedded nulls in character fields to spaces.See “Converting Character Data to Strings” on page 110.Default is no.

Write Mode No Select the write mode. See “Configuring Write Mode” on page 111.Default is Confirm Write On.

Table 4-8. MSSQL Batch Mode Relational Connection Attributes

Connection Attribute

Required Description

98 Chapter 4: Configuring Connections

Page 115: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 99 Wednesday, December 12, 2007 10:19 AM

MSSQL CDC Mode Application Connections

Configure a PWX MSSQL CDC Real Time application connection to extract data from Microsoft SQL Server in real-time mode.

Table 4-9 describes the connection attributes you configure for Microsoft SQL Server real-time mode application connections:

Table 4-9. MSSQL CDC Mode Application Connection Attributes

Connection Attribute

Required Description

Name Yes Name of the application connection.

Code Page Yes Select the code page for the Integration Service to use to extract data from the source database.

Note: In Unicode mode, PWXPC sets the code page with this value overriding any code page specification in the PowerExchange configuration file.

Location Yes Location of the source or target database as specified as a node in the PowerExchange configuration file dbmover.cfg.

User Name Yes User name for the Microsoft SQL Server database.

Password Yes Password for the user name.

Compression No Select to compress source data during the PowerCenter session. See “Configuring Encryption and Compression” on page 108.

Encryption Type Yes Select the encryption type. See “Configuring Encryption and Compression” on page 108.

Encryption Level No Select the encryption level. See “Configuring Encryption and Compression” on page 108.

Pacing Size Yes Enter the pacing size. See “Configuring Pacing” on page 109.

Interpret as Rows No Specifies whether, or not, pacing size is in number of rows.See “Configuring Pacing” on page 109.

Image Type No Select the image type. See “Configuring Image Type” on page 113.Default is BA.

Application Name No Specify the Application Name. See “Configuring CDC Restart Attributes” on page 117.Default is the first 20 characters of the workflow name.

RestartToken File Folder

Yes Specify the Restart token folder.See “Configuring CDC Restart Attributes” on page 117.Default is $PMRootDir/Restart.

RestartToken File Name

No Specify the Restart token file. See “Configuring CDC Restart Attributes” on page 117.Default is the Application Name if specified or the workflow name if Application Name is not specified.

MSSQL CDC Mode Application Connections 99

Page 116: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 100 Wednesday, December 12, 2007 10:19 AM

Number of Runs to Keep RestartToken File

No Specify the maximum number of backup copies to keep of the Restart Token File. See “Managing Session Log and Restart Token File History” on page 175.Default is 0.

Recovery Cache Folder

No Specify file cache folder to enable recovery for the session. See “Enabling Session Recovery” on page 165.Default is $PMRootDir/Cache.

UOW Count No Specifies the number of units of work (UOWs) you want the PWXPC to read from the source before flushing data to the target.

If you enter: -1 = UOW count is not used0 = UOW count is not used n = n is the count of UOWs

See “Configuring UOW Count” on page 118 and “Understanding Commit Processing with PWXPC” on page 123.Default is 1.

Reader Time Limit No Specifies the number of seconds that Integration Service reads data from the source before stopping. If you enter 0, Reader Time Limit does not limit the reader time. This attribute is intended for testing purposes only.Tip: Use Idle Time instead of Reader Time Limit. Default is 0.

Idle Time No Specifies the number of seconds the PowerExchange Listener remains idle after reaching the end of the change log (as indicated by message PWX-09967) before returning an end-of-file (EOF).

If you enter:-1 = EOF is never retuned; the session runs continuously.0 = EOF is returned at the end of log; the session terminates successfully.n = n is the number of seconds.

See “Configuring Idle Time” on page 115.Default is -1.

Real-Time Flush Latency

No Specifies the milliseconds between buffer flushes. Valid values are between 0 and 86400 milliseconds. PWXPC sets values between 0 and 2000 to 2000.See “Configuring Real-Time Flush Latency” on page 119.Default is 0.

Commit Threshold No Specifies the number of change records (not UOWs) after which a commit should be inserted into the change stream. See “Configuring Commit Threshold” on page 121.Default is 0.

Table 4-9. MSSQL CDC Mode Application Connection Attributes

Connection Attribute

Required Description

100 Chapter 4: Configuring Connections

Page 117: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 101 Wednesday, December 12, 2007 10:19 AM

Convert character data to string

No Convert embedded nulls in character fields to spaces.See “Converting Character Data to Strings” on page 110.Default is no.

Event Table No Specifies the PowerExchange extraction map name used for event processing.See“Configuring Event Table Processing” on page 114.

CAPI Connection Name Override

No Overrides the default CAPI connection name.See “Configuring the CAPI Connection Name Override” on page 115.

Retrieve PWX Log Entries

No Include all related PowerExchange log entries in the session log.

Table 4-9. MSSQL CDC Mode Application Connection Attributes

Connection Attribute

Required Description

MSSQL CDC Mode Application Connections 101

Page 118: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 102 Wednesday, December 12, 2007 10:19 AM

Oracle Batch Mode Relational Connections

Configure relational database connections for Oracle to extract data and load data in batch mode to Oracle sources and targets.

Table 4-10 describes the connection attributes you configure for Oracle relational database connections:

Table 4-10. Oracle Batch Mode Relational Connection Attributes

Connection Attribute

Required Description

Name Yes Name of the relational database connection.

Code Page Yes Select the code page for the Integration Service to use to extract data from the source database.

Note: In Unicode mode, PWXPC sets the code page with this value overriding any code page specification in the PowerExchange configuration file.

Location Yes Location of the source or target database as specified as a node in the PowerExchange configuration file dbmover.cfg.

TNS Name Yes Net Service Name of the Oracle instance.

User Name Yes User name for the database being connected to.

Password Yes Password for the user name.

Environment SQL No SQL commands run in the database environment.

Compression No Select to compress source data during the PowerCenter session. See “Configuring Encryption and Compression” on page 108.

Encryption Type No Select the encryption type. See “Configuring Encryption and Compression” on page 108.

Encryption Level No Select the encryption level. See “Configuring Encryption and Compression” on page 108.

Pacing Size No Enter the pacing size. See “Configuring Pacing” on page 109.

Interpret as Rows No Specifies whether, or not, pacing size is in number of rows.See “Configuring Pacing” on page 109.

Convert character data to string

No Convert embedded nulls in character fields to spaces.See “Converting Character Data to Strings” on page 110.Default is no.

102 Chapter 4: Configuring Connections

Page 119: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 103 Wednesday, December 12, 2007 10:19 AM

Write Mode No Select the write mode. See “Configuring Write Mode” on page 111.Default is Confirm Write On.

Reject File No Overrides the default prefix of PWXR for the reject file.PowerExchange creates the reject file on the target machine when the Write Mode is Asynchronous with Fault Tolerance.

Note: Specifying PWXDISABLE will prevent creation of the reject files.

See the PowerExchange Reference Manual for further information.

Table 4-10. Oracle Batch Mode Relational Connection Attributes

Connection Attribute

Required Description

Oracle Batch Mode Relat ional Connections 103

Page 120: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 104 Wednesday, December 12, 2007 10:19 AM

Oracle CDC Mode Application Connections

Configure a PWX Oracle Change Capture Real Time application connection to extract data from Oracle in real-time mode.

Table 4-11 describes the connection attributes you configure for Oracle real-time mode application connections:

Table 4-11. Oracle CDC Mode Application Connection Attributes

Connection Attribute

RequiredChange orReal-time

Description

Name Yes Both Name of the application connection.

Code Page Yes Both Select the code page for the Integration Service to use to extract data from the source database.

Note: In Unicode mode, PWXPC sets the code page with this value overriding any code page specification in the PowerExchange configuration file.

Location Yes Both Location of the source or target database as specified as a node in the PowerExchange configuration file dbmover.cfg.

User Name Yes Both User name for Oracle.

Password Yes Both Password for the user name.

Compression No Both Select to compress source data during the PowerCenter session. See “Configuring Encryption and Compression” on page 108.

Encryption Type Yes Both Select the encryption type. See “Configuring Encryption and Compression” on page 108.

Encryption Level No Both Select the encryption level. See “Configuring Encryption and Compression” on page 108.

Pacing Size Yes Both Enter the pacing size. See “Configuring Pacing” on page 109.

Interpret as Rows No Both Specifies whether, or not, pacing size is in number of rows.See “Configuring Pacing” on page 109.

Image Type No Both Select the image type. See “Configuring Image Type” on page 113.Default is BA.

Application Name No Both Specify the Application Name. See “Configuring CDC Restart Attributes” on page 117.Default is the first 20 characters of the workflow name.

RestartToken File Folder

Yes Both Specify the Restart token folder.See “Configuring CDC Restart Attributes” on page 117.Default is $PMRootDir/Restart.

104 Chapter 4: Configuring Connections

Page 121: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 105 Wednesday, December 12, 2007 10:19 AM

RestartToken File Name

No Both Specify the Restart token file. See “Configuring CDC Restart Attributes” on page 117.Default is the Application Name if specified or the workflow name if Application Name is not specified.

Number of Runs to Keep RestartToken File

No Both Specify the maximum number of backup copies to keep of the Restart Token File. See “Managing Session Log and Restart Token File History” on page 175.Default is 0.

Recovery Cache Folder

No Both Specify file cache folder to enable recovery for the session. See “Enabling Session Recovery” on page 165.Default is $PMRootDir/Cache.

UOW Count No Both Specifies the number of units of work (UOWs) you want the PWXPC to read from the source before flushing data to the target.

If you enter: -1 = UOW count is not used0 = UOW count is not used n = n is the count of UOWs

See “Configuring UOW Count” on page 118 and “Understanding Commit Processing with PWXPC” on page 123.Default is 1.

Reader Time Limit No Real Time Specifies the number of seconds that Integration Service reads data from the source before stopping. If you enter 0, Reader Time Limit does not limit the reader time. This attribute is intended for testing purposes only.Tip: Use Idle Time instead of Reader Time Limit. Default is 0.

Idle Time No Real Time Specifies the number of seconds the PowerExchange Listener remains idle after reaching the end of the change log (as indicated by message PWX-09967) before returning an end-of-file (EOF).

If you enter:-1 = EOF is never retuned; the session runs continuously.0 = EOF is returned at the end of log; the session terminates successfully.n = n is the number of seconds.

See “Configuring Idle Time” on page 115.Default is -1.

Table 4-11. Oracle CDC Mode Application Connection Attributes

Connection Attribute

RequiredChange orReal-time

Description

Oracle CDC Mode Application Connections 105

Page 122: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 106 Wednesday, December 12, 2007 10:19 AM

Real-Time Flush Latency

No Real Time Specifies the milliseconds between buffer flushes. Valid values are between 0 and 86400 milliseconds. PWXPC sets values between 0 and 2000 to 2000.See “Configuring Real-Time Flush Latency” on page 119.Default is 0.

Commit Threshold No Real Time Specifies the number of change records (not UOWs) after which a commit should be inserted into the change stream. See “Configuring Commit Threshold” on page 121.Default is 0.

Instance Name No Real Time Overrides the instance information in the ORACLEID statement in the PowerExchange configuration file (dbmover.cfg). For more information, see the PowerExchange Oracle Adapter Guide.

Connect String No Real Time Overrides the connection value in the ORACLEID statement in the PowerExchange configuration file (dbmover.cfg). For more information, see the PowerExchange Oracle Adapter Guide.

Source Schema Name

No Both Overrides the schema name for a group of registrations. For more information, see the PowerExchange Oracle Adapter Guide.

Convert character data to string

No Both Convert embedded nulls in character fields to spaces.See “Converting Character Data to Strings” on page 110.Default is no.

Event Table No Real Time Specifies the PowerExchange extraction map name used for event processing.See “Configuring Event Table Processing” on page 114..

CAPI Connection Name Override

No Real Time Overrides the default CAPI connection name.See “Configuring the CAPI Connection Name Override” on page 115

Retrieve PWX Log Entries

No Both Include all related PowerExchange log entries in the session log.

Table 4-11. Oracle CDC Mode Application Connection Attributes

Connection Attribute

RequiredChange orReal-time

Description

106 Chapter 4: Configuring Connections

Page 123: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 107 Wednesday, December 12, 2007 10:19 AM

Sybase Batch Mode Relational Connections

Configure relational database connections for Sybase to extract data and load data in batch mode to Oracle sources and targets.

Table 4-12 describes the connection attributes you configure for Sybase relational database connections:

Table 4-12. Sybase Batch Mode Relational Connection Attributes

Connection Attribute

Required Description

Name Yes Name of the relational database connection.

Code Page Yes Select the code page for the Integration Service to use to extract data from the source database.

Note: In Unicode mode, PWXPC sets the code page with this value overriding any code page specification in the PowerExchange configuration file.

Location Yes Location of the source or target database as specified as a node in the PowerExchange configuration file dbmover.cfg.

Server Name Yes Name of the Sybase instance.

Database Name Yes Name of the database in the Sybase instance.

User Name Yes User name for the database being connected to.

Password Yes Password for the user name.

Environment SQL No SQL commands run in the database environment.

Compression No Select to compress source data during the PowerCenter session. See “Configuring Encryption and Compression” on page 108.

Encryption Type No Select the encryption type. See “Configuring Encryption and Compression” on page 108.

Encryption Level No Select the encryption level. See “Configuring Encryption and Compression” on page 108.

Pacing Size No Enter the pacing size. See “Configuring Pacing” on page 109.

Interpret as Rows No Specifies whether, or not, pacing size is in number of rows.See “Configuring Pacing” on page 109.

Convert character data to string

No Convert embedded nulls in character fields to spaces.See “Converting Character Data to Strings” on page 110.Default is no.

Write Mode No Select the write mode. See “Configuring Write Mode” on page 111.Default is Confirm Write On.

Sybase Batch Mode Relational Connections 107

Page 124: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 108 Wednesday, December 12, 2007 10:19 AM

Configuring Connection Attributes

The connection attributes you configure depend on how you want to run the PowerCenter session to extract data from the source. This is not the complete list of all attributes that can be configured. The complete list of attributes for all connections is documented in preceding sections of this chapter under the various connection types.

Some of the connection attributes that you can choose are:

♦ Common connection attributes:

− Encryption and compression

− Pacing

− Convert character data to string

♦ Batch application and relational connection attributes:

− Write Mode

− Retrieve PWX log entries

♦ CDC-specific connection attributes:

− Image type

− Event Table

− CAPI Connection Name

− Idle time

− CDC Restart

− UOW Count

− Real-Time Flush Latency

− Commit Threshold

Common Connection Attributes

The attributes discussed in this section are common to both the PWXPC relational and application connection types.

Configuring Encryption and Compression

When you configure connections to extract and load data from PowerExchange, you can set encryption and compression values to encrypt and compress data during the PowerCenter session. See the PowerExchange Reference Manual for additional information.

108 Chapter 4: Configuring Connections

Page 125: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 109 Wednesday, December 12, 2007 10:19 AM

Table 4-13 describes the compression and encryption attributes:

Configuring Pacing

You can configure the pacing size to slow the data transfer rate from the PowerExchange Listener. The pacing size determines the amount of data the PowerExchange Listener passes to the source or target. Configure the pacing size if an external application, database, or the Integration Service node is a bottleneck during the session. For more information about pacing size, see the PowerExchange Reference Manual.

Table 4-14 describes the pacing attributes:

Table 4-13. Encryption and Compression Connection Attributes

Connection Attribute Required Description

Compression No Select to compress source data during the PowerCenter session.

Encryption Type Yes Select one of the following values for the encryption type:- None - RC2 - DES

Default is None.

Encryption Level Yes If you select None for Encryption Type, then PowerExchange ignores this value.

If you select RC2 or DES for Encrypt, enter one of the following values for the encryption level:

1 = 56-bit key encryption.2 = For DES; Triple DES 164 bit key encryption. For RC2; 64 bit key encryption.3 = For DES; Triple DES 164 bit key encryption For RC2; 64 bit key encryption.

Default is 1.

Table 4-14. Pacing Size Connection Attributes

Connection Attribute Required Description

Pacing Size No Enter the amount of data the source system can pass to the PowerExchange Listener. The lower the value, the faster the session performance.

Minimum value is 0. Enter 0 for maximum performance.

Default is 0.

Interpret as Rows No Select to represent the pacing size in number of rows. If you clear this option, the pacing size represents kilobytes.

This option is selected by default.

Configuring Connection Attributes 109

Page 126: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 110 Wednesday, December 12, 2007 10:19 AM

Converting Character Data to Strings

Some data fields that are mapped as character fields actually contain non-character data in the field; specifically a null or low value (x’00’). This usually occurs when a single field is usually a collection of sub-fields. Nulls (x’00’) are used as delimiters between the sub-field values. However, there is no explicit mapping of the sub-field other than in the application reading the data.

When this data is extracted by PowerCenter, it is truncated when the first null indicator (x’00’) is detected. So, the entire contents of the field cannot be extracted and then manipulated in PowerCenter. For example, a character field contains the following hexadecimal EBCDIC data:

C1C2C300C4C5C6C700C8C9

The application that processes this field uses the x’00’ as a delimiter and parses the field into three strings:

♦ x’C1C2C3’ (ABC)

♦ x’C4C5C6C7’ (DEFG)

♦ x’C8C9’ (HI)

If this field is read from PowerExchange by PowerCenter, the result be only the string ABC. The rest of the field would be truncated when the first null indicator is detected in the data.

This connection attributes exists to allow these types of fields to be extracted. If selected, embedded null indicators (x’00’) are converted to spaces (x’40’). As a result, the example above would result in the field containing the following hexadecimal EBCDIC data:

C1C2C340C4C5C6C740C8C9

which when read by PowerCenter results in string ‘ABC DEFG HI’.

Table 4-15 describes the Convert character data to string attribute:

Batch Application and Relational Connection Attributes

These attributes are available in both PWXPC batch application and relational connection types unless otherwise noted.

Table 4-15. Convert Character Data Connection Attribute

Connection Attribute Required Description

Convert character data to string

No Select to convert embedded nulls in character fields to spaces.

Default is to leave embedded nulls as-is.

110 Chapter 4: Configuring Connections

Page 127: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 111 Wednesday, December 12, 2007 10:19 AM

Configuring Write Mode

Table 4-16 describes the Write Mode attributes:

There are three possible settings for Write Mode:

♦ Confirm Write On

♦ Confirm Write Off

♦ Asynchronous with Fault Tolerance

Asynchronous with Fault Tolerance is only available for PWX DB2390, PWX DB2400, PWX DB2UDB and PWX Oracle relational connections.

Confirm Write On ensures that data is sent synchronously to the PowerExchange Listener (rather than buffered). After a SQL request is sent, the sender then waits for the response from PowerExchange before the next SQL request is sent. This is important if good error recovery is a priority. It has the drawback of slowing data transfer rates. In order to stop session execution when errors are encountered, specify a value larger than 0 in the Session Error handling option “Stop on errors” on the Config Object tab.

Confirm Write Off sends data asynchronously to the PowerExchange Listener by buffering the data. While this method provides greater speed compared to Confirm Write On, it removes the ability to determine exactly which SQL statement failed in error situations. As a result, you must reload the entire table if an error occurs to ensure data integrity. Use this setting only when loading tables.

Table 4-16. Write Mode Connection Attribute

Connection Attribute Required Description

Write Mode No Configure one of the following write modes:- Confirm Write On. Sends data to the PowerExchange Listener and waits

for a success/no success response before sending more data. This is important if good error recovery is a priority. It has the drawback of slowing data transfer rates.

- Confirm Write Off. Sends data to the PowerExchange Listener without waiting for a success/no success response (asynchronously). While faster than Confirm Write On, only use this option when the target table can be reloaded if an error occurs.

- Asynchronous with Fault Tolerance. Sends data to the PowerExchange Listener asynchronously similar to Confirm Write Off but with the ability to detect errors. This provides the speed of Confirm Write Off with the data integrity of Confirm Write On.

Default is Confirm Write On.

Reject File No Overrides the default prefix of PWXR for the reject file.PowerExchange creates the reject file on the target machine when the Write Mode is Asynchronous with Fault Tolerance.

NOTE: Specifying PWXDISABLE will prevent creation of the reject files.

See the PowerExchange Reference Manual for further information.

Configuring Connection Attributes 111

Page 128: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 112 Wednesday, December 12, 2007 10:19 AM

Note: The PowerCenter statistics are unreliable when using Confirm Write Off.

Asynchronous (write) with Fault Tolerance combines the speed of Confirm Write Off with error detection of Confirm Write One. Data is buffered and sent asynchronously to the PowerExchange Listener. A reject file is created on the target machine when SQL errors occur allowing any errors to be corrected without reloading the entire table. You can also specify how to handle specific SQL return codes. In order to stop session execution when errors are encountered, specify a value larger than 0 in the Session Error handling option “Stop on errors” on the Config Object tab. See the PowerExchange Reference Manual for a complete description of Asynchronous Write with Fault Tolerance.

Retrieving PWX Log Entries

This attribute is specific to the PWXPC application connection types.

Table 4-17 describes the Retrieve PWX Log Entries attribute:

Retrieving PowerExchange log entries will include into the PowerCenter session log messages related to the session that are normally found only in the PowerExchange log. This allows a single log to provide a view of both PowerCenter and PowerExchange processing, speeding diagnosis when errors occur. The PowerExchange messages related to the session are returned in the session log as a part of message PWXPC_10091.

CDC-Specific Connection Attributes

The attributes discussed in this section are specific to the PWXPC CDC application connection types.

In order to properly configure CDC sessions, be sure to review the following information:

♦ “CDC-Specific Connection Attributes” on page 112

♦ “Extracting CDC Data in Change and Real-time Modes” on page 135

♦ “Understanding PWXPC Restart and Recovery” on page 151

♦ “Enabling Session Recovery” on page 165

♦ “Configuring CDC Sessions” on page 166

Table 4-17. Retrieve PWX Log Entries Connection Attribute

Connection Attribute Required Description

Retrieve PWX Log Entries No Include all related PowerExchange log entries in the session log. Default is no PowerExchange messages in the session log.

112 Chapter 4: Configuring Connections

Page 129: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 113 Wednesday, December 12, 2007 10:19 AM

Configuring Image Type

Table 4-18 describes the Image Type attribute:

You can configure whether before-image data is extracted for update operations using the Image Type specification. PowerExchange captures before and after image data for all updates, regardless of source type. The before-image data can always be extracted in real-time mode. In change mode, it is possible that only after-image data is available if the changes have been specifically condensed with only after-images. See the appropriate PowerExchange Adapter guide for the source type for additional information the change Condense process.If you specify Image Type=BA, the before-image and after-image data of the entire row that was updated are presented as two separate rows: a delete with the before-image data and an insert with the after-image data.

If you specify Image Type=AI, then only after-image data is provided for update records (unless you explicitly request before-image data). With AI processing, updates are passed as update records and not changed to a delete/insert pair as occurs in BA processing.

It is possible, selectively by column, to request that before-image column data be embedded within the after-image update record. When this form of before-image data is used, the change remains an update (as opposed to being changed into a delete/insert pair). When you use embedded before-image columns, you should specify AI for Image Type.

In order to request that the before-image of the column be embedded into the update row, you must alter the PowerExchange extraction map. In the PowerExchange Navigator, select the columns for which you would like before-image data. This will create before-image columns (DTL__BI_columnname) within the extraction map for those columns selected. This allows the before-image data to be easily manipulated in your mapping as it is contained in the same update record as the after-image data.

One possible use for embedded before-image data is to handle update records where the primary key has been updated. In some relational databases (such as DB2/390), it is possible to do an update to the primary key (thereby changing the key value). The RDBMS understands that this operation is equivalent to deleting the row and then re-adding it with a new primary key. This activity is logged as an update and so will be passed as an update record when extracted. In some circumstances this may causes problems when attempting to apply this update to the target database as some relational databases does not allow primary key values to be updated. Including the before-image data for key columns will allow this type of activity to be detected. The Flexible Key Custom transformation will allow this to be properly handled at the target.

Table 4-18. Image Type Connection Attribute

Connection Attribute Required Description

Image Type No Select one of the following types:

AI = Extract after images only.BA = Extract before and after images.

Default is BA.

Configuring Connection Attributes 113

Page 130: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 114 Wednesday, December 12, 2007 10:19 AM

Note: To use the Flexible Key Custom transformation, you must configure before-image columns in the PowerExchange extraction map. For more information about Flexible Key Custom transformations, see “Flexible Key Custom Transformation” on page 177.

For additional information about configuring before-image columns, see the PowerExchange Adapter guide for the source type.

Configuring Event Table Processing

Table 4-19 describes the Event Table attribute:

By using an event table, you can stop real-time CDC sessions based on an external event. For example, if you want to stop a CDC extraction nightly, after all of the day’s changes have been processed, you can use an event table to make a change to that table at midnight. When PowerExchange processes the change for the event table, it will stop reading changes at that point and shut down the extraction.

To use event table processing, complete the following tasks:

1. Register the event table for CDC.

The event table must be the same source type and on the same machine as the CDC data being extracted. For example, if you are extracting DB2 changes from MVS, then the event table must be a DB2 table in the same DB2 subsystem as the DB2 changes.

2. Specify the extraction map name for the event table in the connection Event Table attribute for the CDC sessions you wish to stop based on an event.

3. When the event occurs, make a change to the event table.

4. When PowerExchange reads the change to the event table, it places an end-of-file (EOF) in the change stream.

5. PWXPC processes the EOF, passes it along to the Integration Service and shuts down the reader.

6. The Integration Service completes writing all of the data currently in the pipeline and ends the session.

Table 4-19. Event Table Connection Attribute

Connection Attribute

RequiredChange Real Time

Description

Event Table No Real Time Specifies the PowerExchange extraction map name used for event table processing.

114 Chapter 4: Configuring Connections

Page 131: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 115 Wednesday, December 12, 2007 10:19 AM

Configuring the CAPI Connection Name Override

Table 4-20 describes the CAPI Connection Name Override attribute:

PowerExchange allows a maximum of eight CAPI_CONNECTION statements in the PowerExchange DBMOVER configuration file. You use multiple CAPI_CONNECTION statements to capture changes from more than one database type through a single PowerExchange Listener on a single machine. For example, you can capture changes for Oracle and UDB using a single PowerExchange Listener using multiple CAPI_CONNECTION statements.

You can specify the default CAPI_CONNECTION statement by coding the CAPI_SRC_DFLT statement in the PowerExchange configuration file. You request other CAPI_CONNECTION statements by specifying the CAPI Connection Name Override attribute.

See the PowerExchange Reference Manual for additional information about CAPI_CONNECTION statements.

Configuring Idle Time

Idle Time is only applicable to Real-time connections.

Table 4-21 describes the Idle Time attribute:

Use the Idle Time terminating condition to indicate whether the real-time session should run continuously (forever) or shutdown after a specified period of time. This parameter requires a valid value and has a valid default value.

Table 4-20. CAPI Connection Override Connection Attribute

Connection Attribute

Required Change Real Time

Description

CAPI Connection Name Override

No Real Time Overrides the default CAPI connection name.

Table 4-21. Idle Time Connection Attribute

Connection Attribute

RequiredChange Real-time

Description

Idle Time No Real Time Specifies the number of seconds the PowerExchangeListener remains idle after reaching the end of the changelog (as indicated by message PWX-09967) before returningan end-of-file (EOF).

If you enter:

-1 = EOF is never retuned; the session runs continuously.0 = EOF is returned at the end of log; the session terminates successfully.n = EOF is returned after no data for n seconds; the session ends.Default is -1.

Configuring Connection Attributes 115

Page 132: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 116 Wednesday, December 12, 2007 10:19 AM

The Idle Time timing starts when the PowerExchange Listener begins reading changed data for the source(s).

If -1 is entered for Idle Time, PowerExchange will never return an end-of-file (EOF) to the Integration Server thereby causing the session to run forever. This is generally how a real-time session is setup. It is the default value primed for Idle Time in all of the real-time connections.

Continuous extraction sessions must be stopped using either the PowerExchange STOPTASK command or through PowerCenter using Workflow Monitor Stop/Abort or the pmcmd commands to stop and abort tasks and workflows.

♦ If you stop the session or workflow using the PowerCenter Workflow Monitor or using pmcmd, this is considered a normal termination. PowerCenter will perform a graceful stop, instructing the CDC reader and the writers to shutdown and waiting until all data currently in the pipeline is processed. For more information about stopping real-time sessions and workflows, see the PowerCenterWorkflow Administration Guide.

♦ If you abort the session or workflow using the PowerCenter Workflow Monitor or using pmcmd, this is considered an abnormal termination since PowerCenter does not wait for the reader and writer to shutdown or until all data in the pipeline is processed. For more information about aborting sessions and workflows, see the PowerCenterWorkflow Administration Guide.

♦ The PowerExchange STOPTASK command will stop the extraction task in the PowerExchange Listener and pass an EOF to the Integration Server which will terminate the session successfully. For more information on the PowerExchange STOPTASK command, see the Task Utility (DTLUTSK) documented in PowerExchange Utilities Guide.

Warning: Ensure that you have switched the Session Properties “Commit Type” attribute to Source and unchecked the “Commit at End of File” attribute. By default, “Commit at End of File” is on and it will cause data to be committed after the CDC reader has shutdown and committed the restart tokens. As a result, when the session is restarted, duplicate data will be sent to the target.

If 0 is entered for Idle Time, PowerExchange will return an EOF to the Integration Service when the end-of-log (EOL) is reached. After the EOF is received, the Integration Service will terminate the session successfully, meaning that all data will be committed and the restart token file will be updated. The end-of-log is determined by what was the current end of the change stream at the point that PowerExchange started to read the change stream. This concept of EOL is required because the change stream is generally not static so the actual “end-of ’-log” is continually moving forward. PowerExchange issues the following message when EOL is reached:

PWX-09967 CAPI i/f: End of log for time <yy/mm/dd> <hh:mm:ss> reached

For example, if a session starts reading a change stream at 10:00 a.m., the EOL at that point is determined. After PowerExchange reaches that point in the change stream, it will return EOF to the Integration Service. This means that changes recorded in the change stream after 10:00 a.m. will not be processed. Specifying 0 for Idle time is a useful in situations where you want to extract changed data for sources periodically as opposed to continuously.

116 Chapter 4: Configuring Connections

Page 133: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 117 Wednesday, December 12, 2007 10:19 AM

If a positive number is specified for Idle Time, then the session will run until no data is returned for the period of time specified. After Idle Time is reached, PowerExchange will send an end-of-file (EOF) to the Integration Service and the session will terminate successfully. Specifying a low Idle Time (1 for example) can result in this time being reached before all available data in the change stream has been read.

The following message is issued to indicate that the Idle Time has been reached:

[PWXPC_10072] [INFO] [CDCDispatcher] session ended after waiting for [idle_time] seconds. Idle Time limit is reached

This message is also issued when a continuous extraction is stopped using the PowerExchange STOPTASK command. In this case, the idle_time variable in the message will show 86400 which is the “never expire” time limit used when an Idle Time of -1 is specified.

Tip: In highly active systems, a positive value for Idle Time may never match. Use 0 if you do not want the session to run continuously.

For example, if you specify an Idle Time of 10 seconds and PowerExchange finds no data for the source(s) in the change stream for a 10 second period, PowerExchange will return an EOF to the Integration Service which will cause it to terminate successfully.

If you specify values for Reader Time Limit and Idle Time, the Integration Service stops reading data from the source at the point based on whichever one of these terminating conditions is reached first. So, if the Reader Time Limit is reached prior to the Idle Time limit, the session will stop at that point regardless of the fact that Idle Time has not yet been reached.

Warning: Reader Time Limit does not result in normal termination of a CDC session. Use Idle Time instead of Reader Time Limit.

Configuring CDC Restart Attributes

Table 4-22 describes the restart attributes you must configure for CDC sessions:

Table 4-22. Change and Real-time Mode Restart Connection Attributes

Connection Attribute Required Description

Application Name No Application name for the extraction.

It is part of the audit trail for data extractions by the PowerExchange Listener. The name must be unique for each session. The application name is case sensitive and cannot exceed 20 characters.

Default is the first 20 characters of the workflow name.

Configuring Connection Attributes 117

Page 134: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 118 Wednesday, December 12, 2007 10:19 AM

All of these parameters require a valid value and all have valid default values.

There are numerous CDC reader application connection attributes that specify restart information. PWXPC uses the restart information to tell PowerExchange from which point to start reading the captured changed data.

Warning: Care must be taken when using the Application Name default as it may not result in a unique name for the application name. It is imperative that the Application Name value and the Restart Token File Name be unique for every session. Results are unpredictable and include session failures and potential data loss if a non-unique name is used for either of these attributes.

For more information about restart token files, see “Configuring the Restart Token File” on page 162.

Configuring UOW Count

Table 4-23 describes the UOW Count attribute:

A unit of work (UOW) is a collection of changes within a single commit scope made by a transaction on the source system. Each unit of work may consist of a different number of changes. This parameter requires a valid value and has a valid default value.

RestartToken File Folder No Folder name that contains the restart token override file on the Integration Service node.

Default is $PMRootDir/Restart.

RestartToken File Name No File name in the Restart Token File Folder that contains the restart token override file. PWXPC uses the contents of this file, if any, in conjunction with the state information to determine the restart point for the session.

Default is the Application Name if specified or the workflow name if Application Name is not specified.

Table 4-23. UOW Count Connection Attribute

Connection Attribute

RequiredChange Real-time

Description

UOW Count No Both Specifies the number of units of work (UOWs) you want the PWXPC to read from the source before flushing data to the target.

If you enter: -1 = UOW count is not used0 = UOW count is not used n = n is the count of UOWs

Default is 1.

Table 4-22. Change and Real-time Mode Restart Connection Attributes

Connection Attribute Required Description

118 Chapter 4: Configuring Connections

Page 135: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 119 Wednesday, December 12, 2007 10:19 AM

When the session runs, the PWXPC reader begins to read data from the PowerExchange Listener. After data is provided to the source qualifier, the UOW Count begins. When you use a non-zero value for the UOW Count session attribute, PWXPC issues a commit to the target when it reaches the number of units of work specified in this terminating condition. When the UOW Count is reached, a real-time flush will be triggered to flush the buffers so that the changed data is committed to the target. The following message appears in the session log to indicate that this has occurred:

[PWXPC_10081] [INFO] [CDCDispatcher] raising real-time flush with restart tokens [restart1_token], [restart2_token] because UOW Count [uow_count] is reached

The commit to the target when reading CDC data is not strictly controlled by the UOW Count specification. The Real-Time Flush Latency and the Commit Threshold values also determine the commit frequency. To understand the affect that all of these values have on commit processing, see “Understanding Commit Processing with PWXPC” on page 123.

For example, if the value for UOW Count is 10, the Integration Service commits all data read from the source to its target after the 10th unit of work is processed (assuming the Real-Time Flush Latency period has not expired first). The lower you set the value, the faster the Integration Service commits data to the target. Therefore, if you require the lowest possible latency for the apply of changes to the target, you should specify a UOW Count of 1.

Warning: When you specify a low UOW Count value, the session might consume more system resources on the target platform. This is because it will commit to the target more frequently. You need to balance performance and resource consumption with latency requirements when choosing the UOW Count and Real-Time Flush Latency values.

Configuring Real-Time Flush Latency

Table 4-24 describes the Real-Time Flush Latency attribute:

Use the Real-Time Flush Latency terminating condition to control the target commit latency when running in real-time mode. PWXPC commits source data to the target at the end of the specified maximum latency period. This parameter requires a valid value and has a valid default value.

Table 4-24. Real-Time Flush Latency Connection Attribute

Connection Attribute

RequiredChange Real-time

Description

Real-Time Flush Latency in milli-seconds

No Real Time Value in milliseconds between buffer flushes.

If you enter:

0 to 2000 = PWXPC sets the value to 2000n = The value specified for n is used if larger than 2000

Valid values are between 0 and 86400000 milliseconds.

Default is 0 (2000 milliseconds/2 seconds).

Configuring Connection Attributes 119

Page 136: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 120 Wednesday, December 12, 2007 10:19 AM

When the session runs, PWXPC begins to read data from the source. After data is provided to the source qualifier, the Real-Time Flush Latency interval begins. At the end of each Real-Time Flush Latency interval and an end-UOW boundary is reached, PWXPC issues a commit to the target. The following message appears in the session log to indicate that this has occurred:

[PWXPC_10082] [INFO] [CDCDispatcher] raising real-time flush with restart tokens [restart1_token], [restart2_token] because Real-time Flush Latency [RTF_millisecs] occurred

Only complete UOWs are committed during real-time flush processing.

The commit to the target when reading CDC data is not strictly controlled by the Real-Time Flush Latency specification. The UOW Count and the Commit Threshold values also determine the commit frequency. To understand the affect that all of these values have on commit processing, see “Understanding Commit Processing with PWXPC” on page 123.

The value specified for Real-Time Flush Latency also controls the PowerExchange Consumer API (CAPI) interface timeout value (PowerExchange latency) on the source platform. The CAPI interface timeout value is displayed in the following PowerExchange message on the source platform (and in the session log if “Retrieve PWX Log Entries” is specified in the Connection Attributes):

PWX-09957 CAPI i/f: Read times out after <n> seconds

The CAPI interface timeout also affects latency as it will affect how quickly changes are returned to the PWXPC reader by PowerExchange. PowerExchange will ensure that it returns control back to PWXPC at least once every CAPI interface timeout period. This allows the PWXPC to regain control and, if necessary, perform the real-time flush of data returned. A high RTF Latency specification will also impact the speed with which stop requests from PowerCenter are handled as the PWXPC CDC Reader must wait for PowerExchange to return control before it can handle the stop request.

Tip: Use the PowerExchange STOPTASK command to shutdown more quickly when using a high RTF Latency value.

For example, if the value for Real-Time Flush Latency is 10 seconds, PWXPC will issue a commit for all data read after 10 seconds have elapsed and the next end-UOW boundary is received. The lower you set the value, the faster the data commits data to the target. Therefore, if you require the lowest possible latency for the apply of changes to the target, you should specify a low Real-Time Flush Latency value.

Warning: When you specify a low Real-Time Flush Latency interval, the session might consume more system resources on the source and target platforms. This is because:

♦ The session will commit to the target more frequently therefore consuming more target resources.

♦ PowerExchange will return more frequently to the PWXPC reader thereby passing fewer rows on each iteration and consuming more resources on the source PowerExchange platform.

You need to balance performance and resource consumption with latency requirements when choosing the UOW Count and Real-Time Flush Latency values.

120 Chapter 4: Configuring Connections

Page 137: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 121 Wednesday, December 12, 2007 10:19 AM

Configuring Commit Threshold

Table 4-25 describes the Commit Threshold attribute:

Commit Threshold is only applicable to Real-Time CDC sessions. Use the Commit Threshold terminating condition to cause commits before reaching the end of the UOW when processing large UOWs. This parameter requires a valid value and has a valid default value

Commit Threshold can be used to cause a commit before the end of a UOW is received, a process also referred to as sub-packet commit. The value specified in the Commit Threshold is the number of records within a source UOW to process before inserting a commit into the change stream. This attribute is different from the UOW Count attribute in that it is a count records within a UOW rather than complete UOWs. The Commit Threshold counter is reset when either the number of records specified or the end of the UOW is reached.

This attribute is useful when there are extremely large UOWs in the change stream that might cause locking issues on the target database or resource issues on the PowerCenter Integration Server.

The Commit Threshold count is cumulative across all sources in the group. This means that sub-packet commits are inserted into the change stream when the count specified is reached regardless of the number of sources to which the changes actually apply. For example, a UOW contains 900 changes for one source followed by 100 changes for a second source and then 500 changes for the first source. If you set the Commit Threshold to 1000, the commit record is inserted after the 1000th change record which is after the 100 changes for the second source.

Warning: A UOW may contain changes for multiple source tables. Using Commit Threshold can cause commits to be generated at points in the change stream where the relationship between these tables is inconsistent. This may then result in target commit failures.

If 0 or no value is specified, commits will occur on UOW boundaries only. Otherwise, the value specified is used to insert commit records into the change stream between UOW boundaries, where applicable.

The value of this attribute overrides the value specified in the PowerExchange DBMOVER configuration file parameter SUBCOMMIT_THRESHOLD. For more information on this PowerExchange parameter, see the PowerExchange Reference Manual.

Table 4-25. Commit Threshold Connection Attribute

Connection Attribute

RequiredChange Real-time

Description

Commit Threshold

No Real Time Enter the number of change records to process before a commit is inserted into the change stream.

Note: This parameter puts a commit record into the change stream after the specified number of records. The target commit is still controlled by the UOW Count and Real-Time Flush Latency specification.

Default is 0.

Configuring Connection Attributes 121

Page 138: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 122 Wednesday, December 12, 2007 10:19 AM

The commit to the target when reading CDC data is not strictly controlled by the Commit Threshold specification. The commit records inserted into the change stream as a result of the Commit Threshold value affect the UOW Count counter. The UOW Count and the Real-Time Flush Latency values determine the target commit frequency.

For example, a UOW contains 1,000 change records (any combination of inserts, updates, and deletes). If you specify 100 for Commit Threshold and 5 for UOW Count, then a commit record will be inserted after each 100 records and a target commit will be issued after every 500 records.

To understand the affect that all of these values have on commit processing, see “Understanding Commit Processing with PWXPC” on page 123.

122 Chapter 4: Configuring Connections

Page 139: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 123 Wednesday, December 12, 2007 10:19 AM

Understanding Commit Processing with PWXPC

The PowerExchange Client for PowerCenter (PWXPC), like all real-time readers, always uses source-based commit. If the Commit Type in the Session Properties is set to Target, Integration Service will automatically change it to source when the session is run. The following message is issued in the session log to indicate that this has been done:

WRT_8226 Target Load Order Group [1] is set for real-time flushing. Target based commit is switched to source based commit and target based commit interval is used as source based commit interval.

Warning: Duplicate data on targets can occur if the Commit On End Of File option in the Session Properties is enabled. To prevent this, change the Commit Type to Source and then disable the Commit On End Of File option in the Session Properties. This will ensure that PWXPC controls commit processing thereby ensuring the target data and restart tokens are in-sync.

Source-based commit sessions have partitioning restrictions. For more information, see the PowerCenterWorkflow Administration Guide.

There are three connection attributes which affect commit processing when running real-time CDC sessions:

♦ Commit Threshold

♦ Real-Time Flush Latency

♦ UOW Count

Note: When using PWXPC CDC Change connections, the only connection attribute that affects commit processing is UOW Count.

With the exception of Commit Threshold, all source-based commits with PWXPC are done on end-UOW boundaries. Commit Threshold exists to provide sub-packet commit capability; that is, to commit data after a specified number of records within a single UOW.

If you specify values for UOW Count and Real-Time Flush Latency, then PWXPC issues commits to the target when it reaches the UOW Count or when the Real-Time Flush Latency period expires, whichever occurs first.When the commit is issued both the Real-Time Flush (RTF) Latency period and the UOW Count counter are reset. PWXPC continues to read data from the source until either the RTF Latency period matches or the UOW Count matches. At which point, it issues another commit. This processing continues until the session terminates.

Commits inserted into the change stream as a result of the Commit Threshold specification are counted in the UOW Count counter. Commit Threshold itself does not result in PWXPC issuing a commit to the target. Only UOW Count and Real-Time Flush Latency will cause that to happen.

A final commit is also done by PWXPC during reader termination to ensure that all buffered and complete UOWs are committed.

Idle Time can impact the commit process by causing the real-time session to terminate. For example, you set the Idle Time value to 10 seconds and the UOW Count to five units of work. When the PWXPC reaches the UOW Count, it commits data to the target and

Understanding Commit Processing with PWXPC 123

Page 140: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 124 Wednesday, December 12, 2007 10:19 AM

continues to read data from the source. If the Idle Time is then reached, PowerExchange stops reading from the source and sends an EOF to the Integration Service which terminates the session. If only three complete UOWs have been read since the previous UOW count-based commit, these will be committed when the session terminates due to the final commit done by PWXPC.

To illustrate the interaction of all of the values affecting commit processing, assume the following settings:

♦ Idle Time is -1 (“never timeout”)

♦ Commit Threshold is 0 (no sub-packet commit)

♦ RTF Latency is 5000 (5 seconds)

♦ UOW Count is 1,000

The PWXPC reader receives 900 complete UOWs in five seconds after the first change row enters the source qualifier. Because the RTF Latency value has matched, a source-based commit is issued at this point. Both the UOW Count and RTF Latency period are then reset. So, another commit will not be issued when the 1,000 UOW is read. The next 1,000 UOWs are read in 4 seconds. So, a commit is issued after these 1,000 UOWs because the UOW Count matched. Again, the RTF Latency period and the UOW Count are reset at this point. More changed data is read and commits continue based on whichever attributes matches first. So, in this example, commits were issued after the first 900 UOWs because RTF Latency matched first and then again after the 1,900th UOW because the UOW Count then matched first.

It is therefore possible to have both the Real-Time Flush Latency period and the UOW Count control commits of the data. Commits will always be done on a UOW boundary based (except when Commit Threshold is specified) on whichever attribute matches first.

For the lowest latency in getting changed data to the target, use an RTF Latency of 2000 (the default) and a UOW Count of 1. This will cause a commit at each commit point in the source data. Since the RTF Latency will only commit on a UOW boundary and a UOW Count of 1 causes a commit after each complete UOW is received, the effect is to have only UOW Count control the commit process. Of course, this is the most-resource intensive setting from the target DBMS perspective.

The RTF Latency specification controls:

♦ The commit latency for the target tables

♦ The PowerExchange Consumer API (CAPI) interface timeout value (PowerExchange latency) on the source platform

In addition to impacting the target latency, high values for RTF Latency will impact the speed with which stop requests from PowerCenter are handled. The PWXPC CDC Reader must wait for PowerExchange to return control before it can handle the stop request.

Tip: Use the PowerExchange STOPTASK command to shutdown more quickly when using a high RTF Latency value.

If you want to use less resources on the target system and want only UOW Count to control the commit process, then ensure that Real-Time Flush Latency is set sufficiently high so as

124 Chapter 4: Configuring Connections

Page 141: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 125 Wednesday, December 12, 2007 10:19 AM

not to be a factor. The value necessary to do this is customer-dependent. The size of the UOWs and the speed at which they are read will affect what value represents a high enough RTF Latency period to eliminate it as a factor.

Understanding Commit Processing with PWXPC 125

Page 142: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 126 Wednesday, December 12, 2007 10:19 AM

126 Chapter 4: Configuring Connections

Page 143: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 127 Wednesday, December 12, 2007 10:19 AM

C h a p t e r 5

Working with Sessions

This chapter includes the following topics:

♦ Overview, 128

♦ Extracting Data in Batch Mode, 129

♦ Extracting CDC Data in Change and Real-time Modes, 135

♦ Loading Data to PowerExchange Targets, 142

127

Page 144: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 128 Wednesday, December 12, 2007 10:19 AM

Overview

After you create mappings in the PowerCenter Designer, you can create a session and use the session in a workflow to extract, transform, and load data. You create sessions and workflows in the Workflow Manager.

You can create a session in a workflow to extract data in batch, change, or real-time mode. You determine how you want the Integration Service to extract the data when you configure the session. You can also create a session to load data to a target.

For more information about creating, configuring, and scheduling workflows, see the PowerCenter Workflow Administration Guide.

Pipeline Partitioning

Pipeline partitioning cannot be used for sources in CDC sessions. You can use it for targets in CDC sessions.

For more information about partitioning and a list of all partitioning restrictions, see the PowerCenter Workflow Administration Guide.

Real-time Session Rules and Guidelines

For the list of limitations with real-time mode, see the “Real-time Processing” chapter of the PowerCenter Workflow Administration Guide.

128 Chapter 5: Working with Sessions

Page 145: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 129 Wednesday, December 12, 2007 10:19 AM

Extracting Data in Batch Mode

To extract data in batch mode, you must select a connection for batch mode and configure session properties. The connection you select and the session properties you configure differ depending on the type of source data.

Extracting Data from Multiple Files

You can extract data from multiple Sequential or VSAM ESDS files with the same record layout using the File List Processing feature of PowerExchange. Use a file list file to provide the names of the files from which you want to extract source data. The PowerExchange Listener extracts data from the files listed in the file list file.

You can also override a Sequential or VSAM ESDS source and request File List Processing by specifying the file list file name in the File List Name and ticking the Filelist File box in the session properties. See “Session Properties for Non-Relational Batch Mode Sessions” on page 129. See the PowerExchange Navigator User Guide for additional information about File List Processing.

Constraint-Based Loading for Relational Targets

In the Workflow Manager, you can specify constraint-based loading for a session. When you select this option, the Integration Service orders the target load on a row-by-row basis. For every row generated by an active source, the Integration Service loads the corresponding transformed row first to the primary key table, then to any foreign key tables.

For more information, see:

♦ “Constraint-Based Loading for Relational Targets” on page 129.

♦ PowerCenter Workflow Administration Guide.

Session Properties for Non-Relational Batch Mode Sessions

When you configure a session to extract data from a non-relational source in batch mode, you can override data map information for the source. PWXPC and PowerExchange use this information to extract the source data.

To configure a batch mode session for non-relational sources:

1. In the Task Developer, double-click a session with a non-relational source to open the session properties.

2. Click the Sources view on the Mapping tab.

Extract ing Data in Batch Mode 129

Page 146: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 130 Wednesday, December 12, 2007 10:19 AM

3. In the Reader field of the Readers settings, the PowerExchange Batch Reader for the specific source type will be shown. The Reader names for non-relational batch sources have one of the following formats:

PowerExchange Batch Reader for <database_type>

PowerExchange Reader for <database_type>

The <database_type> is the one of the following:

♦ ADABAS

♦ ADABAS Unload Files

♦ DB2 Datamaps

♦ DB2 Unload Datasets

♦ DATACOM

♦ IDMS

♦ IMS

♦ Sequential Files

♦ VSAM Files

The name of the reader cannot be altered. The only exception to this is Adabas where you can choose between ADABAS and ADABAS Unload Files.

For example, a VSAM source looks as follows:

Figure 5-1. Session Mapping Tab - Batch VSAM Reader

130 Chapter 5: Working with Sessions

Page 147: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 131 Wednesday, December 12, 2007 10:19 AM

4. In the Connection Value field, select the application connection from the available PWX NRDB Batch connections.

5. Click the Sources view on the Mapping tab.

6. In the Properties settings, configure the following attributes (all fields are optional except where noted):

Attribute Name Source Type Description

Schema Name Override All Overrides the source PowerExchange data map schema name.

Map Name Override All Overrides the source PowerExchange data map name.

File Name ADABAS Unload Specifies the file name of the unloaded Adabas database. Required for ADABAS Unload.

ADABAS Password ADABAS Password for the ADABAS database.

Database Id Override ADABAS, ADABAS Unload

Overrides the ADABAS Database Id in the PowerExchange data map.

File Id Override ADABAS, ADABAS Unload

Overrides the Adabas file id in the PowerExchange data map.

DB2 Sub System Id DB2 Datamaps Overrides the DB2 instance name in the PowerExchange data map.

DB2 Table name DB2 Datamaps Overrides the DB2 Table name in PowerExchange data map.

Unload File Name DB2 Unload Datasets

Overrides the unload file name in PowerExchange data map.

Filter Overrides All Allows data to be filtered at the source by PowerExchange.Enter a filter override using the following syntax:

<filter condition1>;<filter condition2>;...

- or - <group name1>=<filter condition1>;<group name2>=<filter condition2>;...

Use the <group name> syntax to limit the application of the filter to a specific record.If you do not specify <group name> and the source mapping is a multi-record source, then the filter condition applies to all records in the source mapping.

For example, you can select only records with ID column values that contain DBA for a multi-record source with two records called USER1 and USER by specifying either:

USER1=ID=’DBA’;USER2=ID=’DBA’

- or -ID=’DBA’

See “Filtering Source Data Using PWXPC” on page 230.

IMS Unload File Name IMS IMS database unload file name. Required if you want to read source data from the backup file instead of the IMS database.

Extract ing Data in Batch Mode 131

Page 148: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 132 Wednesday, December 12, 2007 10:19 AM

For information about other session properties, see the PowerCenter Workflow Administration Guide.

7. Click OK.

Session Properties for Relational Batch Mode Sessions

To extract data from a relational source in batch mode, select a PWXPC relational database connection. You can then configure the session properties.

Session properties unique for PowerExchange are noted.

To configure a relational source batch mode session:

1. In the Task Developer, double-click a session with a relational source to open the session properties.

2. Click the Sources view on the Mapping tab.

3. In the Reader field of the Readers settings, select Relational Reader. For DB2 on z/OS, you can also select PowerExchange Reader for DB2 Image Copy.

File Name Override VSAM, SEQ Overrides the data set or file name in the PowerExchange data map.

Enter enter the complete data set or file name. For the AS400, this name should be: library_name/file_name.

If you selected the Filelist File check box, enter the filelist file name in the File Name Override.

Filelist File VSAM, SEQ Select if the File Name Override field contains the data set name of a list of files. Only select this option if you have entered a filelist file for File Name Override.

SQL Query Override All Overrides the SQL query sent to PowerExchange, including any Filter Overrides.

Attribute Name Source Type Description

132 Chapter 5: Working with Sessions

Page 149: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 133 Wednesday, December 12, 2007 10:19 AM

For example, the available readers for a DB2 source looks as follows:

Note: The PowerExchange Reader for DB2 Image Copy is only applicable to DB2 for z/OS sources. It cannot be used for DB2 sources on other platforms.

4. In the Connection Value field, select PWX NRDB Batch application connection if using the DB2 Image Copy reader.

Figure 5-2. Session Mapping Tab - DB2 Readers

Extract ing Data in Batch Mode 133

Page 150: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 134 Wednesday, December 12, 2007 10:19 AM

Select the appropriate PWX relational database connection if using the relational reader:

♦ PWX DB2390 for DB2 for z/OS

♦ PWX DB2400 for DB2 for i5/OS

♦ PWX DB2UDB for DB2 for Linux, UNIX, and Windows

♦ PWX Oracle for Oracle

♦ PWX MSSQLServer for Microsoft SQL Server

♦ PWX Sybase for Sybase

5. You can configure the following attributes for the PowerExchange Reader for DB2 Image Copy:

For information about other session properties, see the PowerCenter Workflow Administration Guide.

6. Click OK.

Attribute Name Description

Schema Name Override Overrides the source schema name.

Map Name Override Overrides the source table name.

DB2 Sub System Id Overrides the DB2 instance name in the PowerExchange data map.

Image Copy Dataset Provides the image copy data set name. If not specified, the most current image copy data set is used.

Disable Consistency Checking Overrides the unload file name in PowerExchange data map.

Filter Overrides Allows data to be filtered at the source by PowerExchange. Enter a filter override using the following syntax:

<filter condition1>;<filter condition2>;...

For example, you can select only records with ID column values that contain DBA by specifying:

ID=’DBA’

See “Filtering Source Data Using PWXPC” on page 230.

SQL Query Override Overrides the SQL query sent to PowerExchange, including any filter overrides.

134 Chapter 5: Working with Sessions

Page 151: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 135 Wednesday, December 12, 2007 10:19 AM

Extracting CDC Data in Change and Real-time Modes

To extract change capture data in change mode (CAPX), you select a change mode application connection. To extract data in real-time mode (CAPXRT), you select a real-time mode application connection.

Note: For compatibility purposes, non-relational source definitions imported in PowerCenter 7.x can still select either Batch or CDC readers and application connections. Non-relational source definitions imported in PowerCenter 8.x automatically have the appropriate Batch Reader selected for the source type. This reader selection cannot be changed.

In order to properly configure CDC sessions, review the following topics:

♦ “CDC-Specific Connection Attributes” on page 112

♦ “Understanding Commit Processing with PWXPC” on page 123

♦ “Extracting CDC Data in Change and Real-time Modes” on page 135

♦ “Understanding PWXPC Restart and Recovery” on page 151

♦ “Configuring the Restart Token File” on page 162

♦ “Enabling Session Recovery” on page 165

♦ “Configuring CDC Sessions” on page 166

PowerExchange Extraction Maps

The metadata that is used for sessions with Change Data Capture (CDC) sources is taken from the PowerExchange extraction maps. Extraction maps are created by the PowerExchange Navigator when the source is initially registered for Change Data Capture. These can be manually modified at a later date. You can also create new extraction maps using an existing capture registration.

When importing source definitions with PowerCenter Designer, you can specify the CDC Datamaps option (requesting extraction maps) in the Import from PowerExchange dialog box. Source definitions created from extraction maps contain the extraction map schema and map name in the Metadata Extensions. This eliminates the need to specify the extraction map name in the session properties.

Source definitions created from relational database metadata require that you specify the extraction map name in the Session Properties if you want to use a CDC reader and application connection. Source definitions created in PowerCenter V8.x using the “Import from PowerExchange” dialog box with the CDC Datamap option ticked do not require the specification of the extraction map name. Import CDC sources using the CDC Datamaps option to minimize the customization required both in Designer and Workflow Manager.

Note: With non-relational sources imported in PowerCenter V8.x or later, extraction maps are the only choice if you want to use a CDC reader. It is no longer possible to select a CDC reader with sources created from PowerExchange data maps in PowerCenter V8.x (that is, sources with Database Type of PWX_source_NRDB2).

Extracting CDC Data in Change and Real-time Modes 135

Page 152: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 136 Wednesday, December 12, 2007 10:19 AM

If you want to extract change data from a multi-record non-relational source using extraction maps, you must create a PowerExchange capture registration for every table in the data map. This creates an extraction map for each table. You can then either import the data map as a multi-record non-relational source (for batch usage) or import the extraction maps for each table (for CDC usage).

Extracting CDC Data from Multiple Sources in a Session

If the mapping contains multiple sources from which you want to extract CDC data in change mode or real-time mode, all sources must use the same application connection. You need only specify the application connection on the first source in the mapping. All other connections can have a Type of None.

Note: All of the sources must be the same source data type. Sessions with mappings that include sources with multiple data types will fail when executed.

Constraint-Based Loading for Relational Targets

In the Workflow Manager, you can specify constraint-based loading for a session. When you select this option, the Integration Service orders the target load on a row-by-row basis. For every row generated by an active source, the Integration Service loads the corresponding transformed row first to the primary key table, then to any foreign key tables.

The constraint-based loading session attribute, Constraint based load ordering, only applies to insert operations. With changed data, there will usually be a mixture of inserts, updates, and deletes. In order to obtain complete constraint-based loading, you must also set Custom Property FullCBLOSupport=Yes. This causes changed data to be loaded to targets in the same Transaction Control Unit (TCU) using the Row Id assigned to the data by the CDC Reader. As a result, data is applied to the targets in the same order in which it was applied to the sources. The following message will be issued in the session log to indicate that this support is enabled:

WRT_8417 Complete Constraint-Based Load Ordering is enabled.

The Custom Property can be set in the session Config Object tab in the Custom Properties attribute. This property can also be set in the Integration Service making it applicable to all workflows and sessions that use that Integration Service. See Knowledge Base Article #18015 for information about how to set Custom Properties in the Integration Service.

If you are using full constraint-based loading, then your mapping must not contain active transformations which change the Row Id generated by the CDC Readers. The transformations that change the Row Id are: Aggregator, Custom (configured as active), Joiner, Normalizer, Rank, and Sorter transformations. All other transformations can be used. For more real-time mode limitations, see the PowerCenter Workflow Administration Guide.

For more information about constraint-based loading, see the PowerCenter Workflow Administration Guide.

136 Chapter 5: Working with Sessions

Page 153: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 137 Wednesday, December 12, 2007 10:19 AM

Session Properties for Change and Real-Time Mode Sessions

When you configure a session to extract data in change or real-time mode, PWXPC uses the extraction map to extract the source data. Source definitions for CDC sources can be created using extraction maps (CDC Datamaps in the Import dialog box) or by importing metadata from the relational database. The session properties will differ based upon how the source metadata was imported.

Configuring a change or real-time mode sessions (extraction map sources):

1. In the Task Developer, double-click the session to edit it.

2. Click the Properties tab and change the following:

♦ Commit Type field - Change to Source.

♦ Commit on End of File field - Clear this field to turn this off.

To enable recovery for the session, change the Recovery Strategy attribute to Resume from last checkpoint. Enabling recovery for CDC sessions is important to ensure that data and restart tokens are properly handled. For more information, see “Restart and Recovery” on page 149.

3. Click the Sources view on the Mapping tab.

For relational sources, you will have to choose the desired CDC Reader (see page 139). With extraction map sources, the reader is automatically chosen based on the source type

Figure 5-3. Session Properties Tab

Extracting CDC Data in Change and Real-time Modes 137

Page 154: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 138 Wednesday, December 12, 2007 10:19 AM

of the extraction map. In this example, the extraction map used in the mapping is for a DB2/390 source so the PowerExchange CDC Reader for DB2/390 is chosen:

In the Connection Value field, select CDC Real Time or CDC Change application connection types. PWXPC displays the valid connections for the source type in the Application Connection Browser.

4. Optionally, open the application connection to override any connection values. See “Configuring Connections” on page 79.

5. In the Session Properties settings, configure the following optional attributes:

Figure 5-4. Session Mapping Tab - Extraction Map Source

Attribute Name Source Type Description

Schema Name Override

All Overrides the source PowerExchange extraction map schema name.

Map Name Override All Overrides the source PowerExchange extraction map name.

Database Id Override ADABAS Overrides the ADABAS Database Id in the PowerExchange data map.

File Id Override ADABAS Overrides the Adabas file id in the PowerExchange data map.

138 Chapter 5: Working with Sessions

Page 155: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 139 Wednesday, December 12, 2007 10:19 AM

For information about other properties settings, see the PowerCenter Workflow Administration Guide.

To configure a change or real-time mode session (relational sources):

1. In the Task Developer, double-click the session to edit it.

2. Click the Properties tab and change the following:

♦ Commit Type field - Change to Source.

♦ Commit on End of File field - Clear this field to turn this off.

See Figure 5-3 on page 137 for an example of the Properties tab.

To enable recovery for the session, change the Recovery Strategy attribute to Resume from last checkpoint. Enabling recovery for CDC sessions is important to ensure that data and restart tokens are properly handled. For more information, see “Restart and Recovery” on page 149.

Library/File Override DB2400 Overrides the library and file name in the extraction map.Specify complete library and file names in the format:

library/file

This attribute overrides the Library/File Override value on the application connection.Warning: Do not specify an asterisk for library name if using PWXPC restart.

Source Schema Override

Oracle Overrides the source schema name.

Filter Overrides Allows data to be filtered at the source by PowerExchange.Enter a filter override using the following syntax:

<filter condition1>;<filter condition2>;...

For example, you can ask PowerExchange to filter change records so that only ones where columns ID and ACCOUNT have changed are passed by specifying:DTL__CI_ID=‘Y’;DTL__CI_ACCOUNT=’Y’

See “Filtering Source Data Using PWXPC” on page 230.

SQL Query Override Overrides the SQL query sent to PowerExchange, including any Filter Overrides.

Attribute Name Source Type Description

Extracting CDC Data in Change and Real-time Modes 139

Page 156: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 140 Wednesday, December 12, 2007 10:19 AM

3. Click the Sources view on the Mapping tab.

In the Reader field of the Readers settings, select a CDC Reader from those available based on the source type:

♦ DB2390: PowerExchange CDC Change or PowerExchange CDC Real-time

♦ DB2400: PowerExchange CDC Change or PowerExchange CDC Real-time

♦ DB2UDB: PowerExchange Real-time

♦ Oracle: PowerExchange CDC Change or PowerExchange CDC Real-time

♦ MSSQL: PowerExchange Real-time

4. In the Connection Value field, select an application connection.

Tip: For CDC Change and Real-time Readers, only choose an application connection for the first CDC source. For subsequent CDC sources, choose a Connection Type of None. PowerExchange group source processing only uses the information on the first application connection. Subsequent application connection specifications are not required and may cause session failures.

5. Optionally, open the application connection to override any connection values. See “Configuring Connections” on page 79.

Figure 5-5. Session Mapping Tab - Relational Source

140 Chapter 5: Working with Sessions

Page 157: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 141 Wednesday, December 12, 2007 10:19 AM

6. In the Properties settings, configure the following attributes. All fields are optional except where noted:

For information about other properties settings, see the PowerCenter Workflow Administration Guide.

7. Click OK.

Attribute Name Source Type Description

Extraction Map Name All The PowerExchange extraction map name for the CDC source. Required if using a CDC Change or Real Time Reader.You must specify the extraction map name for the relational source.

Library/File Override DB2400 Real Time Overrides the library and file name in the extraction map.Specify complete library and file names in the format:

library/file

This attribute overrides the Library/File Override value on the application connection.Warning: Do not specify an asterisk for library name if using PWXPC restart.

Source Schema Override

Oracle Change and Real Time

Overrides the source schema name.

Extracting CDC Data in Change and Real-time Modes 141

Page 158: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 142 Wednesday, December 12, 2007 10:19 AM

Loading Data to PowerExchange Targets

You can load data to relational targets as well as to non-relational targets. See Table 1-2 on page 5 for the list of relational and non-relational targets for which PowerExchange provides write support.

Loading Data to Relational Targets

To load data to a relational target, select a relational database connection. You can then configure properties for session as you would any other relational target.

Note: DB2 for i5/OS (DB2/400) tables can also be accessed as flat files. If the table has been imported into PowerExchange as a sequential data map, you can use a PWX NRDB Batch application connection to write to it.

Configuring sessions to load data to relational targets:

1. In the Task Developer, double-click the session to edit it.

2. Click the Targets view on the Mapping tab.

3. In the writers setting, select relational writer to run sessions with relational targets.

142 Chapter 5: Working with Sessions

Page 159: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 143 Wednesday, December 12, 2007 10:19 AM

The following example shows a DB2/390 target:

4. In the Connections Value field, select a relational database connection from one of the following types:

♦ PWX DB2390 for DB2 for z/OS

♦ PWX DB2400 for DB2 for i5/OS

♦ PWX DB2UDB for DB2 for Linux, UNIX, and Windows

♦ PWX Oracle for Oracle

♦ PWX MSSQLServer for Microsoft SQL Server

♦ PWX Sybase for Sybase

5. Configure any other session properties.

6. Click OK.

For information about properties settings, see the PowerCenter Workflow Administration Guide.

Figure 5-6. Session Mapping Tab - Relational Targets

Loading Data to PowerExchange Targets 143

Page 160: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 144 Wednesday, December 12, 2007 10:19 AM

Loading Data to Non-Relational Targets

PWXPC allows you to load data to the following non-relational targets:

♦ Adabas

♦ IMS

♦ Sequential, including flat files on AS/400, Linux, UNIX, and Windows

♦ VSAM

The writer is set to the correct PowerExchange Writer based on the target type. You must select a PWX NRDB Batch application connection. You can then configure properties for session as you would any other target.

To configure sessions to load data to non-relational targets:

1. In the Task Developer, double-click the session to edit it.

2. Click the Targets view on the Mapping tab.

The writer value is set based on the target type.

144 Chapter 5: Working with Sessions

Page 161: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 145 Wednesday, December 12, 2007 10:19 AM

The following example shows a sequential target:

3. In the Connections Value field, select a PWX NRDB Batch application connection.

4. In the Properties settings, configure the PWXPC session properties. See Table 5-1 on page 146.

5. Configure any other session properties.

6. Click OK.

For information about other Properties settings, see the PowerCenter Workflow Administration Guide.

Figure 5-7. Session Mapping Tab - Non-Relational Targets

Loading Data to PowerExchange Targets 145

Page 162: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 146 Wednesday, December 12, 2007 10:19 AM

Session Properties for Non-Relational Targets

PowerExchange and PWXPC support a variety of non-relational targets. See Table 1-2 on page 5 for the complete list. The following table contains the optional Session Properties for all PWXPC non-relational targets, in alphabetical order:

Table 5-1. Session Properties for Non-Relational Targets

Attribute Name Source Type Description

ADABAS Password ADABAS Adabas file password.

BLKSIZE SEQ (MVS only) MVS data set block size.Default is 0 (best possible block size).

DATACLAS SEQ (MVS only) MVS SMS data class name.

Delete SQL Override ADABAS, IMS, VSAM Overrides default Delete SQL sent to PowerExchange.

Disp SEQ (MVS only) MVS data set disposition. Values are: OLD, SHR, NEW, MOD.Default is MOD if the data set exists and NEW if it does not.

File Name Override SEQ, VSAM Overrides the data set or file name in the PowerExchange data map. Enter enter the complete data set or file name.

For AS/400, this name should be: library_name/file_name.

Insert Only ADABAS, IMS, VSAM Processes updates and deletes as inserts.

Insert SQL Override All Overrides the default Insert SQL sent to PowerExchange.

LRECL SEQ (MVS only) MVS data set logical record length.Default is 256.

Map Name Override All Overrides the target PowerExchange data map name.

MGMTCLAS SEQ (MVS only) SMS management class name.

MODELDSCB SEQ (MVS only) MVS Model DSCB for non-SMS-managed GDG data sets.

Post SQL All SQL statement(s) executed after the session is run using the target database connection.

Pre SQL All SQL statement(s) executed before the session is run using the target database connection.

Primary Space SEQ (MVS only) MVS Primary space allocation, in the units specified in Space.Default is 1.

RECFM SEQ (MVS only) MVS Record format. Values are: F, V, FU, FB, VU, VB, FBA, VBA.

Schema Name Override

All Overrides the target PowerExchange data map schema name.

Secondary Space SEQ (MVS only) MVS Secondary space allocations, in the units specified in Space.Default is 1.

Space SEQ (MVS only) MVS data set space units. Values are:- CYLINDER- TRACKDefault is TRACK.

146 Chapter 5: Working with Sessions

Page 163: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 147 Wednesday, December 12, 2007 10:19 AM

STORCLAS SEQ (MVS only) SMS storage class name.

Truncate Table Option

IMS, VSAM Truncates table (deletes contents) before loading new data. Note: VSAM data sets must be defined with the REUSE option for truncate to function correctly.

UNIT SEQ (MVS only) MVS unit type.Default is SYSDA.

Update SQL Override ADABAS, IMS, VSAM Overrides the default Update SQL that is sent to PowerExchange.

Upsert ADABAS, IMS, VSAM Processes failed inserts as updates and updates as inserts.

VOLSER SEQ (MVS only) MVS volume serial number.

Table 5-1. Session Properties for Non-Relational Targets

Attribute Name Source Type Description

Loading Data to PowerExchange Targets 147

Page 164: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 148 Wednesday, December 12, 2007 10:19 AM

148 Chapter 5: Working with Sessions

Page 165: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 149 Wednesday, December 12, 2007 10:19 AM

C h a p t e r 6

Restart and Recovery

This chapter includes the following topics:

♦ Overview, 150

♦ Understanding PWXPC Restart and Recovery, 151

♦ Creating Recovery Tables, 160

♦ Configuring the Restart Token File, 162

♦ PWXPC Restart and Recovery Operation, 165

149

Page 166: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 150 Wednesday, December 12, 2007 10:19 AM

Overview

This chapter describes PWXPC restart and recovery processing as well as how to configure your CDC sessions to use this processing.

Each source in a CDC session has unique restart information, also referred to as restart tokens. PWXPC manages the CDC restart information. The Integration Service provides recovery for the target files and tables in CDC sessions.

In order to extract change data from the change stream, PWXPC provides restart information for the CDC sources to PowerExchange. PowerExchange reads the change stream on the CDC source platform and provides complete units of work to PWXPC. A unit of work (UOW) is a collection of changes within a single commit scope made by a transaction on the source system. Using the commit interval information specified in the CDC session connection, PWXPC periodically flushes complete UOWs to the Integration Service.

Target recovery and restart information is stored as the target tables and files are updated by the Integration Service. The Integration Service and PWXPC use this information to recover and restart stopped or failed sessions from the point of interruption.

In order to properly configure CDC sessions, review the following topics:

♦ “CDC-Specific Connection Attributes” on page 112

♦ “Understanding Commit Processing with PWXPC” on page 123

♦ “Extracting CDC Data in Change and Real-time Modes” on page 135

♦ “Understanding PWXPC Restart and Recovery” on page 151

♦ “Configuring the Restart Token File” on page 162

♦ “Enabling Session Recovery” on page 165

♦ “Configuring CDC Sessions” on page 166

In order to manage CDC sessions, review “PWXPC Restart and Recovery Operation” on page 165.

150 Chapter 6: Restart and Recovery

Page 167: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 151 Wednesday, December 12, 2007 10:19 AM

Understanding PWXPC Restart and Recovery

Session Recovery

PowerCenter and PWXPC restart and recovery functionality are utilized when you configure the Recovery Strategy Resume from the last checkpoint. Enabling a resume recovery strategy ensures that both the target data and CDC restart information can be recovered in the event of session failure.

Warning: Do not enable recovery processing if any of the targets in the CDC session use the File Writer to write CDC data to flat files. The restart tokens for all targets in the session, including relational targets, will be compromised if there is a flat file target in the same session. Data loss or duplication may occur.

When you enable a resume recovery strategy, the Integration Service provides recovery for the target tables and files and PWXPC provides recovery for the CDC restart information. PWXPC issues the following message indicating that recovery is in effect:

PWXPC_12094 [INFO] [CDCRestart] Advanced GMD recovery in affect. Recovery is automatic

The Integration Service stores the session state of operation in the shared location, $PMStorageDir. The Integration Service saves relational target recovery in the target database.

CDC restart information, also called restart tokens, originates from PowerExchange on the CDC source platform. PWXPC stores CDC restart information in different locations based upon the target type:

♦ For non-relational targets, PWXPC stores the CDC restart information in the shared location, $PMStorageDir, in state files on the Integration Service platform.

♦ For relational targets, PWXPC stores the CDC restart information in state tables in the target database.

When the Integration Service performs recovery, it restores the state of operation to recover the session from the point of interruption. It uses the target recovery data to determine how to recover the target tables. PWXPC and PowerExchange use the CDC restart information to determine the correct point in the change stream from which to restart the extraction.

Recovery Tables

For relational targets, the Integration Service creates the following recovery tables in the target database:

♦ PM_RECOVERY. This table contains target load information for the session run. The Integration Service removes the information from this table after each successful session and initializes the information at the beginning of subsequent sessions.

♦ PM_TGT_RUN_ID. This table contains information the Integration Service uses to identify each target on the database. The information remains in the table between session runs. If you manually create this table, you must create a row and enter a value other than zero for LAST_TGT_RUN_ID to ensure that the session recovers successfully.

Understanding PWXPC Restart and Recovery 151

Page 168: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 152 Wednesday, December 12, 2007 10:19 AM

♦ PM_REC_STATE. This table contains restart information for CDC sessions. The restart information recorded in the table contains the application name and restart tokens for the session. The restart information remains in the table permanently. The Integration Service updates it with each commit to the target tables.

If you edit or drop the recovery tables before you recover a session, the Integration Service cannot recover the session. If you disable recovery, the Integration Service does not remove the recovery tables from the target database. You must manually remove the recovery tables.

If you want the Integration Service to create the recovery tables, grant table creation privilege to the database user name for the target database connection. For the database user name used with PowerExchange relational targets, see “Recovery Table Creation with PowerExchange Targets” on page 160.

If you do not want the Integration Service to create the recovery tables, create the recovery tables manually.

Tip: If you are using PowerExchange relational target connections, manually create these tables so you can assign the desired database attributes. See “Creating the Recovery Tables Manually” on page 161.

For more information about the PM_RECOVERY and PM_TGT_RUN_ID tables, see the PowerCenterWorkflow Administration Guide.

Recovery State Table

The recovery state table contains the state and CDC restart information for a CDC session. The table resides in the same target database as target tables. The Integration Service creates the state table automatically if it does not exist. See “Creating Recovery Tables” on page 160.

The Integration Service creates an entry in the state table for each CDC session. These entries may comprise more than one row. CDC sessions with heterogeneous relational target tables have entries in the state table in each unique target database. For example, a CDC session which targets Oracle and UDB tables has an entry in the state table in the target Oracle database and in the target UDB database.

Each session entry in the state table contains a number of repository identifiers as well as execution state data like the checkpoint number and the CDC restart information. The columns in the state table are:

♦ OWNER_TYPE_ID - PowerCenter-defined identifier

♦ REP_GID - Global unique identifier of the repository

♦ FOLDER_ID - Folder identifier

♦ WFLOW_ID - Workflow identifier to which the session belongs

♦ WFLOW_RUN_INST_NAME - Workflow run instance name

♦ WLET_ID - Worklet identifier

♦ TASK_INST_ID - Session (task) instance identifier

♦ WID_INST_ID - Reader widget instance identifier

152 Chapter 6: Restart and Recovery

Page 169: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 153 Wednesday, December 12, 2007 10:19 AM

♦ GROUP_ID - Partition group Identifier

♦ PART_ID - Partition identifier

♦ PLUGIN_ID - Application connection plug-in subtype identifier

♦ APPL_ID - Application name from the source application connection

♦ SEQ_NUM - Entry sequence number

♦ VERSION - Session version number

♦ CHKPT_NUM - Session checkpoint number

♦ STATE_DATA - Restart state data for the session

The following columns contain PWXPC-specific restart information:

♦ The APPL_ID column contains the application name specified in the source application connection.

♦ The STATE_DATA column, which contains the restart tokens for the session, is a variable 1024 byte binary column. If the number of restart tokens for a session causes the data to exceed 1024 in length, additional rows are added to accommodate the remainder of the restart information. The SEQ_NUM field is increased by one, starting from zero, for each additional row added for a session entry.

The majority of the columns in the table are task and workflow repository attributes. These repository attributes remain static unless the task or workflow is altered. The following examples are actions that alter these repository attributes:

♦ Adding or removing sources or targets from the mapping used by the session

♦ Moving the workflow or session to a different folder

♦ Moving the session to a different workflow

See “Changing CDC Sessions” on page 171 for additional information.

During session initialization, the Integration Service reads the state table looking for an entry that matches the session data. All column data (with the exception of VERSION, CHKPT_NUM, and STATE_DATA) must match the task and workflow repository attributes for the Integration Service to use an entry. If a match is found, the Integration Service uses that entry for target recovery processing. PWXPC uses the CDC restart information stored in the STATE_DATA column to perform restart and recovery processing.

Recovery State File

The recovery state file is similar to the state table. PWXPC uses the state file to store the CDC restart information for non-relational target files. Non-relational target files include MQ Series message queues, PowerExchange non-relational targets, and other PowerCenter non-relational targets. The Integration Service automatically creates the recovery state file in the shared location, $PMStorageDir, if it does not exist. The file name for the recovery state file is prefixed with:

pm_rec_state_<application_name>

Understanding PWXPC Restart and Recovery 153

Page 170: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 154 Wednesday, December 12, 2007 10:19 AM

The Integration Service uses the application name from the source CDC connection for the application name value in the state file name prefix. The Integration Service includes the complete file name in message CMN_65003. The remainder of the fields in the file name are task and workflow repository attributes. These repository attributes remain static unless the task or workflow is altered. The following examples are actions that alter these repository attributes:

♦ Adding or removing sources or targets from the mapping used by the session

♦ Moving the workflow or session to a different folder

♦ Moving the session to a different workflow

See “Changing CDC Sessions” on page 171 for additional information.

The Restart Token File

PWXPC stores the restart tokens in the state table in the target database for relational targets and in the state file on the Integration Service platform for non-relational targets. The restart token file provides:

♦ Initial restart tokens for new CDC sessions

♦ Overrides for the restart tokens in the state table or file for existing CDC sessions

PWXPC uses the restart token file in the folder specified in the RestartToken File Folder attribute of the source CDC connection. PWXPC automatically creates this folder, if it does not exist, when the attribute contains the default value of $PMRootDir/Restart. PWXPC does not automatically create any other restart token folder name.

During session initialization, PWXPC:

♦ Uses the name specified in the RestartToken File Name attribute to create an empty restart token file, if one does not already exist.

♦ Creates a merged view of the restart tokens by reconciling the restart tokens specified in the restart token file with those in state tables and the state file for all relational and non-relations targets, respectively.

For more information on the reconciliation process, see “Determining the Restart Point” on page 155.

♦ Places the results of the restart token reconciliation process into an initialization file in the restart token file directory and empties out the restart token file.

Emptying the restart token file ensures that it does not override the state table or state file restart tokens with the same restart information the next time the session is run.

During normal termination, PWXPC writes the ending restart tokens into a termination file in the restart token file directory. The restart token files containing the initialization and termination restart tokens have the following names:

<restart_token_file_name>yyyymmddhhmmss_init<restart_token_file_name>yyyymmddhhmmss_term

154 Chapter 6: Restart and Recovery

Page 171: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 155 Wednesday, December 12, 2007 10:19 AM

Where:

♦ restart_token_file_name is the restart token file name from the CDC connection

♦ yyyymmddhhmmss is the initialization file creation timestamp

♦ init or term is for initialization and termination files, respectively

For example, a CDC source application connection specifies a restart token file name of my.app.txt, which does not exist. PWXPC creates the following files on the Integration Service platform in the restart token file folder specified in the connection:

♦ my.app.txt

♦ my.app.txtyyyymmddhhmmss_init

♦ my.app.txtyyyymmddhhmmss_term

The restart token file, my.app.txt, is empty. The timestamps on both the initialization and termination files are the same to indicate that they are related to the same run. The termination file may not exist or may be empty if the session fails.

If you are using the default value of zero for the connection attribute Number of Runs to Keep RestartToken File, PWXPC keeps only one copy of the paired initialization and termination files. Otherwise, PWXPC uses the value specified in that attribute to determine the number of backup copies of these paired files to keep. During termination, PWXPC removes any additional pairs of the backup files beyond the Number of Runs to Keep RestartToken File value.

Determining the Restart Point

Start CDC sessions in one of the following ways:

♦ Cold start. When you cold start a CDC session, PWXPC reads only the restart token file to acquire restart tokens for all sources and makes no attempt to recover the session. The session continues to run until stopped or interrupted.

♦ Warm Start. When you warm start a CDC session, PWXPC reconciles the restart tokens provided in the restart token file, if any, with any restart tokens that exist in the state file or state tables. If necessary, PWXPC performs recovery processing. The session continues to run until stopped or interrupted.

♦ Recover. When you recover a CDC session, PWXPC reads the restart tokens from the state file and state tables and writes them into the restart token file. If necessary, PWXPC performs recovery processing. After PWXPC finishes updating the restart token file and doing any necessary recovery, the session ends.

See “Starting CDC Sessions” on page 169 for more details.

Each CDC source in the CDC session has its own unique restart point. You should create and populate the restart token file with restart points for each source prior to running a CDC session for the first time. If you do not provide restart tokens in the restart token file and no existing entry exists for the session in the state tables or the state file, then PWXPC passes null restart tokens to PowerExchange for all sources in the session. See “Default Restart Points” on page 157 for further information about null restart tokens.

Understanding PWXPC Restart and Recovery 155

Page 172: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 156 Wednesday, December 12, 2007 10:19 AM

The restart tokens PWXPC uses varies based on whether you warm or cold start the CDC session and whether you provide any overriding restart tokens in the restart token file.

Cold Start Processing

Cold start workflows and sessions using the cold start command from Workflow Manager, Workflow Monitor, or pmcmd. PWXPC uses the restart tokens provided in the restart token file, disregarding the state file and state tables, as follows:

♦ Restart Token file empty or does not exist. PWXPC assigns null restart tokens to all sources in the session. See “Default Restart Points” on page 157 for further information about null restart tokens.

♦ Restart token file contains explicit override statements. PWXPC assigns the restart tokens supplied in the restart token file to the specified sources. PWXPC assigns the oldest restart point of the restart tokens specified to all remaining sources. See “Configuring the Restart Token File” on page 162 for further information about explicit override statements.

♦ Restart token file contains special override statement. PWXPC assigns the restart tokens supplied in the restart token file to all sources. See “Configuring the Restart Token File” on page 162 for further information about the special override statement.

♦ Restart token file contains special override statement and explicit override statements. PWXPC assigns the restart tokens supplied in the restart token file in the explicit override statements to the specified sources. PWXPC assigns the restart tokens supplied in the special override statement to all remaining sources.

Warm Start Processing

Warm start workflows and sessions using the start or restart commands from Workflow Manager, Workflow Monitor, or pmcmd. PWXPC merges the restart tokens provided in the restart token file with any restart information that exists in the state file and the state tables as follows:

♦ Restart token file empty or does not exist.

− If no state file (non-relational target) or no entry in a state table (relational target) for the session:

PWXPC assigns null restart tokens to all sources in the session. See “Default Restart Points” on page 157 for further information about null restart tokens.

− If state file (non-relational target) or entry in a state table (relational target) exists for some but not all sources in the session:

PWXPC assigns the restart tokens found in the state file or state tables to the appropriate sources. PWXPC assigns the oldest restart point of the restart tokens available to all remaining source without restart tokens.

− If state file (non-relational target) or entry in a state table (relational target) exists for all sources in the session:

PWXPC uses the restart tokens from the state file or state tables.

156 Chapter 6: Restart and Recovery

Page 173: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 157 Wednesday, December 12, 2007 10:19 AM

♦ Restart token file contains explicit override statements.

− If no state file (non-relational target) or no entry in a state table (relational target) for the session:

PWXPC assigns the restart tokens supplied in the restart token file to the specified sources. PWXPC assigns the oldest restart point of the restart tokens specified in the restart token file to all remaining sources without restart tokens. See “Configuring the Restart Token File” on page 162 for further information about explicit override statements.

− If state file (non-relational target) or entry in a state table (relational target) exists for some but not all sources in the session:

PWXPC assigns the restart tokens supplied in the restart token file to the specified sources. PWXPC assigns the restart tokens found in the state file or state tables to the appropriate sources provided they have not been supplied in the restart token file. PWXPC assigns the oldest restart point of the restart tokens available to all remaining sources without restart tokens.

− If state file (non-relational target) or entry in a state table (relational target) exists for all sources in the session:

PWXPC assigns the restart tokens supplied in the restart token file to the specified sources in the session. PWXPC assigns the restart tokens from the state file or state tables to all remaining sources without restart tokens.

♦ Restart token file contains special override statement.

PWXPC assigns the restart tokens supplied in the special override statement in the restart token file to all sources. See “Configuring the Restart Token File” on page 162 for further information about the special override statement.

♦ Restart token file contains special override statement and explicit override statements.

PWXPC assigns the restart tokens supplied in the restart token file in the explicit override statements to the specified sources. PWXPC assigns the restart tokens supplied in the special override statement to all remaining sources without restart tokens.

Default Restart Points

If you start a new CDC session and no restart token file exists, the Integration Service still runs the session. Because no specific restart point has been provided, PWXPC passes null restart tokens for all sources to PowerExchange. PWXPC issues message PWXPC_12060 indicating that the restart tokens for each source are NULL. PowerExchange, because it receives null restart tokens from PWXPC, assigns the earliest possible restart point to each source.

Warning: Using null restart tokens may not produce the desired results. Valid restart tokens should always be supplied.

Start your extraction for a new CDC session at a point in the change stream where the source and its target are in a consistent state. You do this by placing the restart tokens that match that point in the change stream in the restart token file and doing a cold start of the CDC session.

Understanding PWXPC Restart and Recovery 157

Page 174: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 158 Wednesday, December 12, 2007 10:19 AM

For example, a target table has been materialized from its source data and no new changes have been made to the source data. Now you need to establish a starting extraction, or restart, point in the change stream. You do this by using DTLUAPPL. DTLUAPPL is a PowerExchange utility that generates restart points. After you have run DTLUAPPL, place the generated restart tokens in the restart token file specified in the source CDC connection and cold start the CDC session. PWXPC passes the restart tokens from the restart token file to PowerExchange. PowerExchange extracts changes from the change stream from that restart point forward.

Table 6-1 describes earliest starting extraction (restart) points PowerExchange uses if null restart tokens are supplied for all sources:

PowerExchange only uses the default starting extraction point if all sources have null restart tokens. PWXPC assigned the oldest restart point of the restart tokens available if there are some sources without restart tokens.

For example, a new CDC session contains three sources called A, B, and C. The restart token file contains restart points for sources A and B. The restart point for source A is older than source B. Source C has no existing or supplied restart point. When you run the session, PWXPC assigns source C the same restart point as source A since it is the oldest supplied restart point. PWXPC does not assign the default starting extraction point discussed in Table 6-1 to source C because some sources have restart points.

Initializing and Running CDC Sessions

After the restart information for every source is determined, PWXPC:

♦ Flushes the restart tokens to the state tables for relational targets and to the state file for non-relational targets

♦ Writes an empty restart token file

Table 6-1. Default Starting Extraction Points for Sources

Source Platform/Database

CDC Change Connection CDC Real-time Connection

MVS (all sources)

Oldest Condense file recorded in the CDCT.

Logger selects the best available restart point. This is the oldest restart point for which an archive log is available, or active log if there are no available archive logs.

AS400 Oldest Condense file recorded in the CDCT.

Oldest journal receiver still on the journal receiver chain.

Oracle Oldest Condense file recorded in the CDCT.

Most current Oracle catalog dump.

MSSQL Server n/a Oldest data available in the Publication database.

UDB n/a Current log position at the time the capture catalog was created.

158 Chapter 6: Restart and Recovery

Page 175: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 159 Wednesday, December 12, 2007 10:19 AM

♦ Creates the initialization restart token file containing the reconciled restart information

PWXPC passes the restart tokens for all sources to PowerExchange. PowerExchange uses the oldest restart token passed by PWXPC to start extracting data from the change stream. PowerExchange does not pass data for a source until its restart point is reached. This prevents targets from being updated with records processed in previous extraction runs.

PWXPC continually updates the restart tokens for each source in the state table or the state file as it issues flushes target data. With relational target tables in the same database, the Integration Service updates both the target tables and the restart tokens within a single commit. The Integration Service does separate commits for each unique relational database. With heterogeneous target, the restart tokens in one relational database may differ from those in another relational database at specific points in time.

When using non-relational targets, the state file and the targets likely exist on completely different machines. With non-relational targets, the Integration Service updates the targets and the state file in separate operations. If the session fails after the Integration Service commits data to the target but before it updates the restart tokens in the state file, targets may receive duplicate data when restarted. On warm start, PWXPC uses the last restart tokens written prior to the failure. As a result, PWXPC re-sends data which has already been applied to the non-relational targets.

Ending CDC Sessions

Stop CDC sessions using PowerCenter and PowerExchange commands. See “Stopping CDC Sessions” on page 170 for more information. Sessions can also fail or terminate unexpectedly.

When you stop a CDC session, PWXPC flushes any complete units of work that remain in its buffer. PWXPC then waits for confirmation from the Integration Service that the flushed data has been written to the targets. If it has, PWXPC writes the termination restart token file with the final restart tokens and issues the following message:

PWXPC_12075 [INFO] [CDCRestart] Session complete. Next session will restart at: : Restart 1 [restart1] : Restart 2 [restart2]

The Integration Service commits the flushed data to the targets, including the restart tokens for relational targets. After the Integration Service writes the flushed data to any non-relational targets, it updates the state file with the restart tokens.

If the session fails, the Integration Service rolls back any uncommitted data and the related restart tokens for relational targets. This leaves only the last successfully committed UOW data and restart tokens in the relational target tables. The Integration Service uses relational database rollback capabilities to ensure that uncommitted data is removed during session termination. Consistency between the restart tokens and the relational target data is guaranteed because they are both committed within the same commit scope.

The Integration Service does not do rollback processing for non-relational targets. As a result, duplicate data can occur on restart. You should account for this in your CDC session design.

Tip: If the possibility of duplicate data is unacceptable to your application, then design your CDC sessions to use only relational targets.

Understanding PWXPC Restart and Recovery 159

Page 176: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 160 Wednesday, December 12, 2007 10:19 AM

Creating Recovery Tables

Recovery Table Creation with PowerExchange Targets

The database user name PowerExchange uses to create the recovery tables varies based on the PWXPC connection.

PWX DB2390 (DB2 for z/OS) Relational Connections

When PowerExchange creates the recovery tables for PWX DB2390 connections, it uses:

♦ The default DB2 database (DSNDB04)

♦ The PowerExchange Listener userid if it is running with SECURITY=0 or SECURITY=1 and so this user must be granted the appropriate table creation privilege

♦ The PowerExchange Listener userid if it is running with SECURITY=2 and MVSDB2AF=CAF and so this user must be granted the appropriate table creation privilege

♦ The database user name in the target connection if the PowerExchange Listener is running with SECURITY=2 and MVSDB2AF=RRSAF and so this user must be granted the appropriate table creation privilege

PWX DB2400 (DB2 for i5/OS) Relational Connections

When PowerExchange creates the recovery tables for PWX DB2400 connections, it uses:

♦ The PowerExchange Listener userid if it is running with SECURITY=0 or SECURITY=1 and so this user must be granted the appropriate table creation privilege

♦ The database user name in the target connection is if the PowerExchange Listener is running with SECURITY=2 and so this user must be granted the appropriate table creation privilege

♦ The default journal so it must be enabled for the user name

PWX DB2UDB (DB2 for Linux/UNIX/Windows) Relational Connections

When PowerExchange creates the recovery tables for PWX DB2UDB connections, it uses:

♦ The default tablespace for user-defined tables

♦ The database user name in the target connection and so this user must be granted the appropriate table creation privilege

PWX MSSQLServer (Microsoft SQL Server) Relational Connections

When PowerExchange creates the recovery tables for PWX MSSQLServer connections, it uses the database user name in the target connection. This user must be granted the appropriate table creation privilege.

160 Chapter 6: Restart and Recovery

Page 177: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 161 Wednesday, December 12, 2007 10:19 AM

PWX Oracle Relational Connections

When PowerExchange creates the recovery tables for PWX Oracle connections, it uses the database user name in the target connection. This user must be granted the appropriate table creation privilege.

PWX Sybase Relational Connections

When PowerExchange creates the recovery tables for PWX Sybase connections, it uses the database user name in the target connection. This user must be granted the appropriate table creation privilege.

Creating the Recovery Tables Manually

The Integration Service creates the recovery tables if they do not exist. See “Recovery Table Creation with PowerExchange Targets” on page 160 for more information.

You can manually create the target recovery tables. If using PWX DB2390, PWX DB2400, or PWX DB2UDB connections, consider manually creating the recovery tables so you can specify table attributes.

Informatica provides SQL scripts in the following directory:

<PowerCenter installation_dir>\server\bin\RecoverySQL

Run one of the following scripts to create the recovery tables in the target database:

This is generic DDL. Make the appropriate changes for your environment.

Table 6-2. Recovery Table SQL Scripts

Script Database

create_schema_db2.sql DB2

create_schema_inf.sql Informix

create_schema_ora.sql Oracle

create_schema_sql.sql SQL Server

create_schema_syb.sql Sybase

create_schema_ter.sql Teradata

Creating Recovery Tables 161

Page 178: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 162 Wednesday, December 12, 2007 10:19 AM

Configuring the Restart Token File

You can configure the restart token file to specify the point from which you want to extract source data. If you do not know the restart token file name and location, use one of the following options:

♦ Look at the PWXPC_12057 message in the session log. PWXPC includes the restart token file folder and the restart token file name in this message.

♦ Open the application connection associated with the source. The application connection contains the restart token file name and folder location. This file name overrides the file name you specified in the application connection.

♦ If the restart token file name is not specified in the application connection, PWXPC uses the application name, if specified. Otherwise, PWXPC uses the workflow name.

Warning: The Restart Token File Name must be unique for every session. Using non-unique names causes unpredictable results including session failures and potential data loss.

Syntax Rules

The restart token file has these syntax rules:

♦ No blank lines between statements.

♦ Comment lines begin with:

<!--

♦ Statements begin in any column.

Statement Syntax Format<!-- comment textRESTART1=restart1_tokenRESTART2=restart2_tokenextraction_map_name=restart1_tokenextraction_map_name=restart2_token...extraction_map_namen=restart1_tokenextraction_map_namen=restart2_token

Restart Token File Statements

The restart token file allows the following statements:

Comment Statement<!-- comment text

Use the comment statement anywhere in the restart token file. The “<!--” is required.

162 Chapter 6: Restart and Recovery

Page 179: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 163 Wednesday, December 12, 2007 10:19 AM

Explicit Override Statementextraction_map_name=restart1_tokenextraction_map_name=restart2_token

The explicit override statement specifies restart tokens for a specific source. The source is defined by specifying the extraction map name. Sources can have multiple extraction mappings and therefore multiple extraction map names. Each source specification must consist of ‘a pair of lines with:

♦ The source extraction map name (extraction_map_name) specified with the restart1_token value

♦ The source extraction map name (extraction_map_name) specified with the restart2_token

The extraction map name specified in the restart token file must match what is defined in the CDC session. To determine the extraction map name:

♦ Check the Extraction Map Name attribute in the Session Properties for relational sources

♦ Check the Schema Name Override and Map Name Override attributes in the Session Properties if using CDC data map sources. See Figure 5-4 on page 138. These attributes override the source name in the CDC data map source.

♦ Check the Schema Name and Map Name values in the source Metadata Extensions in Designer if using CDC data map sources. See Figure 3-23 on page 61.

The restart1_token value varies based on capture source and is found in the following:

♦ Sequence= value, minus the trailing 8 zeros, in the DTLUAPPL PRINT output

♦ DTL__CAPXRESTART1 value when extracting data

♦ Sequence token in PowerExchange messages (e.g., PWX-04564, PWX-09959)

♦ Restart Token 1 in PWXPC messages (e.g. PWXPC_12060, PWXPC_12069)

The restart2_token value varies based on the capture source and is found in the following:

♦ Restart= value in the DTLUAPPL PRINT output

♦ DTL__CAPXRESTART2 value when extracting data

♦ Logger token in PowerExchange messages (e.g., PWX-04564, PWX-09959)

♦ Restart Token 2 in PWXPC messages (e.g. PWXPC_12060, PWXPC_12069)

If the session includes source extraction maps that do not have entries in the existing restart token file, then the session executes without error. See “Default Restart Points” on page 157 for an explanation of what restart tokens PWXPC and PowerExchange use in this case.

Special Override StatementRESTART1=restart1_tokenRESTART2=restart2_token

The special override statement allows specifies for all sources in a session. The restart token values (restart1_token and restart2_token) are described in detail in the Explicit Override Statement.

If used, both RESTART1= and RESTART2= must be specified.

Configuring the Restart Token File 163

Page 180: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 164 Wednesday, December 12, 2007 10:19 AM

This override can be used in conjunction with explicit override statements to provide restart tokens for sources which do not have explicit override statements.

An explicit override statement for a source takes precedence over the special override statement for that source.

Restart Token File Example<!-- Restart Tokens for existing tables -->restart1=000000AD775600000000000000AD77560000000000000000Restart2=C1E4E2D34040000000AD5F2C00000000<!-- Restart Tokens for the Table: rrtb0001_RRTB_SRC_001 -->d1dsn7.rrtb0001_RRTB_SRC_001=0000060D1DB2000000000000060D1DB20000000000000000d1dsn7.rrtb0001_RRTB_SRC_001=C1E4E2D340400000013FF36200000000<!-- Restart Tokens for the Table: rrtb0001_RRTB_SRC_002 -->d1dsn7.rrtb0002_RRTB_SRC_002=000000A3719500000000000000A371950000000000000000d1dsn7.rrtb0002_RRTB_SRC_002=C1E4E2D34040000000968FC600000000<!-- Restart Tokens for the Table: rrtb0001_RRTB_SRC_004 -->d1dsn7.rrtb0004_RRTB_SRC_004=000006D84E7800000000000006D84E780000000000000000d1dsn7.rrtb0004_RRTB_SRC_004=C1E4E2D340400000060D1E6100000000

In the example, the session contains 7 source tables. The restart token file contains explicit override statements for 3 sources: RRTB_SRC_001, RRTB_SRC_002, and RRTB_SRC_004. It also contains the special override statement to provide the restart tokens for the remainder of the sources in the session. When the session executes, PWXPC issues message PWXPC_12060 as follows:

===============================Session restart information:===============================Extraction Map Name Restart Token 1 Restart Token 2 Sourced1dsn7.rrtb0001_RRTB_SRC_001 0000060D1DB2000000000000060D1DB20000000000000000 C1E4E2D340400000013FF36200000000 Restart file d1dsn7.rrtb0002_RRTB_SRC_002 000000A3719500000000000000A371950000000000000000 C1E4E2D34040000000968FC600000000 Restart file d1dsn7.rrtb0003_RRTB_SRC_003 000000AD775600000000000000AD77560000000000000000 C1E4E2D34040000000AD5F2C00000000 Restart file (special override)d1dsn7.rrtb0004_RRTB_SRC_004 000006D84E7800000000000006D84E780000000000000000 C1E4E2D340400000060D1E6100000000 Restart file d1dsn7.rrtb0005_RRTB_SRC_005 000000AD775600000000000000AD77560000000000000000 C1E4E2D34040000000AD5F2C00000000 Restart file (special override)d1dsn7.rrtb0006_RRTB_SRC_006 000000AD775600000000000000AD77560000000000000000 C1E4E2D34040000000AD5F2C00000000 Restart file (special override)d1dsn7.rrtb0007_RRTB_SRC_007 000000AD775600000000000000AD77560000000000000000 C1E4E2D34040000000AD5F2C00000000 Restart file (special override)

PWXPC displays the sources with explicit overrides with “Restart file” under the Source column. The sources to which PWXPC assigns the special override restart tokens have “special override” in parentheses.

164 Chapter 6: Restart and Recovery

Page 181: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 165 Wednesday, December 12, 2007 10:19 AM

PWXPC Restart and Recovery Operation

Enable a resume recovery strategy for CDC sessions. When you enable a resume recovery strategy, the Integration Service provides recovery for the target table data and PWXPC provides recovery for the CDC restart information.

PowerExchange on the source platform provides the CDC restart information, which consists of restart tokens describing a specific start point in the change stream. PWXPC stores the restart tokens for relational targets in recovery state tables in the target databases. For non-relational targets, PWXPC stores the restart tokens in the recovery state file on the Integration Service machine. For additional information about restart token processing, see “Understanding PWXPC Restart and Recovery” on page 151.

PWXPC issues the following message when you specify a resume recovery strategy:

PWXPC_12094 [INFO] [CDCRestart] Advanced GMD recovery in affect. Recovery is automatic

PWXPC automatically recovers warm started sessions when a resume recovery strategy is specified.

Enabling Session Recovery

Enabling recovery for a CDC session:

1. Select “Resume from last checkpoint” for the Recovery Strategy in the Properties tab.

This is the only recovery strategy that enables PWXPC and the Integration Service to recover CDC sessions.

2. Change the Commit Type attribute from Target to Source.

CDC sessions always use source-based commit processing regardless of the Commit Type attribute setting.

3. Disable the Commit at End of File attribute in the Properties tab.

The Integration Service, after PWXPC has shutdown, issues a commit when the session ends. Data written to the targets after PWXPC shuts down is not reflected in the restart tokens. Disabling this flag ensures that PWXPC issues all commits.

Warning: If you are using the File Writer to write CDC data to flat files, do not enable recovery processing. Data loss or duplication may occur since the restart tokens for all targets, including relational targets, are compromised if there is a flat file target in the same session.

If you run a session with resume recovery strategy and the session fails, do not edit the mapping or session’s the state table entry or file before you restart the session. Recovery is compromised if changes are made. See “Recovering from CDC Session Failures” on page 173.

When the Integration Service resumes a session, it restores the session state of operation, including the state of each source, target, and transformation. The Integration Service, in conjunction with PWXPC, determines how much of the source data it needs to reprocess.

For additional information about the Integration Service recovery processing, see the PowerCenterWorkflow Administration Guide.

PWXPC Restart and Recovery Operation 165

Page 182: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 166 Wednesday, December 12, 2007 10:19 AM

Configuring CDC Sessions

You control PWXPC restart processing with session options and attributes. Ensure that all of the appropriate session configuration is done.

The following table summarizes the options and attributes with defaults that must be changed for CDC sessions:

Table 6-3. CDC Sessions - Recommended Settings

Option / Attribute Location Recommended Value and Explanation

Commit Type Properties Tab Source.

The default is Target. The Integration Service automatically overrides it to Source. You cannot change Commit On End Of File unless you change Commit Type to Source.

Commit On End Of File

Properties Tab Disabled.

The default is enabled. The Integration Service performs a commit when the session ends. This commit occurs after PWXPC commits the restart tokens. Duplicate data can occur on restart if this default is enabled.

Recovery Strategy Properties Tab Resume from last checkpoint.

The default value is Fail task and continue workflow. PWXPC requires Resume from last checkpoint.

See “Enabling Session Recovery” on page 165.

Stop on errors Config Object Tab 1.

The default value is 0. Errors encountered by the Integration Service while writing to the target database or target files are not counted by default. Writer threshold errors can include key constraint violations, loading nulls into a not null field, and database trigger responses. PWXPC is unaware that the writer has not applied the data to the target and so advances the restart tokens. Set this value to 1 to ensure target data and restart token integrity is maintained.

See the PowerCenter Workflow Administration Guide.

Application Name Application Connection

Unique name.

The default is the first 20 characters of the WorkFlow Name.The default may not result in a unique name. Specify a unique name.

See “Application Names” on page 167.

166 Chapter 6: Restart and Recovery

Page 183: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 167 Wednesday, December 12, 2007 10:19 AM

Application Names

PowerExchange, when using ODBC connections, stores the restart tokens in the PowerExchange CDEP file on the extraction platform. PWXPC stores the restart tokens in:

♦ The state file on the Integration Service platform, for non-relational sources

♦ The state table in the target database, for relational sources

PowerExchange always stores extraction history information in the CDEP file for each application name, regardless of whether the CDEP is being used to maintain restart tokens or not. With PWXPC the CDEP file is used for history only.

An application name is required when using PWXPC. Each CDC session must use a unique application name in order to prevent failures due to conflicts in the CDEP. Application names cannot be shared with other CDC sessions.

Warning: Do not use a PWXPC CDC session application name when performing a Database Row Test in PowerExchange Navigator or when using the DTLUAPPL utility. Using the same application name as a PWXPC CDC session in another CDC session, a Navigator row test, or in DTLUAPPL fails with message:

PWX-04553 Error restart tokens [required | not allowed] for application "application name"

Using DTLUAPPL with CDC Sessions

Use the PowerExchange DTLUAPPL utility to generate restart tokens for CDC sessions instead of using the default restart point. Update the restart token file with the generated restart tokens to establish the starting extraction point in the change stream.

Restart Token File Name

Application Connection

Unique name.

The default is either: - the WorkFlow Name if no Application Name is specified- the Application Name

The default may not result in a unique name. Specify a unique name.

See “The Restart Token File” on page 154.

Number of Runs to Keep RestartToken File

Application Connection

Value greater than 0.

The default is 0. PWXPC keeps only one backup copy of the restart token initialization and termination files. Specify a value greater than 0 so a history is available for recovery purposes.

See “The Restart Token File” on page 154.

Table 6-3. CDC Sessions - Recommended Settings

Option / Attribute Location Recommended Value and Explanation

PWXPC Restart and Recovery Operation 167

Page 184: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 168 Wednesday, December 12, 2007 10:19 AM

Use a unique application name when generating restart tokens with DTLUAPPL so you avoid any conflicts with existing application names used for CDC sessions.

For more information on DTLUAPPL, see the PowerExchange Utilities Guide.

For more information on configuring the restart token file, see “Configuring the Restart Token File” on page 162.

Example: Using DTLUAPPL

The registration on the ADD RSTTKN statement must exist. This registration must be associated with the instance name specified on the MOD APPL statement. You can use either ADD APPL or MOD APPL for a new application name. DTLUAPPL creates the application name if it does not exist when MOD APPL is used.

Tip: Select an application name and use it only with DTLUAPPL when generating restart tokens.

The following example generates restart tokens for source registration DB2DEMO1 using an application name of tokens and then prints those restart tokens:

MOD APPL tokens DSN7 RSTTKN GENERATE ADD RSTTKN db2demo1END APPL tokensPRINT APPL tokens

The DTLUAPPL prints the generated tokens because the PRINT APPL statement is specified:

Application name=<tokens> Rsttkn=<1> Ainseq=<0> Preconfig=<N> FirstTkn =<> LastTkn =<> CurrentTkn=<> Registration name=<db2demo1.1> tag=<DB2DSN7db2demo11> Sequence=<000007248B9600000000000007248B9600000000> Restart =<D2D1D4D34040000007248B0E00000000>

DTLUAPPL does not generate the complete restart1_token value which is shown in the SEQUENCE token. You must be add the trailing four bytes (eight digits) of zeros manually when you update the restart token file. DTLUAPPL does generate the complete restart_token2 value in the Restart= token. You can copy this value to the restart token file.

Tip: You can use same restart tokens for multiple source tables in the restart token file to start extracting changes from the same point in the change stream. You only need to run DTLUAPPL multiple times if you want to start extracting changes from different locations in the change stream for different sources.

Using the tokens in this example, the restart token file looks as follows:

D1DSN7.db2demo1=000007248B9600000000000007248B960000000000000000D1DSN7.db2demo1=D2D1D4D34040000007248B0E00000000

168 Chapter 6: Restart and Recovery

Page 185: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 169 Wednesday, December 12, 2007 10:19 AM

Starting CDC Sessions

Use the Workflow Manager, Workflow Monitor, or pmcmd to run a workflow or task. You can choose to run the entire workflow, part of a workflow, or a task in the workflow. You can choose to warm start, recover, or cold start workflows and tasks.

Cold Start Processing

Cold start workflows and tasks by selecting the cold start command in Workflow Manager, Workflow Monitor, or pmcmd. When you request cold start, PWXPC issues the following message:

PWXPC_12091 [INFO] [CDCRestart] Cold start requested

PWXPC performs the following tasks for cold start:

1. PWXPC reads the restart tokens from the restart token file only. See “Determining the Restart Point” on page 155.

2. PWXPC commits the restart tokens to the state tables and file and issues message PWXPC_12104.

3. PWXPC continues processing and committing data and restart tokens until the session ends or is stopped.

Warm Start Processing

Warm start workflows and tasks by selecting the start or restart command in Workflow Manager, Workflow Monitor, or pmcmd. When you request warm start, PWXPC issues the following message:

PWXPC_12092 [INFO] [CDCRestart] Warm start requested. Targets will be resynchronized automatically if required

PWXPC automatically performs recovery when a workflow or task is warm started. You do not need to recover workflows and tasks before you restart them.

PWXPC performs the following tasks for warm start:

1. PWXPC reconciles the restart tokens from the restart token file and from the recovery state tables and file. See “Determining the Restart Point” on page 155.

2. For heterogeneous targets, PWXPC queries the Integration Service about the commit levels of all targets. If all targets in the session are at the same commit level, PWXPC skips recovery processing.

3. If recovery is required for heterogeneous targets, PWXPC re-reads the data for the last UOW committed to higher-level targets and flushes it to those targets with the lower commit level. The Integration Service commits any flushed data and restart tokens to any relational targets and updates any non-relational files.

Note: PWXPC does not read the restart token file if recovery is required.

PWXPC Restart and Recovery Operation 169

Page 186: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 170 Wednesday, December 12, 2007 10:19 AM

4. If recovery is not required and the reconciled restart tokens differ from those in the state tables and file, PWXPC commits the reconciled restart tokens and issues message PWXPC_12104.

5. PWXPC continues processing and committing data and restart tokens until the session ends or is stopped.

Recovery Processing

Recover workflows and tasks by selecting the recover command in Workflow Manager, Workflow Monitor, or pmcmd. When you request recovery, PWXPC issues the following message:

PWXPC_12093 [INFO] [CDCRestart] Recovery run requested. Targets will be resynchronized if required and processing will terminate

Select Recover to populate the restart token file with the restart tokens for all sources in the CDC session so that you can cold start. You can also use recovery to ensure the targets and restart tokens are in a consistent state.

PWXPC automatically performs recovery when a workflow or task is warm started. You do not need to recover workflows and tasks before you restart them. PWXPC performs the following tasks for recovery:

1. PWXPC reads the restart tokens from the recovery state tables and file.

2. PWXPC creates the initialization restart token file with the reconciled restart tokens.

3. For heterogeneous targets, PWXPC queries the Integration Service about the commit levels of all targets. If all targets in the session are at the same commit level, PWXPC skips recovery processing.

4. If recovery is required for heterogeneous targets, PWXPC re-reads the data for the last UOW committed to higher-level targets and flushes it to those targets with the lower commit level. The Integration Service commits any flushed data and restart tokens to any relational targets and updates any non-relational files.

Note: PWXPC does not read the restart token file if recovery is required.

5. PWXPC updates the restart token file with the final restart tokens, creates the termination restart token file, and ends.

You can now warm start or cold start the workflow or task to process changed data from the point of interruption.

Stopping CDC Sessions

Stop CDC sessions through PowerCenter by issuing the stop command from Workflow Monitor or pmcmd. You can also stop CDC sessions through PowerExchange by issuing the STOPTASK command or by running the DTLUTSK utility. For information about the STOPTASK command and the syntax of the DTLUTSK utility, see the description of DTLUTSK in the PowerExchange Utilities Guide.

170 Chapter 6: Restart and Recovery

Page 187: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 171 Wednesday, December 12, 2007 10:19 AM

When you stop a workflow or task gracefully by issuing the stop command through PowerCenter or PowerExchange, the following action occurs:

1. The Integration Service requests PWXPC to stop if you issue the PowerCenter stop command.

If you issue the PowerExchange stop command, it sends an end of file to PWXPC.

2. PWXPC performs end of file processing to flush the remaining uncommitted complete units of work to the targets and issues message PWXPC_12101. PWXPC also commits the restart tokens and issues message PWXPC_12068.

3. The Integration Service processes all of data in the pipeline and writes it to the targets.

4. The Integration Service sends an acknowledgement to PWXPC indicating that the targets have been updated.

5. PWXPC issues message PWXPC_12075, writes the termination restart token file, and shuts down.

6. The Integration Service ends the session successfully.

You can also stop CDC sessions gracefully if you:

♦ Use Idle Time=0 in the PWX CDC Real Time connection which instructs PowerExchange to stop processing at end of log. See “Configuring Idle Time” on page 115.

♦ Use a PWX CDC Change connection to extract changes from condense files.

When you use PowerExchange batch change extraction mode for condense files, the extraction automatically ends when all condensed data is read.

You can also stop a workflow or task using the abort command in Workflow Monitor or pmcmd. For information about the abort command, see the PowerCenterWorkflow Administration Guide.

Changing CDC Sessions

The state table entry and state file name for CDC sessions contains numerous repository attributes. See “Understanding PWXPC Restart and Recovery” on page 151. Consider this when you change CDC sessions.

For example, you add a new relational source and target to an existing CDC session that includes relational and non-relational targets. You then execute the changed CDC session. The Integration Service does not use the existing entry in the state table or the existing state file because some repository attributes are now different from the previous run. Instead, the Integration Service creates a new entry in the state table and a new state file. Because the Integration Service creates new state information for your session, PWXPC begins reading from a different location in the change stream. Your target tables and files are now out-of-sync with their source tables and files.

PWXPC Restart and Recovery Operation 171

Page 188: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 172 Wednesday, December 12, 2007 10:19 AM

To change a CDC session and restart it from the point of interruption:

1. Gracefully stop the workflow. See “Stopping CDC Sessions” on page 170.

2. After the workflow stops successfully, issue the Recover command for the CDC session.

When you recover tasks, PWXPC writes the ending restart tokens for the session into the restart token file.

3. Change the session or workflow as desired.

4. Ensure that the restart token file specified in the source CDC connection specifies the restart token file updated in the recovery session.

5. Optionally, update the restart token file to add or remove sources.

6. Cold start the CDC session.

Example: Adding a New Source to an Existing Session

In this example, a new source (RRTB_SRC_004) is added to an existing CDC session containing three sources. The restart points for the existing sources are maintained. DTLUAPPL is used to generate a restart token representing the current end-of-log in the change stream.

To add a new source to an existing session - example:

1. Stop the workflow by issuing the Stop command in Workflow Monitor.

2. After the workflow stops, use the Workflow Monitor and issue the Recover Task command from Workflow Monitor to run a recovery session. This displays the current restart points. The session log shows the following:

CDCDispatcher> PWXPC_12060 [INFO] [CDCRestart]

===============================Session restart information:===============================Extraction Map Name Restart Token 1 Restart Token 2 Sourced1dsn7.rrtb0002_RRTB_SRC_002 000000AD220F00000000000000AD220F0000000000000000 C1E4E2D34040000000AD0D9C00000000 GMD storaged1dsn7.rrtb0001_RRTB_SRC_001 000000AD220F00000000000000AD220F0000000000000000 C1E4E2D34040000000AD0D9C00000000 GMD storaged1dsn7.rrtb0003_RRTB_SRC_003 000000AD220F00000000000000AD220F0000000000000000 C1E4E2D34040000000AD0D9C00000000 GMD storage

PWXPC places the restart tokens in the restart token file specified in the CDC application connection.

3. Make any necessary changes to the mapping, session, and workflow to add the new source, RRTB_SRC_004.

4. Run DTLUAPPL with RSTTKN GENERATE to generate restart tokens for the current end-of-log. Use the following DTLUAPPL control cards to do this:

mod APPL dummy DSN7 rsttkn generate mod rsttkn rrtb004end appl dummyprint appl dummy

172 Chapter 6: Restart and Recovery

Page 189: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 173 Wednesday, December 12, 2007 10:19 AM

The PRINT command produces the following output:

Registration name=<rrtb004.1> tag=<DB2DSN7rrtb0041> Sequence=<00000DBF240A0000000000000DBF240A00000000> Restart =<C1E4E2D3404000000DBF238200000000>

Add eight zeroes to the end of the Sequence= value to create the restart token file value.

5. Update the restart token file to add the new source and its tokens. The updated file looks as follows:

<!-- existing sourcesd1dsn7.rrtb0001_RRTB_SRC_001=000000AD220F00000000000000AD220F0000000000000000d1dsn7.rrtb0001_RRTB_SRC_001=C1E4E2D34040000000AD0D9C00000000d1dsn7.rrtb0002_RRTB_SRC_002=000000AD220F00000000000000AD220F0000000000000000d1dsn7.rrtb0002_RRTB_SRC_002=C1E4E2D34040000000AD0D9C00000000d1dsn7.rrtb0003_RRTB_SRC_003=000000AD220F00000000000000AD220F0000000000000000d1dsn7.rrtb0003_RRTB_SRC_003=C1E4E2D34040000000AD0D9C00000000<!-- new sourced1dsn7.rrtb0004_RRTB_SRC_004=00000DBF240A0000000000000DBF240A0000000000000000d1dsn7.rrtb0004_RRTB_SRC_004=C1E4E2D3404000000DBF238200000000

6. Cold start the session.

PWXPC passes these restart tokens to PowerExchange to recommence extracting changes from the change stream. Note that this restart point is earlier than the one just generated for the new source. The new source does not receive any changes until the first change following its restart point is encountered.

For additional information, see:

♦ “Configuring the Restart Token File” on page 162

♦ “Using DTLUAPPL with CDC Sessions” on page 167

Recovering from CDC Session Failures

If you run a session with a resume recovery strategy and the session fails, do not edit the state information or the mapping for the session before you restart the session.

CDC sessions fail for a number of reasons, such as:

♦ Permanent errors such as source or target data errors

♦ Transitory errors such as infrastructure problems, server crashes, and network availability issues.

If the session fails because of transitory errors, restart the session after the source of the transitory error is corrected. PWXPC automatically recovers warm started sessions, if required although you can also run a recovery session. See “Recovery Processing” on page 170.

Note: You cannot override the restart point if recovery processing is required. PWXPC does not read the restart token file if you warm start and recovery is required or if you run a recovery session.

CDC sessions also fail because of permanent errors, such as SQL failures or other database errors. You must correct permanent errors before restarting the CDC session. With some failures, you can correct the error and then restart the CDC session. In other cases, you need to re-materialize the target table from the source table before you recommence applying

PWXPC Restart and Recovery Operation 173

Page 190: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 174 Wednesday, December 12, 2007 10:19 AM

changes to it. If you re-materialize the target table, you need to provide restart tokens matching the new restart point in the change stream and the cold start the CDC session.

Example: Session Recovery

In this example, a CDC session with relational targets is aborted using the Workflow Monitor. The Restart Task command is issued from the Workflow Monitor for the CDC session. PWXPC issues the following message:

PWXPC_12092 [INFO] [CDCRestart] Warm start requested. Targets will be resynchronized automatically if required

PWXPC automatically recovers when the session is warm started. PWXPC issues the following messages displaying the restart tokens found for the session and its sources:

CDCDispatcher> PWXPC_12060 [INFO] [CDCRestart]

===============================Session restart information:===============================Extraction Map Name Restart Token 1 Restart Token 2 Sourced1dsn8.rrtb0004_RRTB_SRC_004 00000FCA65840000000000000D2E004A00000000FFFFFFFF C1E4E2D3404000000D21B1A500000000 GMD storaged1dsn8.rrtb0009_RRTB_SRC_009 00000FCA65840000000000000D2E004A00000000FFFFFFFF C1E4E2D3404000000D21B1A500000000 GMD storaged1dsn8.rrtb0005_RRTB_SRC_005 00000FCA65840000000000000D2E004A00000000FFFFFFFF C1E4E2D3404000000D21B1A500000000 GMD storaged1dsn8.rrtb0006_RRTB_SRC_006 00000FCA65840000000000000D2E004A00000000FFFFFFFF C1E4E2D3404000000D21B1A500000000 GMD storaged1dsn8.rrtb0008_RRTB_SRC_008 00000FCA65840000000000000D2E004A00000000FFFFFFFF C1E4E2D3404000000D21B1A500000000 GMD storaged1dsn8.rrtb0003_RRTB_SRC_003 00000FCA65840000000000000D2E004A00000000FFFFFFFF C1E4E2D3404000000D21B1A500000000 GMD storaged1dsn8.rrtb0002_RRTB_SRC_002 00000FCA65840000000000000D2E004A00000000FFFFFFFF C1E4E2D3404000000D21B1A500000000 GMD storaged1dsn8.rrtb0001_RRTB_SRC_001 00000FCA65840000000000000D2E004A00000000FFFFFFFF C1E4E2D3404000000D21B1A500000000 GMD storaged1dsn8.rrtb0007_RRTB_SRC_007 00000FCA65840000000000000D2E004A00000000FFFFFFFF C1E4E2D3404000000D21B1A500000000 GMD storage

PWXPC issues the PWXPC_12069 message when it detects that recovery is required. The 12069 message usually includes the begin-UOW (from) and end-UOW (to) restart tokens for the oldest uncommitted UOW that PWXPC re-reads during recovery. PWXPC stores end-UOW restart tokens in the state table and file unless sub-packet commit is used. See “Configuring Commit Threshold” on page 121.

CDCDispatcher> PWXPC_12069 [INFO] [CDCRestart] Running in recovery mode. Reader will resend the the oldest uncommitted UOW to resync targets: from: Restart 1 [00000FCA65840000000000000D2E004A00000000FFFFFFFF] : Restart 2 [C1E4E2D3404000000D21B1A500000000] to: Restart 1 [00000FCA65840000000000000D300D8000000000FFFFFFFF] : Restart 2 [C1E4E2D3404000000D21B1A500000000].

The from restart tokens are the same as those displayed in the PWXPC_12060 messages for all sources. This restart token represents the start point in the change stream for the oldest uncommitted UOW. The to restart tokens represent the end of the oldest uncommitted UOW. Since the application connection for this session specifies sub-packet commit, the Restart 2 value is the begin-UOW value in both cases. The Restart 1 values represent the start and end change records in the Restart 2 UOW.

PWXPC rereads the changes between the two restart token values in the 12069 message and issues a commit for the data and the restart tokens. The Integration Service writes the data to the target tables and the restart tokens to the state table.

PWXPC and the Integration Service continue to read and write data and restart tokens until the session ends or is stopped.

174 Chapter 6: Restart and Recovery

Page 191: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 175 Wednesday, December 12, 2007 10:19 AM

Managing Session Log and Restart Token File History

When you run CDC sessions, session log and restart token file history is often useful for recovery situations. You can use these historical files to find previous restart points when data needs to be re-extracted.

By default, the Integration Service keeps a single session log for each workflow or session. Change the Save session log for these runs in either the session or Session Configuration properties to specify the number or runs to keep the session logs. You can also change the Save session log by attribute to keep session logs by timestamp instead of number of runs. For more information about archiving session logs, see the PowerCenterWorkflow Administration Guide.

PWXPC keeps a single pair of initialization and termination restart token files. In the source CDC connection, request more than a single copy by specifying a value larger than 1 in the Number of Runs to Keep RestartToken File attribute.

Figure 6-1 shows an example of an Application Connection that specifies that 10 copies of the restart token file be maintained in the Restart Token File Folder:

You can determine starting and ending restart points for each extraction using historical copies of the restart token file. You need historical copies of the session logs to re-extract changes at any point in between the session start and end.

When PWXPC issues a real-time flush to commit data to the targets, it issues message PWXPC_10081. This message contains the restart tokens at that point in time:

PWXPC_10081 [INFO] [CDCDispatcher] raising real-time flush with restart tokens [<restart1_token>], [<restart2_token>] <because UOW Count [<n>] is reached.> | <because Real-time Flush Latency [<n>] occurred.>

Figure 6-1. Application Connection - Number of Restart Token Files

PWXPC Restart and Recovery Operation 175

Page 192: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 176 Wednesday, December 12, 2007 10:19 AM

To restart an extraction from a specific commit point, use the restart tokens in the appropriate 10081 message to populate the restart token file and cold start the CDC session. PWXPC passes the restart token file values to PowerExchange to extract the data from that point forward.

176 Chapter 6: Restart and Recovery

Page 193: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 177 Wednesday, December 12, 2007 10:19 AM

C h a p t e r 7

Flexible Key Custom Transformation

This section covers the following topics:

♦ Target Key Transformations, 178

♦ Group Source and Flexible Transformations, 187

177

Page 194: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 178 Wednesday, December 12, 2007 10:19 AM

Target Key Transformations

The Flexible Target Key Custom transformation has been developed to address the case where a data target has its Primary Key mapped to a column in a PowerExchange Change Data Capture source, which may be subject to update.

Prior to the implementation of the Flexible Target Key facility, the only way to identify these changes to a key field was to pass the full record before and after image in the change stream. For sessions involving large amounts of data this overhead could be significant.

For those wishing to keep network traffic to a minimum, PowerExchange has been enhanced to allow indicators to be added to specific fields. These indicators identify instances where that field has changed, and comprise both a “before image” field and a “change indicator” for any given field. From this information a delete/insert pair can then be generated for the target.

Figure 7-1 shows the process:

Here we see the that COL1 is updated from an A to a C. COL1 is marked as the primary key for the target table and is therefore treated as a delete of row A and an insert of row C.

Figure 7-1. Primary key updates from a source relational table

178 Chapter 7: Flexible Key Custom Transformation

Page 195: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 179 Wednesday, December 12, 2007 10:19 AM

Configuring the PowerExchange Extraction Map

To ensure enough information is passed through to PowerCenter for a column, or columns, intended for use as a target primary key, a “change indicator” and “before image” field must be associated with the PowerExchange extraction map.

To configure an extraction map:

1. To add the before image and change indicator right click on the required extraction group.

2. Open the group as shown below:

Target Key Transformations 179

Page 196: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 180 Wednesday, December 12, 2007 10:19 AM

3. Open the required extraction map by either right-clicking and selecting open , or by double-clicking the required extraction map.

4. Right-click the column which requires the before image and change indicator to be set.

180 Chapter 7: Flexible Key Custom Transformation

Page 197: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 181 Wednesday, December 12, 2007 10:19 AM

5. Select Amend Control Indicator/Before Image Extensions

Target Key Transformations 181

Page 198: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 182 Wednesday, December 12, 2007 10:19 AM

6. To set the change indicator, select and add the required column by double-clicking or highlighting it and then clicking Add. When all the required change indicators have been set up, click the Before Images tab.

7. Repeat the process for columns which will require the before image to be included with the change capture data.

Note: The BI and CI column names can be changed on these screens by single-clicking and editing. The following sections in this chapter will refer to the default names.

Configuring PowerCenter

The PowerExchange Change Data Capture (CDC) source will now need to be imported. This must be done through the Import from PowerExchange option under Source Analyzer in the PowerCenter Designer. For more information on importing a CDC source see “Working with Extraction Map Definitions” on page 57.

After the CDC source has been imported, the target definitions will be required. Import them using the Target Designer in the PowerCenter Designer. For more information about importing a target see “Source and Target Definitions” on page 23.

182 Chapter 7: Flexible Key Custom Transformation

Page 199: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 183 Wednesday, December 12, 2007 10:19 AM

The following example will work with a DB2 data capture source and a DB2 target table. The structure of the source CDC table is:

Note: The columns prefixed DTL_CI and DTL_BI are the change indicator and before image respectively which are vital for this flexible transformation. The DTL__CAPX columns are PowerExchange capture columns.

The target is a DB2 table of the following structure:

The source table has a primary key of CUSTOMER_ID, and the PARTNER_CUST_ID is an attribute of the table. The transformation will load the data into the target table where the PARTNER_CUST_ID is the primary key, and the CUSTOMER_ID is an attribute of that table.

In this case, if the PARTNER_CUST_ID changes in the source table, a delete and insert will be required for the target.

Figure 7-2. DB2 Extraction Map Source Mapping

Figure 7-3. DB2 Target Table Mapping

Target Key Transformations 183

Page 200: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 184 Wednesday, December 12, 2007 10:19 AM

Now drag the PowerExchange CDC source, and the target into the mapping as below:

Note: Any of the control information including BI and CI columns could, if required, be defined in the target definition.

Create the Flexible Transformation

1. From the Transformation option, select Create and then select a transformation type of FLXKEYTRANS.

This create will cause a transformation to appear.

2. Link into the transformation the required columns from the source for the target. Also, the transformation will require the BI and CI indicators that were assigned earlier in

Figure 7-4. DB2 Source to DB2 Target CDC mapping

184 Chapter 7: Flexible Key Custom Transformation

Page 201: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 185 Wednesday, December 12, 2007 10:19 AM

PowerExchange (see “Configuring the PowerExchange Extraction Map” on page 179). A final column DTL__CAPXACTION should also be added to the transformation.

3. The BI and CI columns need to be linked to the Flexible transformation. Right-click the transformation you have just created and select Edit. From within the edit dialog box, select the Source Column Map tab and add the columns to which the relevant before images and change indicators are assigned.

Note: The example above shows a single column primary key. Multiple columns can be added here when the target primary key demands.

Target Key Transformations 185

Page 202: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 186 Wednesday, December 12, 2007 10:19 AM

4. Link the transformation to the target. Only link the required data columns from the transformation to the target. No links will exist from the transformation to the target for the CI and BI columns, nor for the DTL__CAPXACTION column unless required in the target. This will result in the following mapping:

5. Create the workflow from the mapping as normal.

186 Chapter 7: Flexible Key Custom Transformation

Page 203: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 187 Wednesday, December 12, 2007 10:19 AM

Group Source and Flexible Transformations

The PowerExchange Group Source functionality allows changed data for multiple sources or multiple records in a single source to be read during a single pass. See “PowerExchange Group Source” on page 71.. The Flexible Target Key Custom transformation also supports this functionality.

The following example shows how data changes captured from a VSAM file, split into two different record types, can be processed through a single Flexible transformation and applied to two output DB2 tables.

1. For an NRDB source create a data map as defined in the relevant PowerExchange Adapter Guide.

2. Amend the data map to assign the relevant record id value test as shown in the dialog box below.

Note: In this example a data map has been created for records with a REC_TYPE of “A” in the example above, and for REC_TYPE of “B”. These data maps are ksdss1.ksdsm1 and ksdss2.ksdsm2 respectively.

3. Now register each of these data maps for PowerExchange capture. This process is described in the relevant PowerExchange Adapter Guide.

4. Assign the BI and CI PowerExchange fields to the extraction map as shown above in “Configuring the PowerExchange Extraction Map” on page 179.

Group Source and Flexible Transformations 187

Page 204: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 188 Wednesday, December 12, 2007 10:19 AM

5. Now import these two extraction maps as data sources into the PowerCenter Designer using Import from PowerExchange.

6. Import the relevant data targets. In this example the two input capture streams will be written to two separate DB2 tables.

7. When the mapping is created it will look similar to the following:.

Note how the Flexible transformation contains the columns for both of the PowerExchange change data input sources, and that they are linked to their own individual output tables. The Flexible Transaction includes Input and Output Groups. An input and output group is added when the flexible transformation is created, but subsequent input/output groups will be required for each source. These are added when you “Edit” the transformation and select the

188 Chapter 7: Flexible Key Custom Transformation

Page 205: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 189 Wednesday, December 12, 2007 10:19 AM

“Ports” tab shown below and then use the Create Input Group and Output Group buttons (the Create Input Group button is highlighted here):

Before validating the mapping the before imaged and change indicators will need to be assigned to ports as shown in step 4 on page 187.

Group Source and Flexible Transformations 189

Page 206: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 190 Wednesday, December 12, 2007 10:19 AM

190 Chapter 7: Flexible Key Custom Transformation

Page 207: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 191 Wednesday, December 12, 2007 10:19 AM

Part 3: PowerExchange ODBC

This part contains the following chapters:

♦ Installing PowerExchange ODBC, 193

♦ Working with Mappings, 197

♦ Configuring Connections, 205

♦ Working with Sessions, 211

♦ PowerExchange Restart and Recovery, 221

191

Page 208: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 192 Wednesday, December 12, 2007 10:19 AM

192 Part 3: PowerExchange ODBC

Page 209: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 193 Wednesday, December 12, 2007 10:19 AM

C h a p t e r 8

Installing PowerExchange ODBC

This chapter includes the following topics:

♦ Overview, 194

♦ Creating ODBC Data Sources, 195

193

Page 210: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 194 Wednesday, December 12, 2007 10:19 AM

Overview

Before installing and configuring the PowerExchange ODBC connection, you must install and configure PowerCenter and PowerExchange.

Note: When connecting to PowerExchange, Informatica recommends using PWXPC instead of PowerExchange ODBC. PWXPC has additional functionality as well as improved performance and superior CDC recovery and restart. See “Functional Comparison between PWXPC and PowerExchange ODBC” on page 4.

Installation Requirements

To use PowerExchange ODBC connections with PowerCenter, the following products must be installed:

♦ PowerCenter 8.5.1. For more information about installing PowerCenter see the PowerCenter Installation Guide.

♦ PowerExchange 8.5.1. Install PowerExchange on the PowerCenter Client and Integration Service machines. For more information about installing PowerExchange see the PowerExchange Installation Guide.

The PowerCenter Client, Integration Service and Repository Server software needs to be installed on the appropriate platforms. The PowerExchange software needs to be installed on the same PowerCenter Client and Server machines.

If you have installed the 32-bit version of Integration Service, you must install the 32-bit version of PWXPC and of PowerExchange. If you have installed the 64-bit version of Integration Service, you must install the 64-bit version of PWXPC and of PowerExchange.

194 Chapter 8: Installing PowerExchange ODBC

Page 211: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 195 Wednesday, December 12, 2007 10:19 AM

Creating ODBC Data Sources

You can create ODBC data sources on the PowerCenter Client and Integration Service machines.

Creating ODBC Data Sources on the PowerCenter Client Machine

On the PowerCenter client machine, you need to define ODBC data sources so that the metadata for PowerExchange sources and targets can be imported.

To create an ODBC data source:

1. Click Control Panel > Administrative Tools >Data Sources (ODBC).

2. Click the System DSN tab.

3. Click the Add button.

4. Select the Informatica PowerExchange driver from the list of available drivers.

5. Click Finish.

6. Enter a name for the data source in the Name box.

7. Select the location from the Location pull-down list. This is name defined on a NODE= statement defined within the PowerExchange configuration file (dbmover.cfg).

8. Select the data source type from the Type pull-down list. Depending on the data source selected you will be presented with other specific properties that you can set.

9. Complete all properties parameters, and click OK. The ODBC data source is created.

For more information about creating ODBC data sources, see "Using ODBC with PowerExchange" in the PowerExchange Reference Manual.

Creating ODBC Data Sources on the Integration Service Machine

On the machine running the Integration Service, you need to define ODBC data sources so that the workflow accessing PowerExchange sources and targets can connect to the PowerExchange Listener to extract the data.

Creating a PowerExchange ODBC Data Source on Windows

Follow the instructions in “Creating ODBC Data Sources on the PowerCenter Client Machine” on page 195.

Creating a PowerExchange ODBC Data Source on UNIX or Linux

Update the appropriate ODBC.INI file to define the ODBC data sources for PowerExchange. The data source entries in the ODBC.INI file have the following format:

[<data source name>]DRIVER=/<PowerExchange full install path>/libdtlodbc.sl

Creating ODBC Data Sources 195

Page 212: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 196 Wednesday, December 12, 2007 10:19 AM

DESCRIPTION='<Descriptive Text for Data Source>'LOCATION=<data source node from dbmover.cfg> DBTYPE=< Access method for file or database>… (other ODBC parameters as appropriate)

For more information about ODBC data source parameters (both mandatory and optional) for a specific DBTYPE, see the PowerExchange Reference Manual.

The <data source name> defined in the odbc.ini is specified in the Connect String value of the ODBC Connection in PowerCenter. This connect string causes the PowerExchange ODBC driver to be loaded and the specified location to be contacted to extract or load the data. For more information about ODBC connectivity with PowerCenter, see the PowerCenter Configuration Guide.

196 Chapter 8: Installing PowerExchange ODBC

Page 213: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 197 Wednesday, December 12, 2007 10:19 AM

C h a p t e r 9

Working with Mappings

This chapter includes the following topics:

♦ Overview, 198

♦ Working with Source and Target Definitions for PowerExchange Batch, 199

♦ Working with Source Definitions for PowerExchange Change or Real-time, 202

197

Page 214: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 198 Wednesday, December 12, 2007 10:19 AM

Overview

A mapping is a set of source and target definitions linked by transformation objects that define the rules for data transformation. Mappings represent the data flow between sources and targets.

Source and target definitions represent metadata for sources and targets. When you create a source definition, its structure differs depending on the type of source it represents:

♦ Non-relational sources require a multi-group source definition.

♦ Relational sources use a single-group source definition.

The source qualifier for a source definition also differs in structure depending on the type of source definition.

After you create a source or target definition, you can include it in a mapping to extract data from the source or load data to the target. You can extract source data in batch, change, or real-time mode. You can use one source definition and one mapping for all modes.

For a list of sources and targets that PowerExchange ODBC Interface supports, see Table 1-4 on page 10. This table also lists whether the Integration Service can read the source data in batch, change, or real-time mode.

198 Chapter 9: Working with Mappings

Page 215: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 199 Wednesday, December 12, 2007 10:19 AM

Working with Source and Target Definitions for PowerExchange Batch

With PowerExchange ODBC, you can create source or target definitions to access VSAM and sequential datasets (flat files), Adabas, DataCom, DB2, IDMS, or IMS databases. You create the source and target definitions identically regardless of the database type. After you create a source or target definition, you can edit it.

For non-relational sources, the metadata imported is from the PowerExchange data map created through the PowerExchange Navigator. In the case of DB2/390 and DB2/400, the metadata is obtained either directly from the DB2 catalog or from a PowerExchange data map.

Importing a Source or Target Definition

You connect to a PowerExchange Listener to import a source or target definition using ODBC. Therefore, the data map must be sent to the PowerExchange Listener before it can be imported using an ODBC connection in Designer.

When you connect to the PowerExchange Listener, the Designer displays a list of schemas and tables. Before you connect, you can filter the metadata the Designer displays by schema name. Select a table from the displayed list to create the source or target definition.

When you import a DB2/390 or DB2/400 source definition through a PowerExchange Listener, the Designer imports the primary keys.

Working with Source and Target Definitions for PowerExchange Batch 199

Page 216: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 200 Wednesday, December 12, 2007 10:19 AM

To import a source or target definition:

1. Click Sources > Import from Database in the Source Analyzer if importing a source definition. Click Targets>Import from Database in the Target Designer if importing a target definition.

The following Import Tables dialog box appears.

Use the Owner name field to restrict the objects retrieved.

When you import PowerExchange data maps, the Owner is the Schema Name of the data map and the ODBC data source must have a DB Type of NRDB or NRDB2. When the DB2 catalog is used for DB2/390 or DB2/400, the Owner is the owner of the DB2 tables and the DB Type must be either DB2 or DB2400C.

If the Listener pointed to by the ODBC data source is running with PowerExchange Security (either SECURITY=(1,x) or SECURITY=(2,x) in the PowerExchange configuration file), then a valid userid and password must be provided.

The only difference between NRDB and NRDB2 is whether a three or two tier naming conventions is used in the SQL statements to extract or load data. Non-relational sources and targets mapped in PowerExchange can be referred to using either NRDB or NRDB2. The format is as follows:

schema.mapname.table for NRDB

or

schema.mapname_table for NRDB2

200 Chapter 9: Working with Mappings

Page 217: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 201 Wednesday, December 12, 2007 10:19 AM

2. Click Connect.

3. Select the table you want to import.

♦ Hold down the Shift key to select blocks of tables.

♦ Hold down the Ctrl key to make non-contiguous selections within a schema.

♦ Click Select All to select all tables.

♦ Click Select None to clear all highlighted selections.

4. Click OK.

The source or target definition appears.

5. Click Repository > Save.

Working with Source and Target Definitions for PowerExchange Batch 201

Page 218: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 202 Wednesday, December 12, 2007 10:19 AM

Working with Source Definitions for PowerExchange Change or Real-time

With PowerExchange ODBC, you can create source definitions to access changed data for VSAM datasets (including CICS/VSAM), and Adabas, Datacom, DB2, IDMS, IMS, MSSQL Server, and Oracle databases.

Importing a Change Data Capture Source Definition

You initially create the source definitions in a similar way regardless of the database type. When you have created the source or target definition, you can edit it.

The metadata that is imported for all change data sources is taken from the PowerExchange extraction maps. Extraction maps are created by the PowerExchange Navigator when the source is initially registered for Change Data Capture. These can be manually modified at a later date.

To import a Change Data Capture Source Definition

1. Click Sources > Import from Database in the Source Analyzer.

The Import Tables dialog box appears.

Use the Owner name field to restrict the objects retrieved.

When you import PowerExchange extraction maps the Owner is the first qualifier of the extract map name. The entire extraction map name has the following format:

<D><N><instance>.<regname>_TABLENAME

202 Chapter 9: Working with Mappings

Page 219: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 203 Wednesday, December 12, 2007 10:19 AM

where:

♦ D - the default entry starts with D (any user-modified maps start with U)

♦ N - database-specific identifier (e.g., 1 for DB2/390, 2 for IMS, 3 for DB2/400, etc.)

♦ instance - instance name chosen for the source registration

♦ regname - the registration name chosen for the source registration.

For example, DB2/390 extraction map name might be: d1dsn7.testdb2_KJM723TB.

When you import Change Data Capture source definitions, the ODBC data source must have a DB Type of CAPX or CAPXRT. These DB Types instruct the Listener to select extraction maps rather than data maps.

If the Listener pointed to by the ODBC data source is running with PowerExchange Security (either SECURITY=(1,x) or SECURITY=(2,x) in the DBMOVER configuration), then a valid user name and password must be provided.

2. Click Connect.

3. Select the table you want to import.

♦ Hold down the Shift key to select blocks of tables.

♦ Hold down the Ctrl key to make non-contiguous selections within a schema.

♦ Click Select All to select all tables.

♦ Click Select None to clear all highlighted selections.

4. Click OK.

The source definition appears.

5. Click Repository > Save.

Working with Source Definit ions for PowerExchange Change or Real-time 203

Page 220: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 204 Wednesday, December 12, 2007 10:19 AM

204 Chapter 9: Working with Mappings

Page 221: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 205 Wednesday, December 12, 2007 10:19 AM

C h a p t e r 1 0

Configuring Connections

This chapter includes the following topics:

♦ Overview, 206

♦ Working with Connections for PowerExchange ODBC, 207

205

Page 222: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 206 Wednesday, December 12, 2007 10:19 AM

Overview

Before PowerCenter can access a source or target in a session, you must configure connections in the Workflow Manager. When you create or modify a session that reads from or writes to a database, you can select only configured source and target databases. Connections are saved in the repository. For PowerExchange ODBC, you configure relational database connections.

206 Chapter 10: Configuring Connections

Page 223: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 207 Wednesday, December 12, 2007 10:19 AM

Working with Connections for PowerExchange ODBC

This section describes the connection types used for extracting and loading data as well as how to configure connection attributes.

Connection Types for Extracting Source Data

The connection you configure depends on the extraction mode. The type of source data you want to extract does not affect the connection type although it will affect which ODBC data source is used in the Connect String as there may be multiple different Listeners and platform-specific parameters.

Table 10-1 describes the connections you create for data extraction based on the extraction mode:

Table 10-1. Connection Types for Extracting Source Data

Note: For more information about the full range of database types that can be specified in ODBC Data Sources, see the PowerExchange Reference Manual.

Connection Types for Loading Target Data

All target connections are Relational Database Connection when loading data to PowerExchange targets.

Table 10-2 describes the target database types and their capability:

Table 10-2. Target Database Types

Extraction ModeApplication Connection/Relational Database Connection

Connection Type

Batch mode (non-relational data map) Relational Connection ODBC with NRDB and NRDB2 Data Source

Batch mode (relational) Relational Connection ODBC with Data Source of appropriate database type (DB2, DB2400C, ADAUNLD, etc.)

Change mode Relational Database Connection ODBC with CAPX Data Source

Real-time mode Relational Database Connection ODBC with CAPXRT Data Source

Database Type (Access Method) Insert Update Delete

Adabas Yes Yes Yes

Datacom No No No

DB2 (DB2) Yes Yes Yes

Working with Connections for PowerExchange ODBC 207

Page 224: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 208 Wednesday, December 12, 2007 10:19 AM

Configuring Attributes for Connections

When using ODBC connections, the majority of the attributes are specified in the ODBC data source rather than in the connection in PowerCenter. For more information about ODBC data sources, see the PowerExchange Reference Manual.

Source and target ODBC connections in Workflow Manager are defined as Relational connections with a subtype of ODBC. The ODBC connection definition process is the same for Batch, Change, and Real-Time. The only difference in these connections is the ODBC data source to which they point.

Figure 10-1 shows the Connection Object Definition dialog box for an ODBC relational connection:

DB2 (DB2400C) No No No

IDMS No No No

IMS Yes Yes Yes

Sequential (NRDB/NRDB2) Yes No No

VSAM- KSDS (NRDB/NRDB2) Yes Yes Yes

VSAM-ESDS (NRDB/NRDB2) Yes No No

VSAM-RRDS (NRDB/NRDB2) Yes No No

Figure 10-1. ODBC - Connection Object Definition

Database Type (Access Method) Insert Update Delete

208 Chapter 10: Configuring Connections

Page 225: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 209 Wednesday, December 12, 2007 10:19 AM

Table 10-3 shows the Connection Object Definition dialog box for an ODBC relational connection and describes the connection attributes to configure for an ODBC relational database connection:

Table 10-3. ODBC Connection Object Definition Table

Connection Attribute

Required/Optional

Description

Name Required Name for the relational database connection.

User Name Required Username for the data source.

Password Required Password for the User Name.

Connect String Required Name of the ODBC data source.

Code Page Required Code page for the Integration Service to use to extract the data from the data source.

Connection Environment SQL

Optional Executes an SQL command with each database connection. Default is disabled.

Transaction Environment SQL

Optional Executes an SQL command before the initiation of each transaction. Default is disabled.

Connection Retry Period

Optional Number of seconds the Integration Service attempts to reconnect to the database if the connection fails. If the Integration Service cannot connect to the database in the retry period, the session fails.

Working with Connections for PowerExchange ODBC 209

Page 226: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 210 Wednesday, December 12, 2007 10:19 AM

210 Chapter 10: Configuring Connections

Page 227: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 211 Wednesday, December 12, 2007 10:19 AM

C h a p t e r 1 1

Working with Sessions

This chapter includes the following topics:

♦ Working with WorkflowsOverview, 212

♦ Extracting Data from PowerExchange in Batch Mode, 213

♦ Extracting Data from PowerExchange in Change and Real-time Mode, 217

♦ Loading Data to PowerExchange Targets, 219

211

Page 228: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 212 Wednesday, December 12, 2007 10:19 AM

Working with WorkflowsOverview

After you create mappings in the PowerCenter Designer, you can create a session and use the session in a workflow to extract, transform, and load data. You create sessions and workflows in the Workflow Manager.

You can create a session in a workflow to extract data in batch, change, or real-time mode. You determine how you want the Integration Service to extract the data when you configure the session. You can also create a session to load data to a target.

After you configure the workflow, you must schedule the workflow. For more information about creating, configuring, and scheduling workflows, see the PowerCenterWorkflow Administration Guide.

Pipeline Partitioning

Depending on your source or target database, you can increase the number of partitions in a pipeline to improve session performance. Increasing the number of partitions allows the Integration Service to create multiple connections to sources and targets and process partitions of data concurrently. While processing data, the Integration Service may process data out of sequence due to the varying rates at which the partitions process data.

When you create a session in a workflow, the Workflow Manager validates each pipeline in the mapping for partitioning. You can specify multiple partitions in a pipeline if the Integration Service can maintain data consistency when it processes the partitioned data.

For more information about partitioning and a list of all partitioning restrictions, see the PowerCenterWorkflow Administration Guide.

Partition Types for Extracting Source Data

If you are configuring a session to read source data, you can use partitioning if the session mode is batch.

Table 11-1 describes the partition types for partitioning points when extracting source data in batch mode:

Partition Types for Loading Target Data

If you are configuring a session to write data to DB2/390 and DB2/400 targets, you can specify all partition types.

Table 11-1. Partition Types for Partitioning Points for Sources

Source Type Partitioning Point Partition Type

Non-relational Application Multi-Group Source Qualifier Pass-through

Relational Source Qualifier Key rangePass-through

212 Chapter 11: Working with Sessions

Page 229: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 213 Wednesday, December 12, 2007 10:19 AM

Extracting Data from PowerExchange in Batch Mode

To extract data in batch mode, you must select the appropriate ODBC relational connection and configure session properties. The connection you select and the session properties you configure differ depending on the type of source data.

Session Properties for Non-Relational Batch Mode Sessions

The relational connection for non-relational sources should point to an ODBC data source that has a DBType of either NRDB or NRDB2. You should use a connection with the same DBType as used when the source was imported. That is, if you imported the source mapping using NRDB, then use an NRDB ODBC connection in the session connection as opposed to an NRDB2.

Note: The only difference between NRDB and NRDB2 is whether a three or two tier naming conventions is used in the SQL statements to extract or load data. Non-relational sources and targets mapped in PowerExchange can be referred to using either NRDB or NRDB2. The format is as follows:

♦ NRDB: schema.datamapname.table

♦ NRDB2: schema.datamapname_table

Extracting Data from PowerExchange in Batch Mode 213

Page 230: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 214 Wednesday, December 12, 2007 10:19 AM

To configure a batch mode session for non-relational sources:

1. In the Task Developer, double-click a session with a non-relational source to open the session properties.

2. Click the Sources view on the Mapping tab.

3. In the Reader field of the Readers settings, Relational Reader is automatically selected.

4. In the Connections Value field, select the non-relational ODBC connection (NRDB or NRDB2).

5. In the Properties settings, configure the Owner Name attribute. For more information about other Properties attributes, see the PowerCenter Workflow Administration Guide.

At minimum, the schema name of the PowerExchange data map (or the Owner name displayed when the source mapping is edited) must be specified in order to correct construct the SQL statement during execution. PowerExchange SQL Escape Sequences can also be specified in this attribute field to override specifications in the data map. For a complete list of the SQL Escape Sequences available, see the PowerExchange Reference Manual.

The following example indicates how the Owner Name attribute can be configured to provide the schema name for the source (seq) as well as an override for the physical file name in the data map (dtldsn=new.dataset.name):

seq{dtldsn=new.dataset.name}

214 Chapter 11: Working with Sessions

Page 231: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 215 Wednesday, December 12, 2007 10:19 AM

Note: SQL escape sequences and the Owner Name can be specified in any order in the attribute field.

6. Click OK.

Session Properties for Relational Batch Mode Sessions

To extract data from a relational source in batch mode, you must select the appropriate ODBC relational connection and configure session properties. The relational connection should point to an ODBC data source that has the DBType of the source (DB2, DB2400C, DB2UDB, MSSQL or Oracle). You can then configure the session properties as you would any other PowerExchange ODBC source.

To configure a batch mode session for relational sources:

1. In the Task Developer, double-click a session with a relational source to open the session properties.

Click the Sources view on the Mapping tab.

2. In the Reader field of the Readers settings, Relational Reader is selected.

3. In the Connections Value field, select the appropriate relational ODBC connection.

4. In the Properties settings, configure the Owner Name attribute. For more information about other Properties attributes, see the PowerCenter Workflow Administration Guide.

Extracting Data from PowerExchange in Batch Mode 215

Page 232: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 216 Wednesday, December 12, 2007 10:19 AM

At minimum, the owner name of the source table must be specified in order to correct construct the SQL statement during execution. Alternatively, the Owner Name can be specified in the source mapping and, if done, would not be required here.

5. Click OK.

216 Chapter 11: Working with Sessions

Page 233: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 217 Wednesday, December 12, 2007 10:19 AM

Extracting Data from PowerExchange in Change and Real-time Mode

To extract data in change and real-time mode, you must select an ODBC relational connection and configure session properties. The connection you select for change mode should refer to an ODBC data source with a DBType of CAPX whereas a real-time mode connection should refer to an ODBC data source with a DBType of CAPXRT.

When using ODBC to extract data from PowerExchange in either Change or Real-Time mode, restart is handled from within PowerExchange.

Session Properties for Change and Real-time Mode Sessions

Use the following procedure to configure a session for change or real-time mode.

To configure a change or real-time mode session:

1. In the Task Developer, double-click a session with a relational source to open the session properties.

2. Click the Sources view on the Mapping tab.

3. In the Reader field of the Readers settings, Relational Reader is automatically selected.

Extracting Data from PowerExchange in Change and Real-time Mode 217

Page 234: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 218 Wednesday, December 12, 2007 10:19 AM

4. In the Connections Value field, select a connection which points to an ODBC data source with DBType CAPX (for Change) or CAPXRT (for Real-Time) and the appropriate Location value.

5. In the Properties settings, configure the Owner Name attribute. For more information about other Properties attributes, see the PowerCenter Workflow Administration Guide.

At minimum, the schema name of the source extraction map must be specified in order to correct construct the SQL statement during execution. This name is the first qualifier of extraction map name shown in the PowerExchange Navigator. It can also be determined by checking the Owner Name in the source mapping. PowerExchange SQL Escape Sequences can also be specified in this attribute field to override specifications in the data map. For a complete list of the SQL Escape Sequences available, see the PowerExchange Reference Manual.

The following example indicates the manner in which the Owner Name attribute can be configured to provide the schema name for the source (d6vsam) as well as an override for the application name specified in the DBQual2/Application Name field in the ODBC data source (dtlapp=new_appname):

{dtlapp=new_appname}d6vsam

Note: SQL escape sequences and the Owner Name can be specified in any order in the attribute field.

6. Click OK.

218 Chapter 11: Working with Sessions

Page 235: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 219 Wednesday, December 12, 2007 10:19 AM

Loading Data to PowerExchange Targets

To load data to a PowerExchange target, you must select a relational database connection. Then configure properties for the session as you would any other relational target. For more information about configuring sessions for relational sources, see the PowerCenter Workflow Administration Guide.

To configure a session to load data to a PowerExchange target:

1. In the Task Developer, double-click a session with a relational source to open the session properties.

2. Click the Targets view on the Mapping tab.

3. In the Writers settings, ensure that Relational Writer is selected.

4. In the Connections Value field, select a connection which points to an ODBC data source with appropriate DBType and Location value.

5. In the Properties settings, configure the Table Name Prefix attribute.

At minimum, the schema name of the target table (if relational) or the PowerExchange data map (if non-relational) must be specified in order to correct construct the SQL statement during execution.

6. Click OK.

Loading Data to PowerExchange Targets 219

Page 236: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 220 Wednesday, December 12, 2007 10:19 AM

220 Chapter 11: Working with Sessions

Page 237: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 221 Wednesday, December 12, 2007 10:19 AM

C h a p t e r 1 2

PowerExchange Restart and Recovery

This chapter includes the following topics:

♦ Overview, 222

♦ Restart and Recovery Using PowerExchange ODBC, 223

221

Page 238: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 222 Wednesday, December 12, 2007 10:19 AM

Overview

Recovery and restart need to be considered when designing and configuring sessions and workflows using either PowerExchange Change or Real-Time. The considerations differ depending upon whether the session uses PowerExchange Client for PowerCenter (PWXPC) or PowerExchange ODBC. This is primarily due to the differences in where the restart information is maintained.

With PowerExchange ODBC, the restart information is controlled and maintained on the PowerExchange Listener platform in the internal change information file (CDEP) using the application name specified in the connection.

222 Chapter 12: PowerExchange Restart and Recovery

Page 239: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 223 Wednesday, December 12, 2007 10:19 AM

Restart and Recovery Using PowerExchange ODBC

PowerExchange ODBC uses the restart tokens associated with application names in the CDEP file to determine the starting extraction point for a session. The CDEP file used is the one maintained by PowerExchange on the platform targeted by the extraction. The CDEP file contains both begin and end restart tokens for each extraction. This differs from PWXPC where only the end restart tokens are maintained in the restart token file.

The restart tokens determine the baseline point from which to extract the changed data for the source database. Since both start and end restart tokens are available when using ODBC, the extraction type decides which ones will be used for restart. The extraction type is specified in the ODBC connection in the CAPXTYPE parameter. This can be overridden at the session level by using the SQL Escape Sequence DTLXTYPE. For more information about ODBC parameters and SQL Escape Sequences see the PowerExchange Reference Manual.

If the extraction type specified is Since Last (SL) then the extraction will commence at the last successful ending point. If it is Restart (RS) then it will commence at the starting point of either the last successful extraction that was run or the one that is specified with the Reset Start Point in the extraction application dialog box in the PowerExchange Navigator.

Note: Unique application names should be used for each for each session to prevent any conflict in the CDEP between multiple sessions.

The CDEP information for an extraction is only updated when a session ends successfully. Failed sessions do not update the restart token information in the CDEP with the progress so far.

Warning: Failed sessions that are restarted will extract data from the last successful session (based on CAPXTYPE specified). This means that there is the possibility that duplicated changes will be sent to the target. In the event of a failure, you must either restore the targets to match the restart point prior to restarting the session or design your PowerCenter session to handle the possibility of duplicate records.

Managing Restart Tokens Using PowerExchange ODBC

PowerExchange on the source platform reads the restart tokens from the CDEP for each source included in the session. The first time a session is run with a new application name, an entry for it will be automatically created in the CDEP if it does not already exist.

If the application name already exists in the CDEP, PowerExchange will use the appropriate restart tokens to commence extraction from the change stream. Which restart tokens are used depends upon the extraction type (SL or RS) and whether new tokens have been supplied by DTLUAPPL since the last run. If new tokens have been supplied by DTLUAPPL, then those tokens will be used regardless of the extraction type.

If there are sources included that have newer restart points, they will not be provided any records from the change stream until their restart points have been reached. This prevents sources from being passed records that they processed in the previous extraction run.

Restart and Recovery Using PowerExchange ODBC 223

Page 240: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 224 Wednesday, December 12, 2007 10:19 AM

After a session completes successfully, PowerExchange updates the CDEP with the ending restart tokens.

CDEP Restart Tokens Example

The following example shows the contents of restart tokens in the CDEP for an application that contains a restart token file for the DB2 sources DB2DEMO1, DB2DEMO2, and DB2DEMO3:

Application name=<odbc_db2demo13ac> Rsttkn=<3> Ainseq=<0> Preconfig=< > FirstTkn =<D2D1D4D340400000003ED5D600000000> LastTkn =<D2D1D4D340400000003ED5D600000000> CurrentTkn=<> Registration name=<db2demo1.1> tag=<DB2DSN7db2demo11> Sequence=<000007337D8A00000000000007337D8A00000000> Restart =<D2D1D4D34040000007337D0200000000> Registration name=<db2demo2.1> tag=<DB2DSN7db2demo21> Sequence=<000007337D8A00000000000007337D8A00000000> Restart =<D2D1D4D34040000007337D0200000000> Registration name=<db2demo3.1> tag=<DB2DSN7db2demo31> Sequence=<000007337D8A00000000000007337D8A00000000> Restart =<D2D1D4D34040000007337D0200000000>

The application name odbc_db2demo13ac was created using DTLUAPPL with RSTTKN GENERATE. An example of the control cards that were used is given below:

mod APPL odbc_db2demo13ac DSN7 RSTTKN GENERATE add rsttkn db2demo1 add rsttkn db2demo2 add rsttkn db2demo3end APPL odbc_db2demo13acprint appl odbc_db2demo13ac

You can use either ADD APPL or MOD APPL for a new application name as with MOD APPL DTLUAPPL will create the application name if it does not already exist.

After the new restart tokens are provided through DTLUAPPL, the session using this application name can be started and it will use this restart tokens.

224 Chapter 12: PowerExchange Restart and Recovery

Page 241: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 225 Wednesday, December 12, 2007 10:19 AM

Part 4: Appendices

This part contains the following appendices:

♦ Tips, 227

♦ Datatypes and Code Pages, 239

♦ Troubleshooting, 247

225

Page 242: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 226 Wednesday, December 12, 2007 10:19 AM

226 Part 4: Appendices

Page 243: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 227 Wednesday, December 12, 2007 10:19 AM

A p p e n d i x A

Tips

This appendix provides details about the following:

♦ Organizing Sources by Map Type in Designer, 228

♦ Filtering Source Data Using PWXPC, 230

♦ Using DTLREXE to Submit MVS Batch Jobs, 233

♦ Creating Sequential and GDG Data Sets, 236

227

Page 244: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 228 Wednesday, December 12, 2007 10:19 AM

Organizing Sources by Map Type in Designer

Source metadata imported in Source Analyzer in the PowerCenter Designer using PWXPC is stored into sub-folders based on source type and location. The user cannot choose the sub-folder name and the table names within those sub-folders must be unique.

With the PWXPC Import from PowerExchange dialog box, these folder names have the following format: <source_type_location>. The source_type value equates to the Source Type specified in the Import from PowerExchange dialog box. The location value equates to the Location specified in the Import from PowerExchange dialog box and is a user-specified name in the PowerExchange dbmover.cfg file.

For example, if the Location is MVS2 and the Source Type is IMS, then the folder will be called IMS_MVS2. All IMS sources imported from that location will be stored into that folder. You can use the name you assign for the location as a method of organizing your source metadata in Designer.

There are some non-relational source types where the schema name is different but map name can be the same for both PowerExchange data map and extraction map (CDC Datamap) created from that data map.

To illustrate, lets assume the following are used to create the PowerExchange data map for an IMS database:

♦ The IMS database is called IMS1T01 and this is used as the PowerExhange Data Map Name

♦ A segment in that database results in a table in the data map called IMSSEG1

♦ The PowerExchange Schema Name used when creating the data map is IMS

The PowerExchange map name (in the NRDB2 form) is constructed as follows:

<schema_name>.<datamap_name>_<table_name>

In this example, the PowerEchange data map name is IMS.IMS1T01_IMSSEG1. If you use the IMS database name for the Capture Registration Name as well, the resulting extraction map name will be d2reconid.IMS1T01_IMSSEG1.

The map name for both the data map and extraction map are the same. Since the schema name is not used in the source definition table name, the names will be exactly the same when imported in Designer. As a result, only one will be able to be imported from the same Location. So, there are two choices:

1. Use a different name for the capture registration so that a unique extraction map name is created.

2. Use a different Location name to import data maps and extraction maps

If you want to use the same names for both the data map name and the capture registration name, then you will need to use a different location name in the Import from PowerExchange to place these two source definitions in different folders.

To help organize sources in Designer, use location names in the PowerExchange dbmover.cfg that indicate the type of data you are retrieving. Creating multiple NODE= statements

228 Appendix A: Tips

Page 245: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 229 Wednesday, December 12, 2007 10:19 AM

(location names) for the same listener is perfectly acceptable. In this example, if you create a NODE called CDCMAPS in the dbmover.cfg and use this as the Location when importing the IMS extraction map, it will be stored in a sub- folder called IMS_CDCMAPS.

This strategy of separating extraction maps from regular relational and non-relational source metadata can be a useful way of organizing source metadata in Designer.

Organizing Sources by Map Type in Designer 229

Page 246: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 230 Wednesday, December 12, 2007 10:19 AM

Filtering Source Data Using PWXPC

Using PWXPC, it is possible to filter data at the source so only the relevant rows are sent from PowerExchange to the PowerCenter session. There are many reasons why you might want to do this. Some examples of scenarios in which this capability is useful are:

♦ With some source types you cannot limit change capture changes based on only certain columns changing (e.g., VSAM and IMS).

♦ It is possible, for certain source types, to create capture registrations in PowerExchange which only register specific columns (as opposed to all of them). However, if the RDBMS logs are used directly for extraction and they does not support this selective column capture, then the row will be extracted even if none of the columns of interest have changed (e.g., DB2/400).

♦ The source type is one where either PowerExchange itself or the RDBMS will only capture changes based on columns of interest. However, additional or all columns are registered for capture because other extractions require them.

♦ You only want to extract columns with a specific value. For example, you want to read all of the columns in a table for a specific customer.

In these types of cases, you can use the source Filter Override attribute in the Session Properties to filter the source data. This can be done with sources using a PWXPC Batch, Change, and Real-Time connection. The filters specified are then included in the WHERE clause sent to PowerExchange. Proper SQL syntax should be followed for these overrides to prevent SQL failures.

The SQL filter specified can specify any type of column that exists in the source mapping. This includes regular data columns and PowerExchange-generated columns such as DTL__CAPX columns, change indicator columns (DTL__CI) and before image columns (DTL__BI).

There are two forms of the filter syntax. The simplest form is for single record sources such as CDC data maps, relational tables, or single record non-relational data maps:

<filter condition1>;<filter condition2>;...

For multi-record non-relational data map sources, there is a more complex form of the syntax:

<group name1>=<filter condition1>;<group name2>=<filter condition2>;...

This more complex form of the syntax allows you to use different filters for different record types or the same filter for only some of the record types in a multi-record source. You can also use the simple form with multi-record source data maps which then causes that filter to be applied to all records.

230 Appendix A: Tips

Page 247: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 231 Wednesday, December 12, 2007 10:19 AM

The following example shows how to use the PowerExchange Change indicator columns (DTL__CI_column) to filter changed data specifically, the change indicator for the ACCOUNT field which is called DTL__CI_ACCOUNT:

In the following example, the multi-record VSAM source contains four records which each have unique field names. The group names for the four records are: V07A_RECORD_LAYOUT, V07B_RECORD_LAYOUT, V07C_RECORD_LAYOUT, and V07D_RECORD_LAYOUT. The filter contains the group-name filter syntax in order to filter data records for the first two records. No filtering is done on the other two records. The filter specified is in the Filter Overrides attribute is:

V07A_RECORD_LAYOUT=V07A_RECORD_KEY=1;V07B_RECORD_LAYOUT=V07B_RECORD_KEY=2

Because there are four records in the multi-record data, there will be four SELECT statements created by PWXPC. The SELECT statements for the two records specified in the Filter Overrides attribute will also have WHERE clauses for their specific filters.

Figure A-1. Filter Overrides: Single-Record Filter

Filtering Source Data Using PWXPC 231

Page 248: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 232 Wednesday, December 12, 2007 10:19 AM

The Mapping tab for this example is as follows:

Records for V07A_RECORD_LAYOUT and V07B_RECORD_LAYOUT will be filtered whereas the other two records in the file will not be.

Figure A-2. Filter Overrides: Multi-Record Filter

232 Appendix A: Tips

Page 249: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 233 Wednesday, December 12, 2007 10:19 AM

Using DTLREXE to Submit MVS Batch Jobs

PowerExchange provides a utility program called DTLREXE which can be used to cause remote execution of a program on another platform running PowerExchange. One option of this utility is the SUBMIT option which provides the ability to submit a MVS batch job remotely. For detailed information on the syntax of the DTLREXE utility PROG=SUBMIT statements, see the PowerExchange Utilities Guide.

This utility can be invoked in PowerCenter workflows using PowerCenter Command Tasks. Command tasks can either be stand-alone tasks or pre/post session commands. Which you choose depends upon what you want to do. There are advantages in using a stand-alone command task for repeatable functions as it only needs to be coded once and can then be used by numerous workflows. On the other hand, it is possible to easily configure a session to fail if a pre-session command task fails. For more information about commands tasks and pre- and post-session commands, see the PowerCenter Workflow Administration Guide.

Some examples of the type of tasks that can be performed using DTLREXE PROG=SUBMIT are:

♦ Truncate a database table prior to loading data into it in a session. This is useful for database types for which PowerCenter does not support truncate, such as Adabas.

♦ Notify a MVS-based job scheduler that the workflow is starting or ending. Some job schedulers provide batch posting utilities and they can be utilized using DTLREXE to submit a batch job.

♦ Unload a database to a flat file so it can then be used in a session to load another database.

♦ Clean up DB2 bulk load files when the session completes successfully.

♦ Submit any type of MBS Batch JOB for which waiting for the completion and returning a set of messages is required.

Using DTLREXE to Submit MVS Batch Jobs 233

Page 250: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 234 Wednesday, December 12, 2007 10:19 AM

The following example shows how to setup a DTLREXE PROG=SUBMIT command as a pre-session command:

In this example, the DTLREXE command specifies mode=(job,wait) which means that the DTLREXE will wait for the job to complete. This, in turn, will cause the session to wait until this pre-session command completes. In the “Error Handling” section of the Config Object, you can specify how to handle errors for pre-session commands in the On Pre-session command task error field.

Note: Ensure that the JOB submitted through DTLREXE includes the appropriate DTLNTS steps if WAIT mode is requested. The PowerExchange RUNLIB, in member DTLREXE, contains sample JCL to be used with DTLREXE that includes the required DTLNTS steps.

If you are using a stand-alone command task to submit a batch JOB using DTLREXE, then there are no session configuration options to check for success or failure. If you want to test the status of the command task in the following session, you will need to use one of the task-specific workflow variables available in the Workflow Manager; that is, either PrevTaskStatus

Figure A-3. Pre-Session Command - DTLREXE

234 Appendix A: Tips

Page 251: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 235 Wednesday, December 12, 2007 10:19 AM

or Status. These variables can be used in link conditions to test the status of tasks in a workflow. For example:

The link condition is created by double-clicking on the link between the DTLREXE command task and the s_bulk_db2demo123_db2demoabc session to which it is connected. This will invoke the Expression Editor which allows you to add the test to ensure that the DTLREXE command task succeeded, as shown below:

For additional information on link conditions and the expression editor, see the PowerCenter Workflow Administration Guide.

Figure A-4. Workflow Link Condition - DTLREXE

Figure A-5. Command Task Expression Editor - DTLREXE

Link Condition

Using DTLREXE to Submit MVS Batch Jobs 235

Page 252: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 236 Wednesday, December 12, 2007 10:19 AM

Creating Sequential and GDG Data Sets

When writing to a sequential or Generation Data Group (GDG) data set using PowerExchange, the data set is created when the first record to be written is received. If there is no data written to the target, then PowerExchange will not created the new data set.

Some applications require that a new sequential data set or generation of a GDG data set be created each time a session or workflow runs, even if that data set is empty. If you are using sequential or GDG data sets on MVS with PowerExchange and have this requirement, you can ensure that a new generation is created each time you run a session (task) in a workflow by following the procedure below.

To pre-allocate a sequential or GDG data set in a session:

1. In Workflow Manager, right-click on the appropriate task in either Task Developer or in your workflow in Workflow Designer.

2. Select Tasks > Edit. The Edit Tasks dialog box is displayed.

3. Select the Mappings tab.

4. In the Pre SQL attribute in the Session Level Properties for the target, enter the following:

<CMD>CREATEFILE FN=“data_set_name”

If this is a GDG data set, then the data_set_name should be gdg_base_name(+1) to create a new generation.

5. Click OK.

236 Appendix A: Tips

Page 253: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 237 Wednesday, December 12, 2007 10:19 AM

The following example show a CREATEFILE command for a new generation of GDG data set my.gdg:

Note: When using this procedure for GDG data sets, the GDG base name specified must exist and GDGLOCATE=Y must be specified in your PowerExchange DBMOVER configuration file on the MVS platform.

When you run the workflow, the new generation of the GDG is created in addition to the normal processing of the workflow. The allocation parameters used to create the data set are specified in the DBMOVER configuration used by the PowerExchange Listener.

Figure A-6. Session Mapping Tab - File Create Pre-SQL Command

Creating Sequential and GDG Data Sets 237

Page 254: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 238 Wednesday, December 12, 2007 10:19 AM

The CREATEFILE command has a number of parameters. Any number of these can be specified. The parameters and their values are separated with a space in the command. The parameters are:

These value override the equivalent parameters specified in the DBMOVER configuration file. Any values not specified use either those specified in DBMOVER or the standard PowerExchange defaults. See the PowerExchange Reference Manual for further information on these parameters.

Parameter Platform Description

FN All File name to be created. If specifying a relative GDG data set name, the file name must be in double quotes (“).This parameter is required.

UID MVS / AS400 only Userid. This parameter is required if your Listener is running with user security (SECURITY=1 or 2).

PWD MVS / AS400 only Password for the userid specified in UID.

EPWD MVS / AS400 only Encrypted password for the userid specified in UID. Only one of PWD or EPWD is required.

MODELDCB MVS only Model DSCB to be used for the file creation. Generally, this is only required for GDG data sets which are not SMS-managed.

SPACE MVS only Space allocation parameters in the format:

SPACE=(u,p,s)

where:- u is units (T for tracks and C for cylinders)- p is primary space allocation value- s is secondary space allocation value

BS MVS only Block size.

RELEASE MVS only Release unused allocated space on CLOSE.Valid value is Y.

VOLSER MVS only Volume serial.

UNIT MVS only Unit type.

LRECL MVS, AS400 only Logical record length.

RECFM MVS, AS400 Record format.

238 Appendix A: Tips

Page 255: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 239 Wednesday, December 12, 2007 10:19 AM

A p p e n d i x B

Datatypes and Code Pages

This appendix covers the following topics:

♦ Datatype ReferenceOverview, 240

♦ PowerExchange and Transformation Datatypes, 241

♦ Relational Datatypes, 243

♦ Reading and Writing Binary Data in PowerExchange Client for PowerCenter, 244

♦ Using Code Pages, 245

239

Page 256: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 240 Wednesday, December 12, 2007 10:19 AM

Datatype ReferenceOverview

PowerCenter uses the following datatypes when reading source data, transforming the data, and writing target data:

♦ Native datatypes. Specific to the source and target databases or PowerExchange. Native datatypes appear in source and target definitions.

♦ Transformation datatypes. Generic datatypes that appear in transformations. The Integration Service uses the datatypes to move data across platforms.

For more information about transformation datatypes, see the PowerCenter Designer Guide.

240 Appendix B: Datatypes and Code Pages

Page 257: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 241 Wednesday, December 12, 2007 10:19 AM

PowerExchange and Transformation Datatypes

PowerExchange datatypes display for non-relational source definitions. You import non-relational source definitions from a PowerExchange data map. The datatypes of the fields in the source definition match the datatype for the corresponding field in the data map. These datatypes map to PowerCenter transformation datatypes, which display in the Application Multi-Group Source Qualifier for the non-relational source and other transformations in a mapping.

For information about how native non-relational database datatypes map to PowerExchange datatypes, see the PowerExchange documentation.

Table B-1 compares PowerExchange datatypes and the transformation datatypes that display in the Application Multi-Group Source Qualifier transformation:

Table B-1. PowerExchange and Transformation Datatypes

PowerExchange Precision Transformation Range

BIN 10 Binary 1 to 104,857,600 bytesYou can pass binary data from a source to a target, but you cannot perform transformations on binary data. PowerCenter does not support binary data for COBOL or flat file sources.

CHAR 10 String 1 to 104,857,600 characters Fixed-length or varying-length string.

DATE 10 Date/Time Jan 1, 1753 AD to Dec 31, 9999 ADCombined date/time value, with precision to the nanosecond.

DOUBLE 18 Double Precision of 15 digitsDouble-precision floating-point numeric value.

FLOAT 7 Double Precision of 15 digitsDouble-precision floating-point numeric value.

NUM8 3 Small Integer Precision of 5 and scale of 0Integer value.

NUM8U 3 Small Integer Precision of 5 and scale of 0Integer value.

NUM16 5 Small Integer Precision of 5 and scale of 0Integer value.

NUM16U 5 Integer Precision of 10 and scale of 0Integer value.

NUM32 10 Integer Precision of 10 and scale of 0Integer value.

NUM32U 10 Double Precision of 15 digitsDouble-precision floating-point numeric value.

PowerExchange and Transformation Datatypes 241

Page 258: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 242 Wednesday, December 12, 2007 10:19 AM

NUM64 19 Decimal Precision 1 to 28 digits, scale 0 to 28Decimal value with declared precision and scale. Scale must be less than or equal to precision. If you pass a value with negative scale or declared precision greater than 28, the PowerCenter Server converts it to a double.

NUM64U 19 Decimal Precision 1 to 28 digits, scale 0 to 28Decimal value with declared precision and scale. Scale must be less than or equal to precision. If you pass a value with negative scale or declared precision greater than 28, the PowerCenter Server converts it to a double.

NUMCHAR String 1 to 104,857,600 characters Fixed-length or varying-length string.

PACKED 15 Decimal Precision 1 to 28 digits, scale 0 to 28Decimal value with declared precision and scale. Scale must be less than or equal to precision. If you pass a value with negative scale or declared precision greater than 28, the PowerCenter Server converts it to a double.

TIME 5 Date/Time Jan 1, 1753 AD to Dec 31, 9999 ADCombined date/time value, with precision to the nanosecond.

TIMESTAMP 5 Date/Time Jan 1, 1753 AD to Dec 31, 9999 ADCombined date/time value, with precision to the nanosecond.

UPACKED 15 Decimal Precision 1 to 28 digits, scale 0 to 28Decimal value with declared precision and scale. Scale must be less than or equal to precision. If you pass a value with negative scale or declared precision greater than 28, the PowerCenter Server converts it to a double.

UZONED 15 Decimal Precision 1 to 28 digits, scale 0 to 28Decimal value with declared precision and scale. Scale must be less than or equal to precision. If you pass a value with negative scale or declared precision greater than 28, the PowerCenter Server converts it to a double.

VARBIN 10 Binary 1 to 104,857,600 bytesYou can pass binary data from a source to a target, but you cannot perform transformations on binary data. PowerCenter does not support binary data for COBOL or flat file sources.

VARCHAR 10 String 1 to 104,857,600 characters Fixed-length or varying-length string.

ZONED 15 Decimal Precision 1 to 28 digits, scale 0 to 28Decimal value with declared precision and scale. Scale must be less than or equal to precision. If you pass a value with negative scale or declared precision greater than 28, the PowerCenter Server converts it to a double.

Table B-1. PowerExchange and Transformation Datatypes

PowerExchange Precision Transformation Range

242 Appendix B: Datatypes and Code Pages

Page 259: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 243 Wednesday, December 12, 2007 10:19 AM

Relational Datatypes

PowerExchange Client for PowerCenter supports the same datatypes for DB2/390, DB2/400, and DB2/UDB that PowerCenter supports for DB2. It also supports the same Oracle and the same SQL Server datatypes that PowerCenter supports. For more information about PowerCenter datatypes, see the PowerCenter Designer Guide.

Relational Datatypes 243

Page 260: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 244 Wednesday, December 12, 2007 10:19 AM

Reading and Writing Binary Data in PowerExchange Client for PowerCenter

If you read binary data from any source, or if you write binary data to a DB2/390 or DB2/400 target using PowerExchange Client for PowerCenter, the data cannot be larger than 32 KB. Otherwise, the Integration Service truncates the data.

244 Appendix B: Datatypes and Code Pages

Page 261: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 245 Wednesday, December 12, 2007 10:19 AM

Using Code Pages

When you configure a connection object in the Workflow Manager, select a code page for the connection.

If you configure the Integration Service for code page validation, the source code page must be a code page that is a subset of the target code page.

If you configure the Integration Service for relaxed code page validation this is not the case. You can select any code page supported by PowerCenter for the target.

For more information about configuring the code page in connection objects, see Table 4-11 on page 104 which describes the connection attributes you configure for Oracle real-time mode application connections.

For more information about code pages, see the PowerCenter Administrator Guide.

Using Code Pages 245

Page 262: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 246 Wednesday, December 12, 2007 10:19 AM

246 Appendix B: Datatypes and Code Pages

Page 263: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 247 Wednesday, December 12, 2007 10:19 AM

A p p e n d i x C

Troubleshooting

This chapter includes the following topics:

♦ Troubleshooting, 248

247

Page 264: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 248 Wednesday, December 12, 2007 10:19 AM

Troubleshooting

When I go into Designer, I get messages about failures to load DLLs.

This can happen when PowerExchange Client for PowerCenter plug-ins are installed but cannot be loaded for various reasons like incorrect releases of PowerExchange installed or PATH problems. For more information, see KnowledgeBase Article # 15346.

I want to import a DB2/400 source definition, but need to determine the name of the DB2/400 database on the AS/400 machine.

Use the AS400 DSPRDBDIRE command to see a list of databases on the AS/400 machine.

The session failed with an error stating that the PowerExchange message repository cannot be loaded.

You can receive this error on UNIX when there is no PWX_HOME environment variable set to the PowerExchange installation directory. Set the PWX_HOME environment variable to the PowerExchange installation directory.

I set the Idle Time session condition to -1. However, the session completed with the following message: Idle Time limit is reached.

This can occur if EOF=Y is specified in the PowerExchange configuration file (dbmover.cfg) CAPI_CONNECTION statement. When you set EOF=Y, PowerExchange returns an EOF (which stops the session) when it reaches the end of the change stream as determined at the time the session starts reading from it. As a result, the PowerCenter session completes instead of continuing to run.

This message can also occur if the connection with PowerExchange is stopped using the PowerExchange STOPTASK command.

My session seems to be processing the pipelines serially.

The Integration Service may be configured to process master and detail pipelines sequentially as it did in versions prior to 7.0. As a result, it reads data from each source in change and real-time modes sequentially.

Clear the PMServer 6.X Joiner Source Order Compatibility option on the Compatibility and Database tab in the Informatica Server Setup. When you rerun the session, the Integration Service will process pipelines concurrently.

The session failed with a plug-in error: MAPPING> SDKS_38007 Error occurred during [initializing] reader plug-in #30nnnn.

This is a generic message indicating the PWXPC encountered an error. Review the session log for other messages indicating what the problem is. If there are no other error messages in the session log, check the PowerExchange logs on both the Integration Service platform and the Listener platform.

248 Appendix C: Troubleshooting

Page 265: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 249 Wednesday, December 12, 2007 10:19 AM

I want to read all of the changes I have captured and have them be inserts into a staging area. How do I do this?

When using PowerExchange ODBC to read captured changes, INSERT is the default operation. If you want to apply the changes to the target using the same operation as done on the source (INSERT, UPDATE, or DELETE), you need to explicitly include an Update Strategy transformation in the mapping to make this happen by testing the DTL__CAPXACTION field. In the Update Strategy Expression field, you would code:

DECODE(DTL__CAPXACTION,'I',DD_INSERT,'U',DD_UPDATE,'D',DD_DELETE,DD_REJECT)

When using PWXPC, the DTL__CAPXACTION field is automatically acted upon when processing changed data. If you want to have all changes processed as INSERTs regardless of the DTL__CAPXACTION field, you must code an update strategy specifying DD_INSERT in the Update Strategy Expression field.

Troubleshooting 249

Page 266: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 250 Wednesday, December 12, 2007 10:19 AM

250 Appendix C: Troubleshooting

Page 267: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 251 Wednesday, December 12, 2007 10:19 AM

I n d e x

Aaccess method

CAPX 7CAPXRT 7, 8

Application Multi-Group Source QualifiersSee source qualifiers

application namerestart points 117, 167

Bbatch extraction mode

PowerExchange Condense 7batch mode

configuring sessions 129Before image

Flexible transactions 184Bulk Load (property)

configuring 87

CCAPX

access method 7CAPXRT

access method 7, 8

CBLOSee constraint-based loading

CDC datagroup source 8, 72

CDC data mapextraction map 163See also extraction map source definitions

CDC sessionsadding source 171recovery example 174removing source 171restart 117, 151, 165restart token file 162stopping 116, 117, 170

CDEPrestart 167

change data captureSee change modeSee also real-time mode

Change IndicatorFlexible transactions 184

change modeconfiguring connections 117configuring sessions 135

code pagesSee also PowerCenter Installation and Configuration

Guideconfiguring 245supported code pages 245

251

Page 268: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 252 Wednesday, December 12, 2007 10:19 AM

compressionconfiguring 108

CondenseUOW Cleanser 7, 8

configuringcode pages 245compression 108connections 83encryption 108pacing size 109sessions 128, 212workflows 128, 212

connectionsconfiguring 83list by source type 80list by target type 81

constraint-based loadingdescription 136FullCBLOSupport 136

continuous extraction modePowerExchange Condense 7

creatingDB2 source definitions 25DB2 target definitions 25IMS source definitions 43Oracle source definitions 33source qualifiers 75Sybase source definitions 37VSAM source definitions 43

custom propertyFullCBLOSupport 136

Ddata maps

non-relational source definitions 43viewing in the source definition 52

Datacombatch mode application connections 92change mode application connections 93

datatypesDB2/390 243DB2/400 243overview 240PowerExchange 241transformation 241transformation datatypes in source qualifiers 75

DB2creating source definitions 25creating target definitions 25

DB2/390change mode application connections 89configuring bulk load properties 87connection types 80, 81datatypes 243real-time mode application connections 89

DB2/400change mode application connections 89connection types 80, 81datatypes 243real-time mode application connections 89

defaultrestart points 157

DTL__CAPXACTIONin CDC sessions 42, 54in extraction maps 62

DTL__CAPXRESTART1restart value 163

DTL__CAPXRESTART2restart value 163

DTLUAPPL 167example 168restart 163

DTLUTSK utility 116description 170

Eediting

Source Qualifier transformations 75encryption

configuring 108enhanced restart

recovery processing 173environment SQL

See also PowerCenter Workflow Administration Guideconfiguring

extraction mapCDC data map 135

extraction map source definitionsediting 62viewing 60

Ffilelist

description 129flexible key transformations

group source 187

252 Index

Page 269: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 253 Wednesday, December 12, 2007 10:19 AM

Flexible Target KeyCustom transformations 178

Ggroup source

CDC data 8, 72, 187description 71flexible key transformations 187multiple records 6, 71sequential 6, 71VSAM 6, 71

Iidle time

description 115Idle Time (property)

configuring for a PWXPC session 115IDMS

batch mode application connections 92change mode application connections 93

IMSbatch mode application connections 92change mode application connections 93connection types 80datatypes 241real-time mode application connections 93

Lloading

constraints 136logger token

restart value 163

Mmetadata extensions

editing 54viewing 53viewing for non-relational source definitions 61

Nnon-relational source definitions

editing 54editing metadata extensions 54viewing data map details 52

viewing metadata extensions 61non-relational sources

configuring batch mode sessions 129non-relational target definitions

editing 54editing metadata extensions 54

OOracle

connection types 80creating source definitions 33real-time application connections 99, 104

Ppacing size

configuring 109pipeline partitioning

See also PowerCenter Workflow Administration Guidebatch mode 212description 128, 212loading to targets 212

$PMRootDirCache 90, 94, 100, 105Restart 89, 93, 99, 104, 118, 154

PowerExchangeperformance 109

PowerExchange Change Data CaptureFlexible transformations 182

PowerExchange Condensebatch extraction mode 7continuous extraction mode 7

PowerExchange Configuration Filedbmover.cfg 18

Rreader time limit

description for PWXPC 90Reader Time Limit (property)

configuring for a PWXPC session 90, 94real-time flush latency

description for PWXPC 119Real-time Flush Latency (property)

configuring for a PWXPC session 119real-time mode

configuring sessions 135recovery

creating the tables 161

Index 253

Page 270: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 254 Wednesday, December 12, 2007 10:19 AM

enhanced restart 173example 174PM_REC_STATE table 152PM_RECOVERY table 151PM_TGT_RUN_ID table 151state file 153tables 151

relational source definitionsediting 41

relational sourcesconfiguring batch mode sessions 132

relational target definitionsediting 41

relational targetsconfiguring sessions 142, 144

restart$PMRootDir/Cache 90, 94, 100, 105$PMRootDir/Restart 89, 93, 99, 104, 118, 154application name 117, 167CDC sessions 117, 165CDEP 167DTL__CAPXRESTART1 163DTL__CAPXRESTART2 163DTLUAPPL 163, 167DTLUAPPL example 168earliest points 157, 158logger token 163null restart tokens 158operation 165overview 151PM_REC_STATE table 152restart token file 118, 154, 162restart token file folder 118RESTART1 163RESTART2 163sequence token 163state file 153tokens 152, 153

restart pointsdefaults 158earliest 158null 158

restart token filearchiving 175comment 162configuring 162example 164explicit override 163special override 163syntax 162

Ssequence token

restart value 163sequential data sets

group source 71sessions

overview 128, 212source definitions

DB2 25editing metadata extensions 54editing, extraction maps 62editing, non-relational 54editing, relational 41IMS 43viewing metadata extensions 53viewing, extraction maps 60VSAM 43working with non-relational source definitions 43

Source Qualifier transformationsSee source qualifiers

source qualifierstransformation datatypes 75

STOPTASK commandCDC sessions, stopping 116, 170

Sybasecreating source definitions 37

Ttarget definitions

DB2 25editing metadata extensions 54editing non-relational 54editing relational 41viewing metadata extensions 53

terminating conditionsPWPXC idle time 115PWPXC real-time flush latency 119PWXPC reader time limit 90PWXPC UOW count 118

transformationsaffecting row ID 136update strategy 42, 54, 62

UUOW Cleanser

Condense 7, 8

254 Index

Page 271: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 255 Wednesday, December 12, 2007 10:19 AM

UOW countdescription for PWXPC 118

UOW Count (property)configuring for a PWXPC session 118

update strategy 42, 54, 62

VVSAM

batch mode application connections 92change mode application connections 93connection types 80datatypes 241extracting data from multiple files 129group source 71real-time mode application connections 93

Wworkflows

overview 128, 212

Index 255

Page 272: PWX 851 Interfaces for Power Center

PWX_Interfaces_for_PowerCenter.book Page 256 Wednesday, December 12, 2007 10:19 AM

256 Index