Table of Contents

Search

  1. Preface
  2. Workflow Manager
  3. Workflows and Worklets
  4. Sessions
  5. Session Configuration Object
  6. Tasks
  7. Sources
  8. Targets
  9. Connection Objects
  10. Validation
  11. Scheduling and Running Workflows
  12. Sending Email
  13. Workflow Monitor
  14. Workflow Monitor Details
  15. Session and Workflow Logs
  16. Session Properties Reference
  17. Workflow Properties Reference

Working with Target Connection Groups

Working with Target Connection Groups

When you create a session with at least one relational target, SAP NetWeaver BI target, or dynamic MQSeries target, you need to consider target connection groups. A target connection group is a group of targets that the Integration Service uses to determine commits and loading. When the Integration Service performs a database transaction, such as a commit, it performs the transaction concurrently to all targets in a target connection group.
The Integration Service performs the following database transactions per target connection group:
  • Deadlock retry.
    If the Integration Service encounters a deadlock when it writes to a target, the deadlock affects targets in the same target connection group. The Integration Service still writes to targets in other target connection groups.
  • Constraint-based loading.
    The Integration Service enforces constraint-based loading for targets in a target connection group. If you want to specify constraint-based loading, you must verify the primary table and foreign table are in the same target connection group.
Targets in the same target connection group meet the following criteria:
  • Belong to the same partition.
  • Belong to the same target load order group and transaction control unit.
  • Have the same target type in the session.
  • Have the same database connection name for relational targets, and Application connection name for SAP SAP NetWeaver BI targets.
  • Have the same target load type, either normal or bulk mode.
For example, suppose you create a session based on a mapping that reads data from one source and writes to two Oracle target tables. In the Workflow Manager, you do not create multiple partitions in the session. You use the same Oracle database connection for both target tables in the session properties. You specify normal mode for the target load type for both target tables in the session properties. The targets in the session belong to the same target connection group.
Suppose you create a session based on the same mapping. In the Workflow Manager, you do not create multiple partitions. However, you use one Oracle database connection name for one target, and you use a different Oracle database connection name for the other target. You specify normal mode for the target load type for both target tables. The targets in the session belong to different target connection groups.
When you define the target database connections for multiple targets in a session using session parameters, the targets may or may not belong to the same target connection group. The targets belong to the same target connection group if all session parameters resolve to the same target connection name. For example, you create a session with two targets and specify the session parameter $DBConnection1 for one target, and $DBConnection2 for the other target. In the parameter file, you define $DBConnection1 as Sales1 and you define $DBConnection2 as Sales1 and run the workflow. Both targets in the session belong to the same target connection group.