Sie sind auf Seite 1von 11

1. What is bulk loading?

You can enable bulk loading when you load to Sybase, Oracle, or Microsoft SQL Server. If you
enable bulk loading for other database types, the Informatica Server reverts to a normal load.
Bulk loading improves the performance of a session that inserts a large amount of data to the
target database.
When bulk loading, the Informatica Server invokes the database bulk utility and
bypasses the database log, which speeds performance. Without writing to the database log,
however, the target database cannot perform rollback. As a result, you may not be able to
perform recovery.
You must drop indexes and constraints in the target tables before running a bulk load
session. After the session completes, you can rebuild them.
Note: When loading to Microsoft SQL Server and Oracle targets, you must specify a normal
load if you select data driven for the Treat Source Rows As session property. When you specify
bulk mode and data driven, the Informatica Server fails the session.

Committing data when bulk loading:

When bulk loading to Sybase targets, the Informatica Server ignores the commit interval you
define in the session properties and commits data when the writer block is full.

When bulk loading to Microsoft SQL Server and Oracle targets, the Informatica Server
commits data at each commit interval. Also, Microsoft SQL Server and Oracle start a new bulk
load transaction after each commit.

Tip: When bulk loading to Microsoft SQL Server or Oracle targets, define a large commit
interval to reduce the number of bulk load transactions and increase performance.

2. What is constraint based loading?

If one Source Qualifier provides data for multiple targets, you can enable constraint-based
loading in a session to have the Informatica Server load data based on target table primary and
foreign key relationships.

When you select this option, the Informatica Server orders the target load on a row-by-row
basis. For every row generated by an active source, the Informatica Server loads the
corresponding transformed row first to the primary key table, then to any foreign key tables.
Constraint-based loading depends on the following requirements:

 Active source. Related target tables must have the same active source.
 Key relationships. Target tables must have key relationships.
 Target connection groups. Targets must be in one target connection group.
 Treat rows as insert. Use this option when you insert into the target. You cannot use
updates with constraint-based loading.
3. What is 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.
 Have the same target type in the session.
 Have the same database connection name for relational targets, and Application
connection name for SAP BW targets.
 Have the same target load type, either normal or bulk mode

4. What are the differences between SQ and JOINER transformations?

SQ transformation JOINER transformation


Allows us to join data from a common source Allows us to join data from two related
database. heterogeneous sources.
No matter, if there is any number of sources, If there are more than two sources, you have
you require only one SQ transformation. to create another joiner transformation.
Columns in the join condition must have PK- Columns in the join condition need not have
FK relationships and matching data types. PK-FK relationships but must have matching
data types.

5. What are the differences between SQ and FILTER?

SQ transformation FILTER transformation


It limits the row set extracted from a source. It limits the row set sent to a target.
It lets u filter rows from only relational It lets u filter rows from any type of source.
source.

6. What is the difference between ROUTER & FILTER transformations?

ROUTER transformation FILTER transformation


It tests the data for only one condition and It tests the data for more than one condition
drops the rows that do not meet the condition. and gives u a option to route rows of data that
do not meet any of the conditions to a default
output group.

7. What is the difference between AGGREGATOR & EXPRESSION transformations?

AGGREGATOR transformation EXPRESSION transformation


It performs calculations on groups. It performs calculations on row by row.
8. What are the differences between CONNECTED & UNCONNECTED lookups?

Connected Lookup Unconnected Lookup

Receives input values from the result


Receives input values directly from the pipeline. of a: LKP expression in another
transformation.

You can use a dynamic or static cache. You can use a static cache.

Cache includes all lookup columns used in the


Cache includes all lookup/output ports
mapping (that is, lookup table columns included in the
in the lookup condition and the
lookup condition and lookup table columns linked as
lookup/return port.
output ports to other transformations).

Can return multiple columns from the same row or Designate one return port (R). Returns
insert into the dynamic lookup cache. one column from each row.

If there is no match for the lookup condition, the


Informatica Server returns the default value for all If there is no match for the lookup
output ports. If you configure dynamic caching, the condition, the Informatica Server
Informatica Server inserts rows into the cache or returns NULL.
leaves it unchanged.

If there is a match for the lookup condition, the


Informatica Server returns the result of the lookup If there is a match for the lookup
condition for all lookup/output ports. If you configure condition, the Informatica Server
dynamic caching, the Informatica Server either returns the result of the lookup
updates the row the in the cache or leaves the row condition into the return port.
unchanged.

