Target based commit and Source based commit
(a) Target based commit
- Server commits data based on the no of target rows and the key constraints on the target table. The commit point also depends on the buffer block size and the commit interval.
- During a session, the server continues to fill the writer buffer, after it reaches the commit interval. When the buffer block is full, the Informatica server issues a commit command. As a result, the amount of data committed at the commit point generally exceeds the commit interval.
- The server commits data to each target based on primary/foreign key constraints.
(b) Source based commit
- Server commits data based on the number of source rows. The commit point is the commit interval you configure in the session properties.
- During a session, the server commits data to the target based on the number of rows from an active source in a single pipeline. The rows are referred to as source rows.
- A pipeline consists of a source qualifier and all the transformations and targets that receive data from source qualifier.
- Although the Filter, Router and Update Strategy transformations are active transformations, the server does not use them as active sources in a source based commit session.
- When a server runs a session, it identifies the active source for each pipeline in the mapping. The server generates a commit row from the active source at every commit interval.
- When each target in the pipeline receives the commit rows the server performs the commit.
117.Explain about Reject Loading?
I. During a session, the server creates a reject file for each target instance in the mapping. If the writer of the target rejects data, the server writes the rejected row into the reject file.
II. You can correct those rejected data and re-load them to relational targets, using the reject loading utility. (You cannot load rejected data into a flat file target)
III. Reading Rejected data:
Ex: 3,D,1,D,D,0,D,1094345609,D,0,0.00
There are two main things, Row indicator and Column indicator
Row indicator: Row indicator tells the writer, what to do with the row of wrong data.
Row indicator
|
Meaning
|
Rejected By
|
0
|
Insert
|
Writer or target
|
1
|
Update
|
Writer or target
|
2
|
Delete
|
Writer or target
|
3
|
Reject
|
Writer
|
Column indicator: Column indicator is followed by the first column of data, and another column indicator. They appear after every column of data and define the type of data preceding it
Column Indicator
|
Meaning
|
Writer Treats as
|
D
|
Valid Data
|
Good Data. The target accepts it unless a database error occurs, such as finding a duplicate key
|
?
|
Overflow
|
Bad Data
|
N
|
Null
|
Bad Data
|
T
|
Truncated
|
Bad Data
|
118.Explain about the various threads created during a session run?
Various threads
|
functions
|
Master thread
|
Handles stop and abort requests from load manager
|
Mapping thread
|
One thread for each session. Fetches session and mapping information. Compiles mapping. Cleans up after execution
|
Reader thread
|
One thread for each partition. Relational sources use relational threads and Flat files use file threads
|
Writer thread
|
One thread for each partition writes to target
|
Transformation thread
|
One or more transformation for each partition
|
119. How to setup Event Raise and Event Wait tasks?
Ans:
I. Create an event - right click the workflow and edit-> events tab -> create an event
II. Place Eventraise task in the workflow space and give the created event name in the "user defined event" (properties tab)
III. Place eventwait task in the workflow space-> there are 2 options in events tab,
Pre-defined: This is a file watch
User-defined: This is used for the event created on the workflow properties
When the Eventraise is executed, it creates the event, it triggers the event wait to continue
64. Time task:
Ans: You can specify the period of time to wait before the Integration Service runs the next task in the workflow with the Timer task.
Two options:
Absolute time - give the exact time when to start the next task or refer a date-time variable
Relative time - give the hours, minute, seconds - from the start time of this task
- From the start time of the parent workflow/worklet
- From the start time of the top-level workflow
65. Decision task:
Ans: Use the Decision task instead of multiple link conditions in a workflow. Instead of specifying multiple link conditions, use the predefined condition variable in a Decision task to simplify link conditions.
66. Assignment task:
Ans: You can assign a value to a user-defined workflow variable with the Assignment task.
67. CONTROL TASK
Ans: We can use the Control task to stop, abort, or fail the top-level workflow or the parent workflow based on an input link condition.
Control Option
|
Description
|
Fail Me | Fails the control task. |
Fail Parent | Marks the status of the WF or worklet that contains the
Control task as failed. |
Stop Parent | Stops the WF or worklet that contains the Control task. |
Abort Parent | Aborts the WF or worklet that contains the Control task. |
Fail Top-Level WF
|
Fails the workflow that is running.
|
Stop Top-Level WF
|
Stops the workflow that is running.
|
Abort Top-Level WF
|
Aborts the workflow that is running.
|