Pass one output value to another


transformation. The
Pass multiple output values to another transformation.
lookup/output/return port passes the
Link lookup/output ports to another transformation.
value to the transformation calling
:LKP expression.

Does not support user-defined default


Supports user-defined default values.
values.

9. What are the differences between STATIC & DYNAMIC caches?

Static Cache or Uncached Dynamic Cache

You can insert or update rows in the cache as you


You cannot insert or update the cache.
pass rows to the target.
When the condition is true, the Informatica Server
either updates rows in the cache or leaves the cache
When the condition is true, the
unchanged, depending on the row type. This indicates
Informatica Server returns a value from
that the row is in the cache and target table. You can
the lookup table or cache.
pass updated rows to the target table.
When the condition is not true, the
When the condition is not true, the Informatica
Informatica Server returns the default
Server either inserts rows into the cache or leaves the
value for connected transformations and
cache unchanged, depending on the row type. This
NULL for unconnected transformations.
indicates that the row is not in the cache or target
.
table. You can pass inserted rows to the target table.

10. What are the differences between MAPPLET & REUSABLE TRANSFORMATION?

MAPPLET REUSABLE TRANSFORMATION


It contains a set of transformations that is It is a single one that is reusable.
reusable.
If u create a variable in a Mapplet u cannot If u create a variable in a reusable
use in other Mapplet. transformation u can use it in that
transformation in any number of mappings.
We can add relational sources to a Mapplet. We cannot add any type of source to a
reusable transformation.
We cannot add Normalizer, XML SQ, MQ We can create Normalizer, pre- and post
SQ, pre- and post session stored procedure, session stored procedure, sequence generator
non-reusable sequence generator transformations. But we cannot create any
transformations. type of source qualifier here.
In this entire mapping logic is hidden. In this entire mapping logic is transparent.

11. What are the unsupported repository objects for a Mapplet?


o Normalizer transformations
o Cobol sources
o XML Source Qualifier transformations
o XML sources
o Target definitions
o Pre- and post- session stored procedures
o Other Mapplets.
o Non-reusable sequence generator transformation.

12. In what situations rows are rejected?

 If a row is flagged to DD_REJECT.


 If a row is violated database constraint.
 If a field in a row was truncated or overflowed and the target database is configured as
reject truncated or overflowed rows.
13. What are the contents of the index and data caches in different transformations?

Transformation Index cache (.idx) Data cache (.dat)


AGGREGATOR Group values Row data.
JOINER Join condition values Row data.
RANK Group values Row data.
LOOKUP Lookup condition values Output column’s values.

14. When we don’t use sorted port option?

 The aggregate expression uses nested aggregate functions.


 The session uses incremental aggregation.
 Input data is data driven. You select data driven for the Treat Source Rows as Session
Property, or the Update Strategy transformation appears before the Aggregator
transformation in the mapping.

15. When do we use JOINER transformation?

We can use joiner if we have following type of sources (or) we can use following sources in the
joiner.

 Two relational tables existing in separate databases


 Two flat files in potentially different file systems
 Two different ODBC sources
 Two instances of the same XML source
 A relational table and a flat file source
 A relational table and an XML source

16. When we don’t use JOINER transformation?

You cannot use a Joiner transformation in the following situations:

 Both input pipelines originate from the same Source Qualifier transformation.
 Both input pipelines originate from the same Normalizer transformation.
 Both input pipelines originate from the same Joiner transformation.
 Either input pipeline contains an Update Strategy transformation.
 You connect a Sequence Generator transformation directly before the Joiner
transformation.

17. When do we use STORED PROCEDURE transformation?

 Check the status of a target database before loading data into it.
 Determine if enough space exists in a database.
 Perform a specialized calculation.
 Drop and recreate indexes.
18. When do we use LOOKUP transformation?

You can use the Lookup transformation to perform many tasks, including:

 Get a related value. For example, if your source table includes employee ID, but you
want to include the employee name in your target table to make your summary data
easier to read.
 Perform a calculation. Many normalized tables include values used in a calculation,
such as gross sales per invoice or sales tax, but not the calculated value (such as net
sales).
 Update slowly changing dimension tables. You can use a Lookup transformation to
determine whether records already exist in the target.

19. When do we use UNCONNECTED LOOKUP transformation?

Some common uses for unconnected lookups include:

 Testing the results of a lookup in an expression


 Filtering records based on the lookup results
 Marking records for update based on the result of a lookup (for example, updating
slowly changing dimension tables)
 Calling the same lookup multiple times in one mapping

20. When do we use incremental aggregation?

Use incremental aggregation under the following conditions:

 Your mapping includes an aggregate function.


 The source changes only incrementally.
 You can capture incremental changes. You might do this by filtering source data by
timestamp.

21. When we don’t use incremental aggregation?

 You cannot capture new source data.


 Processing the incrementally changed source significantly changes the target.
 Your mapping contains percentile or median functions.

22. What tasks that the SQ transformation performs?

You can use the Source Qualifier to perform the following tasks:

 Join data originating from the same source database.


 Filter records when the Informatica Server reads source data.
 Specify an outer join rather than the default inner join.

 Specify sorted ports.

 Select only distinct values from the source.

 Create a custom query to issue a special SELECT statement for the Informatica Server
to read source data.

23. What tasks that the SEQUENCE GENERATOR transformation performs?

You can perform the following tasks with a Sequence Generator transformation:

 Create keys.
 Replace missing values.
 Cycle through a sequential range of numbers.

24. What are the output files created or used by the Informatica server?

Informatica server log:

The Informatica server creates a log for all status and error messages. On UNIX, the
default name of the Informatica Server log file is pmserver.log. On Windows, the Informatica
Server logs status and error messages in the event log. Use the Event Viewer to access those
messages.

Workflow log: (file name: workflow_name.log & dir: $PMWorkflowLogDir)

The Informatica Server creates a workflow log file for each workflow it runs. It writes
information in the workflow log such as initialization of processes, workflow task run
information, errors encountered, and workflow run summary.

Session log: (file name: session_name.log & dir: $PMSessionLogDir)

The Informatica Server creates a session log file for each session it runs. It writes
information in the session log such as initialization of processes, session validation, creation of
SQL commands for reader and writer threads, errors encountered, and load summary. The
amount of detail in the session log depends on the tracing level that you set.

Session details log:

When you run a session, the Workflow Manager creates session details that provide load
statistics for each target in the mapping. You can monitor session details during the session or
after the session completes. Session details include information such as table name, number of
rows written or rejected, and read and write throughput. You can view this information by
double-clicking the session in the Workflow Monitor.
Performance details log: (file name: session_name.perf & dir: $PMSessionLogDir)

The Informatica Server can create a set of information known as session performance
details to help determine where performance can be improved. Performance details provide
transformation-by-transformation information on the flow of data through the session.

Reject files log: (file name: target_table_name.bad & dir: $PMBadFileDir)

The Informatica Server creates a reject file for each target in the session. The reject file
contains rows of data that the writer does not write to targets.

Control files log: (file name: target_table_name.ctl & dir: $PMTargetFilesDir)

When you run a session that uses an external loader, the Informatica Server creates a
control file and a target flat file. The control file contains information about the target flat file
such as data format and loading instructions for the external loader.

Indicator files log: (file name: target_table_name.ind & dir: $PMTargetFilesDir)

If you use a flat file as a target, you can configure the Informatica Server to create an
indicator file for target row type information. For each target row, the indicator file contains a
number to indicate whether the row was marked for insert, update, delete, or reject.

Output files log: (file name: target_table_name.out & dir: $PMTargetFilesDir)

If the session writes to a target file, the Informatica Server creates the target file based
on file target definition.

Cache files log: (file name: PM*.idx and PM*.dat & dir: $PMCacheDir)

The Informatica Server creates index and data cache files for the following
transformations in a mapping:

 Aggregator transformation
 Joiner transformation
 Rank transformation
 Lookup transformation

The Informatica Server writes to the index and data cache files during the session in the
following cases:

 The mapping contains one or more Aggregator transformations configured without


sorted ports.
 The session is configured for incremental aggregation.
 The mapping contains a Lookup transformation that is configured to use a persistent
lookup cache, and the Informatica Server runs the session for the first time.
 The mapping contains a Lookup transformation that is configured to initialize the
persistent lookup cache.
 The DTM runs out of cache memory and pages to the local cache files. The DTM may
create multiple files when processing large amounts of data. The session fails if the
local directory runs out of disk space.

25. What is perform recovery?

When the Informatica server starts a recovery session, it reads the OPB_SRVR_RECOVERY
table and notes the row id of last row committed to the target database. The informatica server
then reads all sources again and starts processing from the next row id.

26. What are the JOINER caches?

When you run a session with a Joiner transformation, the Informatica Server reads all the rows
from the master source and builds index and data caches based on the master rows. Since the
caches read only the master source rows, you should specify the source with fewer rows as the
master source. After building the caches, the Joiner transformation reads rows from the detail
source and performs joins.

27. What are the AGGREGATOR caches?

When you run a workflow that uses an Aggregator transformation, the Informatica Server
creates index and data caches in memory to process the transformation. If the Informatica
Server requires more space, it stores overflow values in cache files.

28. What are the RANK caches?

During a workflow, the Informatica Server compares an input row with rows in the data cache.
If the input row out-ranks a cached row, the Informatica Server replaces the cached row with
the input row. If the Rank transformation is configured to rank across multiple groups, the
Informatica Server ranks incrementally for each group it finds.

29. What are the LOOKUP caches?

The Informatica Server builds a cache in memory when it processes the first row of data in a
cached Lookup transformation. It allocates memory for the cache based on the amount you
configure in the transformation or session properties. The Informatica Server stores condition
values in the index cache and output values in the data cache.

30. What is multidimensional meta data?

It refers to the logical organization of data used for analysis in OLAP applications. This logical
organization is generally specialized for the most efficient data representation and access by the
end users of the OLAP applications.
31. What is meant by aggregation?

It refers to pre-stored summery of data or grouping of detailed data which satisfies a business
rule.

32. What are slowly growing dimensions?

Slowly growing dimensions are dimension tables that have slowly increasing data without
updates to existing dimensions. We maintain these dimensions by appending new data to the
existing table.

33. What are slowly changing dimensions?

Slowly changing dimensions are dimension tables that have slowly increasing data as well as
updates to existing dimensions. When updating existing dimensions we decide whether to keep
all historical data, no historical data or just the current and previous versions of dimension
table.

34. What is meant by mapping wizards?

Mapping wizards are designed to create mappings for loading and marinating star schemas, a
series of dimension tables related to a central fact table.

35. What is meant by simple pass through mapping wizards?

It loads a static fact or dimension tables by inserting all rows. We use this mapping when we
want to drop existing data before loading new data.

36. What is meant by slowly growing target wizard?

It filters the source rows based on the user-defined comparisons and inserts only those found to
be new to the target. We use this mapping, which source rows are, new and to load them to an
existing target table and existing target does not require updates.

37. What is meant by type1 mapping wizard?

It filters the source rows based on the user-defined comparisons and inserts rows those found to
be new to the target. And rows containing changes to existing dimension are updated in the
target by overwriting the existing target. When we use this mapping, the designer automatically
creates an additional column called PM_PRIMARYKEY in the target

38. What is meant by type2/version data mapping wizard?


It filters the source rows based on the user-defined comparisons and inserts rows those found to
be new to the target. Changes are tracked in the target by versioning the primary key and
creating a version number for each dimension in the table. When we use this mapping, the
designer automatically creates two additional columns called PM_PRIMARYKEY &
PM_VERSION_NUMBER in the target

39. What is meant by type2/flag current mapping wizard?

It filters the source rows based on the user-defined comparisons and inserts rows those found to
be new to the target. Changes are tracked in the target by flagging the current version of each
dimension and versioning the primary key. When we use this mapping, the designer
automatically creates two additional columns called PM_PRIMARYKEY &
PM_CURRENT_FLAG in the target

40. What is meant by type2/effective date range mapping wizard?

It filters the source rows based on the user-defined comparisons and inserts rows those found to
be new to the target. Changes are tracked in the target by maintaining an effective date range
for each version of the each dimension in the target. When we use this mapping, the designer
automatically creates three additional columns called PM_PRIMARYKEY &
PM_BEGGIN_DATE and PM_END_DATE in the target

41. What is meant by type3 mapping wizard?

It filters the source rows based on the user-defined comparisons and inserts rows those found to
be new to the target. The Informatica server tracks changes by saving the existing data in
different columns of the same row and replacing the existing data with the updates. The
Informatica server optionally enters the sys date as a time stamp for each row it inserts or
updates.

Das könnte Ihnen auch gefallen