You are on page 1of 70

Informatica Question and Answers

what is rank transformation?where can we use this ...



Rank transformation is used to find the status.ex if we have one sales table and in this if we find more
employees selling the same product and we are in need to find the first 5 0r 10 employee who is selling
more products.we can go for rank transformation.

Where is the cache stored in informatica?

cache stored in informatica is in informatica server.
If you want to create indexes after the load process which transformation you
choose?stored procedure transformation In a joiner transformation, you should specify the
source with fewer rows as the master source. Why? In joiner transformation Inforrmatica
server reads all the records from master source builds index and data caches based on master table rows
after building the caches the joiner transformation reads records from the detail source and perform
joins What happens if you try to create a shortcut to a non-shared folder? It only creates
a copy of it.
What is Transaction?

A transaction can be defined as DML operation.
means it can be insertion, modification or deletion of data performed by users/
analysts/applicators
Can any body write a session parameter file which will chane the source and
tarets for e!ery session i.e different source and tarets for each session run.
ou are supposed to define a parameter file. !nd then in the "arameter file# you can define two
parameters# one for source and one for target.
$ive like this for example%
&'rc(file ) c%*program files*informatica*server*bin*abc(source.txt
&tgt(file ) c%*targets*abc(targets.txt
+hen go and define the parameter file%
,folder(name.-.%workflow(name.'+%s(session(name/
&'rc(file )c%*program files*informatica*server*bin*abc(source.txt
&tgt(file ) c%*targets*abc(targets.txt
If its a relational db# you can even give an overridden s0l at the session level...as a parameter. 1ake sure
the s0l is in a single line.
Informatica "i!e Inter!iew #uestions
here are some of the interview 0uestions i could not answer# any body can help giving answers for others
also.
thanks in advance.
2xplain grouped cross tab3
2xplain reference cursor
-hat are parallel 0uery4s and 0uery hints
-hat is meta data and system catalog
-hat is factless fact schema
-hat is confirmed dimension
-hich kind of index is preferred in 5-6
-hy do we use 5'' database for 78!" tools
confirmed dimension )) one dimension that shares with two fact table
factless means# fact table without measures only contains foreign keys9two types of factless
table# one is event tracking and other is coverage table
:it map indexes preferred in the data ware housing
$etadate is data about data# here every thing is stored example9mapping# sessions# privileges
other data# in informatica we can see the 1etadate in the repository.
%ystem catalo that we used in the cognos# that also contains data# tables# privileges#
predefined filter etc# using this catalog we generate reports
roup cross tab is a type of report in cognos# where we have to assign ; measures for
getting the result
What is meant by &unk 'ttribute in Informatica?

<unk 5imension ! 5imension is called junk dimension if it contains attribute which are rarely changed
ormodified. example In :anking 5omain # we can fetch four attributes accounting to a junk dimensions
like from the 7verall(+ransaction(master table tput flag tcmp flag del flag advance flag all these
attributes can be a part of a junk dimensions.
Can anyone explain about incremental areation with an example?
-hen you use aggregator transformation to aggregate it creates index and data caches to store the data
1.7f group by columns =. 7f aggregate columns
the incremental aggregation is used when we have historical data in place which will be used in
aggregation incremental aggregation uses the cache which contains the historical data and for each
group by column value already present in cache it add the data value to its corresponding data cache
value and outputs the row in case of a incoming value having no match in index cache the new values for
group by and output ports are inserted into the cache .
(ifference between )ank and (ense )ank?

Rank%
1
=>99=nd position
=>99;rd position
?
5
'ame Rank is assigned to same totals@numbers. Rank is followed by the "osition. $olf game usually
Ranks this way. +his is usually a $old Ranking.
5ense Rank%
1
=>99=nd position
=>99;rd position
;
?
'ame ranks are assigned to same totals@numbers@names. +he next rank follows the serial number.
'bout Informatica *ower center +,
-. I want to know which mappin properties can be o!erridden on a %ession Task
le!el.
/.0now what types of permissions are needed to run and schedule Work flows.
-. I want to 0now which mappin properties can be o!erridden on a %ession Task le!el?
ou can override any properties other than the source and targets. 1ake sure the source and targets
exist in your db if it is a relational db. If it is a flat file# you can override its properties. ou can override s0l
if its a relational db# session log# 5+1 buffer siAe# cache siAes etc.
/. 0now what types of permissions are needed to run and schedule Work flows
ou need execute permissions on the folder to run@schedule a workflow. ou may have read and write.
:ut u need execute permissions as well.
Can any one explain real time complain mappins or complex transformations in
Informatica.
1specially in %ales (omain.
1ost complex logic we use is denormaliAation. -e donBt have any 5enormaliAer transformation in
Informatica. 'o we will have to use an aggregator followed by an expression. !part from this# we use
most of the complex in expression transformation involving lot of nested II. and 5ecode
statements...another one is the union transformation and joiner.
2ow do you create a mappin usin multiple lookup transformation?
Cse unconnected lookup if same lookup repeats multiple times.
In the source, if we also ha!e duplicate records and we ha!e / tarets, T-- for uni3ue
!alues and T/- only for duplicate !alues. 2ow do we pass the uni3ue !alues to T-
and duplicate !alues to T/ from the source to these / different tarets in a sinle
mappin?
%oln-, source999Ds0999Dexp99Dsorter Ewith enable select distinct check boxF 999Dt1
999Daggregator Ewith enabling group by and write count functionF 999Dt=
If u wants only duplicates to t= u can follow this se0uence
999Dagg Ewith enable group by write this code decodeEcountEcolF#1#1#0FF999
D.ilterEcondition is 0F999Dt=.
%oln/, take two source instances and in first one embedded distinct in the source 0ualifier and connect
it to the target t1.
and just write a 0uery in the second source instance to fetch the duplicate records and connect it to the
target t=.
>> if u use aggregator as suggested by my friend u will get duplicate as well as distinct records in the
second target DD
%oln4, Cse a sorter transformation. 'ort on key fields by which u want to find the duplicates. then use
an expression transformation.
1xample,
2xample%
field199D
field=99D
'7R+2R%
field1 99ascending@descending
field= 99ascending@descending
2xpression%
99D field1
99D field=
>99D v(field1(curr ) field1
>99D v(field=(curr ) field=
v(dup(flag ) II.Ev(field1(curr ) v(field1(prev# true# falseF
o(dup(flag ) II.Ev(dup(flag ) true# 45uplicate4# 4Got 5uplicate4
>99D v(field1(prev ) v(field1(curr
>99D v(field=(prev ) v(field=(curr
Cse a Router transformation and put o(dup(flag ) 45uplicate4 in += and 4Got 5uplicate4 in +1.
Informatica evaluates row by row. 'o as we sort# all the rows come in order and it will evaluate based on
the previous and current rows.
What are the enhancements made to Informatica +.-.- !ersion when compared to
5././ !ersion?
In 7+ versions
- We can lookup a flat file - Union and custom transformation- There is
propagate option i.e., if we change any data type of a field, all the linked
columns will reflect that change- We can write to !" target.- We can use
up to #$ partitions What is the difference between *ower Centre and *ower $art?
What is the procedure for creatin Independent (ata $arts from Informatica +.-?
"ower Hentre have 1ultiple Repositories#where as "ower mart have single repositoryEdesktop
repositoryF"ower Hentre again linked to global repositor to share between users
"ower center "owermart
Go. of
repository n Go. n Go.
aplicability high end -6
lowImid range
-6
global
repository supported not supported
local repository supported supported
2R" support available not available
What is lookup transformation and update stratey transformation and explain with
an example.
8ook up transformation is used to lookup the data in a relational table# view# 'ynonym and .lat file.
+he informatica server 0ueries the lookup table based on the lookup ports used in the transformation.
It compares the lookup transformation port values to lookup table column values based on the lookup
condition
:y using lookup we can get related value# "erform a calculation and Cpdate 'H5.
+wo types of lookups
Honnected
Cnconnected
Cpdate strategy transformation
+his is used to control how the rows are flagged for insert# update# delete or reject.
+o define a flagging of rows in a session it can be insert# 5elete# Cpdate or 5ata driven.
In Cpdate we have three options
Cpdate as Cpdate
Cpdate as insert
Cpdate else insert
What is the loic will you implement to load the data in to one fact able from 6n6
number of dimension tables.
+o load data into one fact table from more than one dimension tables. .irstly you need to create a fact
table and dimension tables. 8ater load data into individual dimensions by using sources and
transformations Eaggregator# se0uence generator# lookupF in mapping designer then to the fact table
connect the surrogate to the foreign key and the columns from dimensions to the fact.
!fter loading the data into the dimension tables we will load the data into the fact tables ... the reason
for this is that the dimension tables contain the data related to the fact table.
+o load the data from dimension table to fact table is simple ..
assume Edimension table as source tablesF and fact table as target. that all.....
Can i use a session 7ulk loadin option that time can i make a reco!ery to the
session?
If the session is configured to use in bulk mode it will not write recovery information to recovery tables. 'o
:ulk loading will not perform the recovery as re0uired.
Go# why because in bulk load u wonBt create redo log file# when u normal load we create redo log file# but
in bulk load session performance increases.

2ow do you confiure mappin in informatica

ou should configure the mapping with the least number of transformations and expressions to do the
most amount of work possible. ou should minimiAe the amount of data moved by deleting unnecessary
links between transformations.
.or transformations that use data cache Esuch as !ggregator# <oiner# Rank# and 8ookup
transformationsF# limit connected input@output or output ports. 8imiting the number of connected
input@output or output ports reduces the amount of data the transformations store in the data cache.
ou can also perform the following tasks to optimiAe the mapping%
Honfigure single9pass reading.
7ptimiAe datatype conversions.
2liminate transformation errors.
7ptimiAe transformations.
7ptimiAe expressions. ou should configure the mapping with the least number of
transformations and expressions to do the most amount of work possible. ou should minimiAe
the amount of data moved by deleting unnecessary links between transformations.
.or transformations that use data cache Esuch as !ggregator# <oiner# Rank# and 8ookup
transformationsF# limit connected input@output or output ports. 8imiting the number of connected
input@output or output ports reduces the amount of data the transformations store in the data
cache.
ou can also perform the following tasks to optimiAe the mapping%

Honfigure single9pass reading.
7ptimiAe datatype conversions.
2liminate transformation errors.
7ptimiAe transformations.
7ptimiAe expressions.
What is difference between dimension table and fact table
and what are different dimension tables and fact tables
In the fact table contain measurable data and fewer columns and many rows#
It4s contain primary key
5ifferent types of fact tables%
!dditive# non additive# semi additive
In the dimensions table contain textual description of data and also contain many columns# less rows
Its contain primary key
What are Work let and what use of work let and in which situation we can use it
-orklet is a set of tasks. If a certain set of task has to be reused in many workflows then we use work
lets. +o execute a -ork let# it has to be placed inside a workflow.
+he use of work let in a workflow is similar to the use of mapplet in a mapping.
What are mappin parameters and !ariables in which situation we can use it
If we need to change certain attributes of a mapping after every time the session is run# it will be very
difficult to edit the mapping and then change the attribute. 'o we use mapping parameters and variables
and define the values in a parameter file. +hen we could edit the parameter file to change the attribute
values. +his makes the process simple.
1apping parameter values remain constant. If we need to change the parameter values then we need to
edit the parameter file.
:ut value of mapping variables can be changed by using variable function. If we need to increment the
attribute value by 1 after every session run then we can use mapping variables
In a mapping parameter we need to manually edit the attribute value in the parameter file after every
session run.
explain use of update stratey transformation

1aintain the history data and maintain the most recent changes data.
what is meant by complex mapping#

Homplex mapping means involved in more logic and more business rules.!ctually in my project complex
mapping isIn my bank project# I involved in construct a 1 data ware house1any customer is there in my
bank project# +hey r after taking loans relocated in to another place that time i feel to difficult maintain
both previous and current addressesin the sense i am using scd=+his is an simple example of complex
mapping
I ha!e an re3uirement where in the columns names in a table 8Table '. should appear
in rows of taret table 8Table 7. i.e. con!ertin columns to rows. Is it possible
throuh Informatica? If so, how?
if data in tables as follows
+able !
Jey91 charE;FK
table ! values
(((((((
1
=
;
+able :
bkey9a charE;FK
bcode charE1FK
table b values
1 +
1 !
1 $
= !
= +
= 8
; !
and output re0uired is as
1# +# !
=# !# +# 8
;# !
the 'L8 0uery in source 0ualifier should be
select key(1#
maxEdecodeE bcode# 4+4# bcode# null FF t(code#
maxEdecodeE bcode# 4!4# bcode# null FF a(code#
maxEdecodeE bcode# 484# bcode# null FF l(code
from a# b
where a.key(1 ) b.bkey(a
group by key(1
@
If a session fails after loadin of -9,999 records in to the taret 2ow can u load the
records from -999- th record when u run the session next time in informatica 5.-?
'imple solution# Gothing by using performance recovery option
Can we run a roup of sessions without usin workflow manaer
ya Its "ossible using pmcmd Hommand with out using the workflow 1anager run the group of session.
what is the difference between stop and abort

+he "ower Henter 'erver handles the abort command for the 'ession task like the stop command#
except it has a timeout period of M0 seconds. If the "ower Henter 'erver cannot finish processing and
committing data within the timeout period# it kills the 5+1 process and terminates the session.
stop% (((((((If the session u want to stop is a part of batch you must stop the batch#
if the batch is part of nested batch# 'top the outer most bacth*
!bort%9999
ou can issue the abort command # it is similar to stop command except it has M0 second time out .
If the server cannot finish processing and committing data with in M0 sec
What is difference between lookup cache and uncached lookup?
Can i run the mappin with out startin the informatica ser!er?
+he difference between cache and uncached lookup is when you configure the lookup transformation
cache lookup it stores all the lookup table data in the cache when the first input record enter into the
lookup transformation# in cache lookup the select statement executes only once and compares the values
of the input record with the values in the cache but in uncached lookup the select statement executes for
each input record entering into the lookup transformation and it has to connect to database each time
entering the new record
I want to prepare a 3uestionnaire. The details about it are as follows, -
-. Identify a lare company:orani;ation that is a prime candidate for (W2 project.
8<or example Telecommunication, an insurance company, banks, may be the prime
candidate for this.
/. =i!e at least four reasons for the selectin the orani;ation.
4. *repare a 3uestionnaire consistin of at least -> non-tri!ial 3uestions to collect
re3uirements:information about the orani;ation. This information is re3uired to
build data warehouse.
Can you please tell me what should be those -> 3uestions to ask from a company,
say a telecom company?
.irst of all meet your sponsors and make a :R5 Ebusiness re0uirement documentF about their
expectation from this data warehouse Emain aim comes from themF..or example they need customer
billing process. Gow go to business management team they can ask for metrics out of billing process for
their use. Gow management people monthly usage# billing metrics# sales organiAation# rate plan to
perform sales rep and channel performance analysis and rate plan analysis. 'o your dimension tables
can be Hustomer Ecustomer id# name# city# state etcF 'ales rep sales rep number# name# idsalesorg% sales
ord id:ill dimension% :ill N#:ill date# Gumberrate plan%rate plan code!nd .act table can be%:illing
detailsEbill N#customer id# minutes used# call details etcFyou can follow star and snow flake schema in this
case. 5epend upon the granularity of your data.
Can i start and stop sinle session in concurrent batch?
<ust right click on the particular session and going to recovery option
or
by using event wait and event rise
What is $icro %tratey? Why is it used for? Can any one explain in detail about it?
1icro strategy is again an :I tool which is a 678!"... u can create = dimensional report and also cubes
in here.......basically a reporting tool. It has a full range of reporting on web also in windows.
What is difference b:w Informatica +.- and 'binitio
+here is a lot of difference between Inforrmatica an !binitio
In !b Initio we r using ; parllalisim
but Informatica using 1 parllalisim
In !b Initio no scheduling option we can scheduled manully or pl@s0l script
but informatica contains ? scheduling options
!b Inition contains co9operating system
but informatica is not
Ramp time is very 0uickly in !b Initio campare than Informatica
!b Initio is userfriendly than Informatica

What is mystery dimension?

!lso known as <unk 5imensions
1aking sense of the rogue fields in your fact table..
What is cost based and rule based approaches and the difference
Host based and rule based approaches are the optimiAation techni0ues which are used in related to
databases# where we need to optimiAe a 'L8 0uery.
:asically 7racle provides +wo types of 7ptimiAers Eindeed ; but we use only these two techni0ues. bcA
the third has some disadvantages.F
-hen ever you process any 'L8 0uery in 7racle# what oracle engine internally does is# it reads the 0uery
and decides which will the best possible way for executing the 0uery. 'o in this process# 7racle follows
these optimiAation techni0ues.
1. cost based 7ptimiAer EH:7F% If a 'L8 0uery can be executed in = different ways E like may have path 1
and path= for same 0ueryF#then -hat H:7 does is# it basically calculates the cost of each path and the
analyses for which path the cost of execution is less and then executes that path so that it can optimiAe
the 0uery execution.
=. Rule base optimiAerER:7F% this basically follows the rules which are needed for executing a 0uery. 'o
depending on the number of rules which are to be applied# the optimAer runs the 0uery.
Cse%
If the table you are trying to 0uery is already analysed# then oracle will go with H:7.
If the table is not analysed # the 7racle follows R:7.
.or the first time# if table is not analysed# 7racle will go with full table scan.
what are partition points?
"artition points mark the thread boundaries in a source pipeline and divide
the pipeline into stages.
2ow to append the records in flat file 8Informatica. ? Where as in (ata stae we ha!e
the options
i. o!erwrite the existin file
ii. 'ppend existin file
+his is not there in Informatica v O. :ut heard that itBs included in the latest version P.0 where u can
append to a flat file. Its about to be shipping in the market.
If u had to split the source le!el key oin into two separate tables. ?ne as surroate
and other as primary. %ince informatica does not urantee keys are loaded
properly8order@. into those tables. What are the different ways you could handle this
type of situation?
foreign key
what is the best way to show metadata8number of rows at source, taret and each
transformation le!el, error related data. in a report format
-hen your workflow gets completed go to workflow monitor right click the session .then go to
transformation statistics there we can see number of rows in source and target. if we go for session
properties we can see errors related to data
ou can select these details from the repository table. you can use the view R2"('2''(87$ to get
these data
Two relational tables are connected to %# transformation, what are the possible
errors it will be thrown?
-e can connect two relational tables in one s0 +ransformation. Go errors will be perform
With out usin Apdatestratey and sessons options, how we can do the update our
taret table?
%oln-, ou can use this by using Qupdate overrideQ in target properties
%oln/, In session properties# +here is an option
insert
update
insert as update
update as update
like that
by using this we will easily solve
%oln4, :y default all the rows in the session is set as insert flag #you can change it in the session general
properties 99 +reate source rows as %update
so# all the incoming rows will be set with update flag. now you can update the rows in the target table
Could anyone please tell me what are the steps re3uired for type/
dimension:!ersion data mappin. how can we implement it
$o to mapping designer in it go for mapping select wiAard in it go for slowly changing dimension
6ere u will find a new window their u need to give the mapping name source table target table and type of
slowly changing dimension then if select finish slowly changing dimension = mapping is created
go to ware designer and generate the table then validate the mapping in mapping designer save it to
repository run the session in workflow manager
later update the source table and re run again u will find the difference in target table
2ow to import oracle se3uence into Informatica.
Hreate one procedure and declare the se0uence inside the procedure#finally call the procedure in
informatica with the help of stored procedure transformation
What is data merin, data cleansin, samplin?
Hleansing%999+7 identify and remove the retundacy and inconsistency
sampling% just smaple the data throug send the data from source to target
What is I#( file?

IL5 file is nothing but Impromptu Luery 5efinition# +his file is mainly used in Hognos Impromptu tool
after creating a imr E reportF we save the imr as IL5 file which is used while creating a cube in power
play transformer.In data source type we select Impromptu Luery 5efinetion.
(ifferences between Bormali;er and Bormali;er transformation.
GormaliAer% It is a transormation mainly using for cobol sources#
it4s change the rows into coloums and columns into rows
GormaliAation%+o remove the retundancy and inconsitecy
2ow do I import C%'$ files from source to taret. (o I need a special pluin
In mapping 5esigner we have direct option to import files from R'!1 Gavigation % 'ources )D Import
from file )D file from H7:78
What is the procedure or steps implementin !ersionin if you are already in
!ersion+.D. 'ny otchaE6s or precautions..
.or version control in 2+8 layer using informatica# first of all after doing anything in your designer mode or
workflow manager# do the following steps.....
1D .irst save the changes or new implementations.
=D+hen from navigator window# right click on the specific object you are currently in. +here will be a pop
up window. In that window at the lower end side# you will find versioning9DHheck In. ! window will be
opened. 8eave the information you have done like Qmodified this mappingQ etc. +hen click ok button.
can anyone explain error handlin in informatica with examples so that it will be easy
to explain the same in the inter!iew.
go to the session log file there we will find the information regarding to the
session initiation process#
errors encountered.
load summary.
so by seeing the errors encountered during the session running# we can resolve the errors.
If you ha!e four lookup tables in the workflow 2ow do you troubleshoot to impro!e
performance?
+here r many ways to improve the mapping which has multiple lookups.
1F -e can create an index for the lookup table if we have permissionsEstaging areaF.
=F 5ivide the lookup mapping into two EaF dedicate one for insert means% source 9 target## these r new
rows only the new rows will come to mapping and the process will be fast . EbF 5edicate the second one
to update % source)target## these r existing rows only the rows which exists allready will come into the
mapping.
;Fwe can increase the chache siAe of the lookup
If you are workflow is runnin slow in informatica. Where do you start trouble
shootin and what are the steps you follow? If you are workflow is runnin slow in
informatica. Where do you start trouble shootin and what are the steps you follow?
%?"B-, when the work flow is running slowly you have to find out the bottlenecks
in this order
target
source
mapping
session
system
%?"B/, work flow may be slow due to different reasons one is alpha characters in decimal data check it
out this and due to insufficient length of strings check with the 'L8 override
2ow do you handle decimal places while importin a flatfile into informatica?
while importing the flat file# the flat file wiAard helps in configuring the properties of the file so that select
the numeric column and just enter the precision value and the scale. "recision includes the scale for
examples if the number is SPPPP.M5?# enter precision as P and scale as ; and width as 10 for fixed width
flat file
In a se3uential 7atch how can we stop sinle session?
we have a task called wait event using that we can stop.
we start using raise event.
why dimenstion tables are denormali;ed in nature ?...

%ecause in &ata warehousing historical data should 'e maintained, to maintain historical
data means suppose one employee details like where previously he worked, and now where
he is working, all details should 'e maintain in one ta'le, if u maintain primary key it won(t
allow the duplicate records with same employee id. so to maintain historical data we are all
going for concept data warehousing 'y using surrogate keys we can achieve the historical
data)using oracle se*uence for critical column+.
so all the dimensions are marinating historical data, they are de normali,ed, 'ecause of
duplicate entry means not e-actly duplicate record with same employee num'er another
record is maintaining in the ta'le
Can we use areator:acti!e transformation after update stratey transformation?
-e can use# but the update flag will not be remain. :ut we can use passive transformation
Can any one comment on
sinificance of oracle Fi in informatica when compared to oracle G or Gi.
i mean how is oracle Fi ad!antaeous when compared to oracle G or Gi when used in
informatica
it4s very easy
!ctually oracle Pi not allowed user defined data types
:ut Si allows
and then blob# lob allow only Si not Pi
and more over list partinition is there in Si only
in the concept of mappin parameters and !ariables, the !ariable !alue will be sa!ed
to the repository after the completion of the session and the next time when u run the
session, the ser!er takes the sa!ed !ariable !alue in the repository and starts
assinin the next !alue of the sa!ed !alue. for example i ran a session and in the
end it stored a !alue of >9 to the repository.next time when i run the session, it
should start with the !alue of +9. not with the !alue of >-.
how to do this.
%?"B-, u can do onething after running the mapping## in workflow manager
start99999999Dsession.
right clickon the session u will get a menu# in that go for persistant values# there u will find the last value
stored in the repository regarding to mapping variable. then remove it and put ur desired one# run the
session... i hope ur task will be done
%?"B/, it takes value of 51 but u can override the saved variable in the repository by defining the value
in the parameter file.if there is a parameter file for the mapping variable it uses the value in the parameter
file not the valueT1 in the repositoryfor example assign the value of the mapping variable as O0.in othere
words higher preference is given to the value in the parameter file
how to use mappin parameters and what is their use
1apping parameters and variables make the use of mappings more flexible and also it avoids creating of
multiple mappings. it helps in adding incremental data mapping parameters and variables has to create in
the mapping designer by choosing the menu option as 1apping 9999D parameters and variables and the
enter the name for the variable or parameter but it has to be preceded by &&. and choose type as
parameter@variable# data type once defined the variable@parameter is in the any expression for example in
'L transformation in the source filter properties tab. just enter filter condition and finally create a
parameter file to assign the value for the variable @ parameter and configure the session properties.
however the final step is optional. if their parameter is not present it uses the initial value which is
assigned at the time of creating the variable
2ow to delete duplicate rows in flat files source is any option in informatica
Cse a sorter transformation # in that u will have a QdistinctQ option make use of it .
What is the use of incremental areation? 1xplain me in brief with an example.
Its a session option when the informatica server performs incremental aggregation it passes new source
data through the mapping and uses historical cache data to perform new aggregation calculations
incrementally for performance we will use it.
What is the procedure to load the fact table.=i!e in detail?
%?"B-, we use the = wiAards Ei.eF the getting started wiAard and slowly changing dimension wiAard to
load the fact and dimension tables#by using these = wiAards we can create different types of mappings
according to the business re0uirements and load into the star schemasEfact and dimension tablesF.
%?"B/, first dimenstion tables need to be loaded# then according to the specifications the fact tables
should be loaded. 5onBt think that fact tableBs r different in case of loadingK it is general mapping as we do
for other tables. specifications will play important role for loading the fact.
2ow to lookup the data on multiple tabels.
if u want to lookup data on multiple tables at a time u can do one thing join the tables which u want then
lookup that joined table. informatica provieds lookup on joined tables
2ow to retrie!e the records from a rejected file. explane with syntax or example
%?"B-, there is one utility called Qreject 8oaderQ where we can find out the reject records and able to
refine and reload the rejected records..
%?"B/, 5uring the execution of workflow all the rejected rows will be stored in bad files Ewhere your
informatica server get installed H%*"rogram .iles*Inforrmatica "ower Henter O.1*'erverF +hese bad files
can be imported as flat a file in source then thro4 direct mapping we can load these files in desired format.
2ow does the ser!er reconise the source and taret databases?
:y using 75:H connection.if it is relational.if is flat file .+" connection..see we can make sure with
connection in the properties of session both sources I targets
What are !ariable ports and list two situations when they can be used?
-e have mainly three ports Inport# 7utport# Rariable port. Inport represents data is flowing into
transformation. 7utport is used when data is mapped to next transformation. Rariable port is used when
we mathematical calculations are re0uired.
you can also use as for example consider price and 0uantity and total as a variable we can make a sum
on the total(amt by giving
sum Etotal(amtF
variable port is used to break the complex expression into simpler
and also it is used to store intermediate values
What is difference between II< and (1C?(1 function...

ou can use nested II. statements to test multiple conditions. +he following example tests for various
conditions and returns 0 if sales is Aero or negative%
IIF( SALES > 0, IIF( SALES < 50, SALARY1, IIF( SALES < 100, SALARY2,
IIF( SALES < 200, SALARY3, BONUS))), 0 )
ou can use 52H752 instead of II. in many cases. 52H752 may improve readability. +he following
shows how you can use 52H752 instead of II. %
'!82' D 0 and '!82' > 50# '!8!R1#
SALES > 49 AND SALES < 100, SALARY2,
SALES > 99 AND SALES < 200, SALARY3,
SALES > 199, BONUS)
in (imensional modelin fact table is normali;ed or denormali;ed?in case of star
schema and incase of snow flake schema?
Go concept of normailAation in the case of star schema but in the case of snow flack schema dimension
table must be normaliAed.
'tar schema995e9GormaliAed dimensions
'now .lake 'chema99 GormaliAed dimensions
which is better amon connected lookup and unconnected lookup transformations in
informatica or any other 1T" tool?
-hen you compared both basically connected lookup will return more values and unconnected returns
one value conn lookup is in the same pipeline of source and it will accept dynamic caching. Cnconn
lookup don4t have that facility but in some special cases we can use Cnconnected. if o@p of one lookup is
going as i@p of another lookup this unconnected lookups are favorable
I think the better one is connected look up. beacaA we can use dynamic cache with it ## also connected
loop up can send multiple columns in a single row# where as unconnected is concerned it has a single
return port.Ein case of etl informatica is concernedF
What is the limit to the number of sources and tarets you can ha!e in a mappin
!s per my knowledge there is no such restriction to use this number of sources or targets inside a
mapping.
Luestion is Q if you make G number of tables to participate at a time in processing what is the position of
your database. I organiAation point of view it is never encouraged to use G number of tables at a time# It
reduces database and informatica server performanceQ
+he restriction is only on the database side. how many concurrent threads r u allowed to run on the db
server3
which objects are re3uired by the debuer to create a !alid debu session?
Initially the session should be valid session.
'ource# target# lookups# expressions should be available min 1 break point should be available for
debugger to debug your session.
Informatica server 7bject is must.
what is the procedure to write the 3uery to list the hihest salary of three employees?
'282H+ sal
.R71 E'282H+ sal .R71 my(table 7R52R : sal 52'HF
-62R2 R7-GC1 > ?K
since this is informatica.. you might as well use the Rank transformation. check out the help file on how to
use it.
We are usin Apdate %tratey Transformation in mappin how can we know whether
insert or update or reject or delete option has been selected durin runnin of
sessions in Informatica.
In 5esigner while creating Cpdate 'trategy +ransformation uncheck Qforward to next transformationQ. If
any rejected rows are there automatically it will be updated to the session log file.
Cpdate or insert files are known by checking the target file or table only.
%uppose session is confiured with commit inter!al of -9,999 rows and source has
>9,999 rows. 1xplain the commit points for %ource based commit and Taret based
commit. 'ssume appropriate !alue where!er re3uired.
'ource based commit will commit the data into target based on commit interval so for every 10#000 rows
it will commit into target.
+arget based commit will commit the data into target based on buffer siAe of the target. i.e.# it commits the
data into target when ever the buffer fills 8et us assume that the buffer siAe is M#000. 'o for every M#000
rows it commits the data.
2ow do we estimate the number of partitions that a mappin really re3uires? Is it
dependent on the machine confiuration?
It depends upon the informatica version we r using suppose if we r using informatica M it supports only ;=
partitions where as informatica O supports M? partitions
Can Informatica be used as a Cleansin Tool? If yes i!e example of transformations
that can implement a data cleansin routine.
es# we can use Informatica for cleansing data some time we use stages to cleansing the data. It
depends upon performance again else we can use expression to cleansing data.
.or example a field U has some values and other with Gull values and assigned to target field where
target field is not null column# inside an expression we can assign space or some constant value to avoid
session failure.
+he input data is in one format and target is in another format# we can change the format in expression.
-e can assign some default values to the target to represent complete set of data in the target.
2ow do you decide whether you need it do areations at database le!el or at
Informatica le!el?
It depends upon our re0uirement only If you have good processing database you can create aggregation
table or view at database level else its better to use informatica. 6ere I am explaining why we need to use
informatica.
what ever it may be informatica is a third party tool# so it will take more time to process aggregation
compared to the database# but in Informatica an option we called QIncremental aggregationQ which will
help you to update the current values with current values Tnew values. Go necessary to process entire
values again and again unless this can be done if nobody deleted that cache files. If that happened total
aggregation we need to execute on informatica also.
In database we don4t have Incremental aggregation facility.
Identifyin bottlenecks in !arious components of Informatica and resol!in them.
+he best way to find out bottlenecks is writing to flat file and see where the bottle neck is .
2ow to join two tables without usin the &oiner Transformation
%?"B-, It possible to join the two or more tables by using source 0ualifier. :ut provided the tables
should have relationship.
-hen u drag n drop the table u will getting the source 0ualifier for each table. 5elete all the
source 0ualifiers. !dd a common source 0ualifier for all. Right click on the source 0ualifier u will find 25I+
click on it. Hlick on the properties tab# u will find s0l 0uery in that u can write ur s0ls
%?"B/, joiner transformation is used to join n EnD1F tables from same or different databases# but source
0ualifier transformation is used to join only n tables from same database
%?"B4, use 'ource Lualifier transformation to join tables on the '!12 database. Cnder its properties
tab# you can specify the user9defined join. !ny select statement you can run on a database.. you can do
also in 'ource Lualifier.
Gote% you can only join = tables with <oiner +ransformation but you can join two tables from
different databases.
In a filter expression we want to compare one date field with a db/ system field
CA))1BT ('T1.
?ur %yntax, datefield H CA))1BT ('T1 8we didn6t define it by ports, its a system
field ., but this is not !alid 8*$*arser, $issin ?perator...
Can someone help us.
the db= date format is QyyyymmddQ where as sysdate in oracle will give Qdd9mm9yyQ so conversion of
db= date formate to local database date formate is compulsary. other wise u will get that type of error
Cse 'ysdate or use to(date for the current date
what does the expression n filter transformations do in Informatica %lowly rowin
taret wi;ard?
2U"2''I7G transformation detects and flags the rows from source.
.ilter transformation filters the rows that are not flagged and passes the flagged rows to the Cpdate
strategy transformation
how to create the stain area in your database

! 'taging area in a 5- is used as a temporary space to hold all the records from the source system. 'o
more or less it should be exact replica of the source systems except for the laod startegy where we use
truncate and reload options.
'o create using the same layout as in your source tables or using the $enerate 'L8 option in the
-arehouse 5esigner tab.
whats the diff between Informatica powercenter ser!er, repositoryser!er and
repository?
"ower center server contains the scheduled runs at which time data should load from source to target
Repository contains all the definitions of the mappings done in designer.
What are the (ifferences between Informatica *ower Center !ersions 5./ and +.-,
also between Cersions 5./ and >.-?
+he main difference between informatica 5.1 and M.1 is that in M.1 they introduce a new thing called
repository server and in place of server managerE5.1F# they introduce workflow manager and workflow
monitor.
In ver Ox u have the option of looking up ElookupF on a flat file.
C can write to U18 target.
Rersioning
85!" authentication
'upport of M? bit architectures
(ifferences between Informatica 5./ and Informatica +.9
.eatures in O.1 are %
1. Cnion and custom transformation
=. 8ookup on flat file
;. $rid servers working on different operating systems can coexist on same server
?. -e can use pmcmdrep
5. -e can export independent and dependent rep objects
M. -e ca move mapping in any web application
O. Rersion controlling
P. 5ata profilling
What is the difference between connected and unconnected stored procedures.
Run a stored procedure before or after your session. Unconnected
Run a stored procedure once during your mapping, such as pre- or post-
session.
Unconnected
Run a stored procedure every time a row passes through the Stored Procedure
transformation.
Connected or
Unconnected
Run a stored procedure based on data that passes through the mapping, such
as when a specific port does not contain a null value.
Unconnected
Pass parameters to the stored procedure and receive a single output parameter.
Connected or
Unconnected
Pass parameters to the stored procedure and receive multiple output
parameters.
Note !o get multiple output parameters from an unconnected Stored
Procedure transformation, you must create variables for each output
parameter. "or details, see Calling a Stored Procedure "rom an #$pression.
Connected or
Unconnected
Run nested stored procedures. Unconnected
Call multiple times within a mapping. Unconnected
(iscuss which is better amon incremental load, Bormal "oad and 7ulk load
If the database supports bulk load option from Inforrmatica then using :C8J 87!5 for intial loading the
tables is recommended.
5epending upon the re0uirment we should choose between Gormal and incremental loading strategies
If supported by the database bulk load can do the loading faster than normal load.Eincremental load
concept is differnt dont merge with bulk load# mormal loadF
Compare (ata Warehousin Top-(own approach with 7ottom-up approach
in top down approch% first we have to build dataware house then we will build data marts. which will
need more crossfunctional skills and timetaking process also costly.
in bottom up approach, first we will build data marts then data warehuse. the data mart that is first build
will remain as a proff of concept for the others. less time as compared to above and less cost.
What is the difference between summary filter and detail filter
summary filter can be applied on a group of rows that contain a common value where as detail filters can
be applied on each and every rec of the data base.
what are the difference between !iew and materiali;ed !iew?
!ateriali,ed views are schema o'.ects that can 'e used to summari,e, precompute, replicate, and distri'ute data.
/.g. to construct a data warehouse.
0 materiali,ed view provides indirect access to ta'le data 'y storing the results of a *uery in a separate schema
o'.ect. Unlike an ordinary view, which does not take up any storage space or contain any data
can we modify the data in flat file?

<ust open the text file with notepad# change what ever you want Ebut datatype should be the sameF
how to et the first -99 rows from the flat file into the taret?
%?"B-, task 99999DElinkF session Eworkflow managerF
double click on link and type &&source sucsess rowsEparameter in session variablesF ) 100
it should automatically stops session.
%?"B/, 1. Cse test download option if you want to use it for testing.
=. "ut counter@se0uence generator in mapping and perform it.
can we lookup a table from a source 3ualifer transformation-unconnected lookup
Go. we can4t do.
I will explain you why.
1F Cnless you assign the output of the source 0ualifier to another transformation or to target no way it will
include the feild in the 0uery.
=F source 0ualifier don4t have any variables feilds to utaliAe as expression.
what is a junk dimension

! QjunkQ dimension is a collection of random transactional codes# flags and@or text attributes that are
unrelated to any particular dimension. +he junk dimension is simply a structure that provides a
convenient place to store the junk attributes. ! good example would be a trade fact in a company that
brokers e0uity trades.
-hat is the difference between Garmal load and :ul...

Gormal 8oad% Gormal load will write information to the database log file so that if any recorvery is needed
it is will be helpful. when the source file is a text file and loading data to a table#in such cases we should
you normal load only# else the session will be failed.:ulk 1ode% :ulk load will not write information to the
database log file so that if any recorvery is needed we can4t do any thing in such cases. compartivly :ulk
load is pretty faster than normal load.
't the max how many tranformations can be us in a mappin?
+here is no such limitation to use this number of transformations. :ut in performance point of view using
too many transformations will reduce the session performance.
1y idea is Qif needed more tranformations to use in a mapping its better to go for some stored
procedure.Q

Waht are main ad!antaes and purpose of usin Bormali;er Transformation in Informatica?

GarmaliAer +ransformation is used mainly with H7:78 sources where most of the time data is stored in
de9normaliAed format. !lso# GormaliAer transformation can be used to create multiple rows from a single
row of data
2ow do u con!ert rows to columns in Bormali;er? could you explain us??
Gormally# its used to convert columns to rows but for converting rows to columns# we need an aggregator
and expression and little effort is needed for coding. 5enormaliAation is not possible with a GormaliAer
transformation.
(iscuss the ad!antaes I (isad!antaes of star I snowflake schema?
In a star schema every dimension will have a primary key.
In a star schema# a dimension table will not have any parent table.
-hereas in a snow flake schema# a dimension table will have one or more parent tables.
6ierarchies for the dimensions are stored in the dimensional table itself in star schema.
-hereas hierachies are broken into separate tables in snow flake schema. +hese hierachies helps to drill
down the data from topmost hierachies to the lowermost hierarchies.
star schema consists of single fact table surrounded by some dimensional table.In snowflake schema the
dimension tables are connected with some subdimension table.
In starflake dimensional ables r denormaliAed#in snowflake dimension tables r normaliAed.
star schema is used for report generation #snowflake schema is used for cube.
+he advantage of snowflake schema is that the normaliAed tables r easier to maintain.it also saves the
storage space.
+he disadvantage of snowflake schema is that it reduces the effectiveness of navigation across the tables
due to large no of joins between them.
what is a time dimension? i!e an example.

+ime dimension is one of important in 5atawarehouse. -henever u genetated the report # that time u
access all data from thro time dimension.

eg. employee time dimension

.ields % 5ate key# full date# day of wek# day # month#0uarter#fiscal year
What r the connected or unconnected transforamations?
Honnected transformation is a part of your data flow in the pipeline while unconnected +ransformation is
not.
much like calling a program by name and by reference.
use unconnected transforms when you wanna call the same transform many times in a single mapping
!n unconnected transformation cant be connected to another transformation. but it can be called inside
another transformation.
uncondition transformation are directly connected and can@used in as many as other transformations. If
you are using a transformation several times# use unconditional. ou get better performance.
2ow can A create or import flat file definition in to the warehouse desiner?
C can create flat file definition in warehouse designer.in the warehouse designer#u can create new target%
select the type as flat file. save it and u can enter various columns for that created target by editing its
properties.7nce the target is created# save it. u can import it from the mapping designer.
C can not create or import flat file defintion in to warehouse designer directly.Instead C must analyAe the
file in source analyAer#then drag it into the warehouse designer.-hen C drag the flat file source defintion
into warehouse desginer workspace#the warehouse designer creates a relational target defintion not a file
defintion.If u want to load to a file#configure the session to write to a flat file.-hen the informatica server
runs the session#it creates and loads the flatfile.
What r the tasks that "oadmaner process will do?
1anages the session and batch scheduling% -he u start the informatica server the load maneger
launches and 0ueries the repository for a list of sessions configured to run on the informatica
server.-hen u configure the session the loadmanager maintains list of list of sessions and session start
times.-hen u sart a session loadmanger fetches the session information from the repository to perform
the validations and verifications prior to starting 5+1 process.
8ocking and reading the session% -hen the informatica server starts a session lodamaager locks the
session from the repository.8ocking prevents C starting the session again and again.
Reading the parameter file% If the session uses a parameter files#loadmanager reads the parameter file
and verifies that the session level parematers are declared in the file
Rerifies permission and privelleges% -hen the sesson starts load manger checks whether or not the user
have privelleges to run the session.
Hreating log files% 8oadmanger creates logfile contains the status of session.
2ow do you transfert the data from data warehouse to flatfile?
ou can write a mapping with the flat file as a target using a 5C11(H7GG2H+I7G. ! flat file target is
built by pulling a source into target space using -arehouse 5esigner tool.
(iff between informatica repositry ser!er I informatica ser!er
Informatica Repository 'erver%It4s manages connections to the repository from client application.
Informatica 'erver%It4s extracts the source data#performs the data transformation#and loads the
transformed data into the target
)outer transformation

! Router transformation is similar to a .ilter transformation because both transformations allow you to
use a condition to test data. ! .ilter transformation tests data for one condition and drops the rows of
data that do not meet the condition. 6owever# a Router transformation tests data for one or more
conditions and gives you the option to route rows of data that do not meet any of the conditions to a
default output group.
What are / modes of data mo!ement in Informatica %er!er?+he data movement mode depends on
whether Informatica 'erver should process single byte or multi9byte character data. +his mode selection
can affect the enforcement of code page relationships and code page validation in the Informatica Hlient
and 'erver.
aF Cnicode 9 I' allows = bytes for each character and uses additional byte for each non9
ascii character Esuch as <apanese charactersF
bF !'HII 9 I' holds all data in a single byte
+he I' data movement mode can be changed in the Informatica 'erver configuration parameters. +his
comes into effect once you restart the Informatica 'erver.
2ow to read rejected data or bad data from bad file and reload it to taret?
correction the rejected data and send to target relational tables using loadorder utility. .ind out the
rejected data by using column indicatior and row indicator.
1xplain the informatica 'rchitecture in detail
Informatica server connects source data and target data using native
odbc drivers
again it connect to the repository for running sessions and retriveing metadata information
source------Jinformatica ser!er---------Jtaret
K
K
)1*?%IT?)L repositoryRepositoryRepository ser.adm.
control ser!er sourceMinformatica ser!erNtaret
-------------OP OP OPdesiner w.f.manaer
w.f.monitor
how can we partition a session in Informatica?

+he InformaticaV "owerHenterV "artitioning option optimiAes parallel processing on multiprocessor
hardware by providing a thread9based architecture and built9in data partitioning.
$CI9based tools reduce the development effort necessary to create data partitions and streamline
ongoing troubleshooting and performance tuning tasks# while ensuring data integrity throughout the
execution process. !s the amount of data within an organiAation expands and real9time demand for
information grows# the "owerHenter "artitioning option
enables hardware and applications to provide outstanding performance and jointly scale to handle large
volumes of data and users.
What is "oad $anaer?
%hile running a %or&flow,the PowerCenter Server uses the 'oad (anager process and the )ata
!ransformation (anager Process *)!(+ to run the wor&flow and carry out wor&flow
tas&s.%hen the PowerCenter Server runs a wor&flow, the 'oad (anager performs the following
tas&s

,. 'oc&s the wor&flow and reads wor&flow properties.
-. Reads the parameter file and e$pands wor&flow variables.
.. Creates the wor&flow log file.
/. Runs wor&flow tas&s.
0. )istributes sessions to wor&er servers.
1. Starts the )!( to run sessions.
2. Runs sessions from master servers.
3. Sends post-session email if the )!( terminates abnormally.

%hen the PowerCenter Server runs a session, the )!( performs the following tas&s
,. "etches session and mapping metadata from the repository.
-. Creates and e$pands session variables.
.. Creates the session log file.
/. 4alidates session code pages if data code page validation is enabled. Chec&s 5uery
conversions if data code page validation is disabled.
0. 4erifies connection ob6ect permissions.
1. Runs pre-session shell commands.
2. Runs pre-session stored procedures and S7'.
3. Creates and runs mapping, reader, writer, and transformation threads to e$tract,transform, and
load data.
8. Runs post-session stored procedures and S7'.
,9. Runs post-session shell commands.
,,. Sends post-session email.
What is (ata cleansin..?
+he process of finding and removing or correcting data that is incorrect# out9of9date# redundant#
incomplete# or formatted incorrectly.
+his is nothing but polising of data. .or example of one of the sub system store the $ender as 1
and .. +he other may store it as 1!82 and .21!82. 'o we need to polish this data# clean it before it is
add to 5atawarehouse. 7ther typical example can be !ddresses. +he all sub systesms maintinns the
customer address can be different. -e might need a address cleansing to tool to have the customers
addresses in clean and neat form.
To pro!ide support for $ainframes source data,which files r used as a source
definitions?H7:78 Hopy9book filesWhere should A place the flat file to import the flat file
defintion to the desiner?
+here is no such restrication to place the source file. In performance point of view its better to place the
file in server local src folder. if you need path please check the server properties availble at workflow
manager.
It doesn4t mean we should not place in any other folder# if we place in server src folder by default src will
be selected at time session creation
2ow many ways you can update a relational source defintion and what r they?+wo
ways
1. 2dit the definition
=. Reimport the definitionWhich transformation should u need while usin the cobol
sources as source defintions?GormaliAer transformaiton which is used to normaliAe the data.'ince
cobol sources r oftenly consists of 5enormailAed data.
What is the maplet?

.or 2x%'uppose we have several fact tables that re0uire a series of dimension keys.+hen we can create
a mapplet which contains a series of 8kp transformations to find each dimension key and use it in each
fact table mapping instead of creating the same 8kp logic in each mapping.
what is a transforamation?It is a repostitory object that generates#modifies or passes data.!
transformation is repository object that pass data to the next stageEi.e to the next transformation or targetF
with@with out modifying the dataWhat r the acti!e and passi!e transforamtions?!n active
transforamtion can change the number of rows that pass through it.! passive transformation does not
change the number of rows that pass through it.
+ransformations can be active or passive. 'n acti!e transformation can change the number of rows that
pass through it# such as a .ilter transformation that removes rows that do not meet the filter condition.
' passi!e transformation does not change the number of rows that pass through it# such as an
2xpression transformation that performs a calculation on data and passes all rows through the
transformation.
What r the reusable transforamtions?Reusable transformations can be used in multiple
mappings.-hen u need to incorporate this transformation into maping#C add an instance of it to
maping.8ater if C change the definition of the transformation #all instances of it inherit the changes.'ince
the instance of reusable transforamation is a pointer to that transforamtion#C can change the
transforamation in the transformation developer#its instances automatically reflect these changes.+his
feature can save C great deal of work.What r the methods for creatin reusable
transforamtions?+wo methods
1.5esign it in the transformation developer.
=."romote a standard transformation from the mapping designer.!fter C add a transformation to the
mapping # C can promote it to the status of reusable transformation.
7nce C promote a standard transformation to reusable status#C can demote it to a standard
transformation at any time.
If u change the properties of a reusable transformation in mapping#C can revert it to the original reusable
transformation properties by clicking the revert button.What r the unsupported repository
objects for a mapplet?H7:78 source definition
<oiner transformations
GormaliAer transformations
Gon reusable se0uence generator transformations.
"re or post session stored procedures
+arget defintions
"ower mart ;.5 style 8ook Cp functions
U18 source definitions
I:1 1L source definitions %ource definitions. 5efinitions of database objects Etables# views#
synonymsF or files that provide source data. Taret definitions. 5efinitions of database objects or files
that contain the target data. $ulti-dimensional metadata. +arget definitions that are configured as
cubes and dimensions. $appins. ! set of source and target definitions along with transformations
containing business logic that you build into the transformation. +hese are the instructions that the
Informatica 'erver uses to transform and move data. )eusable transformations. +ransformations that
you can use in multiple mappings. $applets. ! set of transformations that you can use in multiple
mappings. %essions and workflows. 'essions and workflows store information about how and when
the Informatica 'erver moves data. ! workflow is a set of instructions that describes how and when to run
tasks related to extracting# transforming# and loading data. ! session is a type of task that you can put in
a workflow. 2ach session corresponds to a single mapping.What r the mappin paramaters and
mapin !ariables?1aping parameter represents a constant value that C can define before running a
session.! mapping parameter retains the same value throughout the entire session.
-hen u use the maping parameter #C declare and use the parameter in a maping or maplet.+hen define
the value of parameter in a parameter file for the session.
Cnlike a mapping parameter#a maping variable represents a value that can change throughout the
session.+he informatica server saves the value of maping variable to the repository at the end of session
run and uses that value next time C run the session.Can A use the mapin parameters or
!ariables created in one mapin into another mapin?G7.
-e can use mapping parameters or variables in any transformation of the same maping or mapplet in
which C have created maping parameters or variables.Can u use the mapin parameters or
!ariables created in one mapin into any other reusable transformation?es.:ecause
reusable tranformation is not contained with any maplet or maping.
2ow can A impro!e session performance in areator transformation?

use sorted input%
1. use a sorter before the aggregator
=. donot forget to check the option on the aggregator that tell the aggregator that the input is sorted on
the same keys as group by.
the key order is also very important
What is areate cache in areator transforamtion?+he aggregator stores data in the
aggregate cache until it completes aggregate calculations.-hen u run a session that uses an aggregator
transformation#the informatica server creates index and data caches in memory to process the
transformation.If the informatica server re0uires more space#it stores overflow values in cache files.
-hen you run a workflow that uses an !ggregator transformation# the Informatica 'erver creates index
and data caches in memory to process the transformation. If the Informatica 'erver re0uires more space#
it stores overflow values in cache files.
What r the diffrence between joiner transformation and source 3ualifier
transformation?C can join hetrogenious data sources in joiner transformation which we can not
achieve in source 0ualifier transformation.
C need matching keys to join two relational sources in source 0ualifier transformation.-here as u doesnBt
need matching keys to join two sources.
+wo relational sources should come from same datasource in source0ualifier.C can join relatinal sources
which r coming from diffrent sources also.In which condtions we can not use joiner
transformation8"imitaions of joiner transformation.?:oth pipelines begin with the same
original data source.
:oth input pipelines originate from the same 'ource Lualifier transformation.
:oth input pipelines originate from the same GormaliAer transformation.
:oth input pipelines originate from the same <oiner transformation.
2ither input pipelines contains an Cpdate 'trategy transformation.
2ither input pipelines contains a connected or unconnected 'e0uence $enerator transformation.what r
the settiins that u use to cofiure the joiner transformation? 1aster and detail source
+ype of join Hondition of the join
the <oiner transformation supports the following join types# which you set in the "roperties tab%
Gormal E5efaultF
1aster 7uter
5etail 7uter
.ull 7uter
What r the join types in joiner transformation?

Gormal E5efaultF 99 only matching rows from both master and detail
1aster outer 99 all detail rows and only matching rows from master
5etail outer 99 all master rows and only matching rows from detail
.ull outer 99 all rows from both master and detail E matching or non matchingF
follw this
,. :n the (apping )esigner, choose !ransformation-Create. Select the ;oiner
transformation. #nter a name, clic& <=.
!he naming convention for ;oiner transformations is ;NR>TransformationName. #nter a
description for the transformation. !his description appears in the Repository (anager, ma&ing
it easier for you or others to understand or remember what the transformation does. !he
)esigner creates the ;oiner transformation. =eep in mind that you cannot use a Se5uence
?enerator or Update Strategy transformation as a source to a ;oiner transformation.
-. )rag all the desired input@output ports from the first source into the ;oiner
transformation.
!he )esigner creates input@output ports for the source fields in the ;oiner as detail fields by
default. Aou can edit this property later.
.. Select and drag all the desired input@output ports from the second source into the ;oiner
transformation.
!he )esigner configures the second set of source fields and master fields by default.
/. )ouble-clic& the title bar of the ;oiner transformation to open the #dit !ransformations
dialog bo$.
0. Select the Ports tab.
1. Clic& any bo$ in the ( column to switch the master@detail relationship for the sources.
Change the master@detail relationship if necessary by selecting the master source in the
( column.
Tip: )esignating the source with fewer uni5ue records as master increases performance during a
6oin.
2. Bdd default values for specific ports as necessary.
Certain ports are li&ely to contain NU'' values, since the fields in one of the sources may be
empty. Aou can specify a default value if the target database does not handle NU''s.
3. Select the Condition tab and set the condition.
8. Clic& the Bdd button to add a condition. Aou can add multiple conditions. !he master
and detail ports must have matching datatypes. !he ;oiner transformation only supports
e5uivalent *C+ 6oins
,9. Select the Properties tab and enter any additional settings for the transformations.
,,. Clic& <=.
,-. Choose Repository-Save to save changes to the mapping.

What r the joiner caches?-hen a <oiner transformation occurs in a session# the Informatica 'erver
reads all the records from the master source and builds index and data caches based on the master rows.
!fter building the caches# the <oiner transformation reads records from the detail source and perform
joinswhat is the look up transformation?Cse lookup transformation in uBr mapping to lookup data
in a relational table#view#synonym.
Informatica server 0ueries the look up table based on the lookup ports in the transformation.It compares
the lookup transformation port values to lookup table column values based on the look up condition.Why
use the lookup transformation ?+o perform the following tasks.
$et a related value. .or example# if your source table includes employee I5# but you want to include the
employee name in your target table to make your summary data easier to read.
"erform a calculation. 1any normaliAed tables include values used in a calculation# such as gross sales
per invoice or sales tax# but not the calculated value Esuch as net salesF.
Cpdate slowly changing dimension tables. ou can use a 8ookup transformation to determine whether
records already exist in the target.
What r the types of lookup?

-. Connected lookup
/. Anconnected lookup
1. "ersistent cache
=. Re9cache from database
;. 'tatic cache
?. 5ynamic cache
5. 'hared cache
(ifferences between connected and unconnected lookup?
Honnected lookup Cnconnected lookup
Receives input values diectly from the
pipe line.
Receives input values from the result of a lkp expression in
a another transformation.
C can use a dynamic or static cache C can use a static cache.
Hache includes all lookup columns
used in the maping
Hache includes all lookup out put ports in the lookup
condition and the lookup@return port.
'upport user defined default values 5oes not support user defiend default values
What is meant by lookup caches?+he informatica server builds a cache in memory when it
processes the first row af a data in a cached look up transformation.It allocates memory for the cache
based on the amount u configure in the transformation or session properties.+he informatica server stores
condition values in the index cache and output values in the data cache.What r the types of lookup
caches?"ersistent cache% C can save the lookup cache files and reuse them the next time the
informatica server processes a lookup transformation configured to use the cache.
Recache from database% If the persistent cache is not synchroniAed with he lookup table# C can configure
the lookup transformation to rebuild the lookup cache.
'tatic cache% C can configure a static or readonly cache for only lookup table.:y default informatica
server creates a static cache.It caches the lookup table and lookup values in the cache for each row that
comes into the transformation.when the lookup condition is true#the informatica server does not update
the cache while it prosesses the lookup transformation.
5ynamic cache% If u want to cache the target table and insert new rows into cache and the target#u can
create a look up transformation to use dynamic cache.+he informatica server dynamically inerts data to
the target table.
'hared cache% C can share the lookup cache between multiple transactions. C can share unnamed cache
between transformations in the same maping.(ifference between static cache and dynamic
cache
'tatic cache 5ynamic cache
C can not insert or update the cache
C can insert rows into the cache as u pass to
the target
+he informatica server returns a value from the lookup table
or cache when the condition is true. -hen the condition is not
true# informatica server returns the default value for
connected transformations and null for unconnected
transformations.
+he informatica server inserts rows into
cache when the condition is false. +his
indicates that the row is not in the cache or
target table. C can pass these rows to the
target table
Which transformation should we use to normali;e the C?7?" and relational
sources?GormaliAer +ransformation.
-hen C drag the H7:78 source in to the mapping 5esigner workspace#the normaliAer transformation
automatically appears#creating input and output ports for every column in the source.2ow the
informatica ser!er sorts the strin !alues in )anktransformation?-hen the informatica
server runs in the !'HII data movement mode it sorts session data using :inary sortorder.If C configure
the seeion to use a binary sort order#the informatica server caluculates the binary value of each string and
returns the specified number of rows with the higest binary values for the string.What r the rank
caches?5uring the session #the informatica server compares an inout row with rows in the datacache.If
the input row out9ranks a stored row#the informatica server replaces the stored row with the input row.+he
informatica server stores group information in an index cache and row data in a data cache.What is the
)ankindex in )anktransformation?+he 5esigner automatically creates a R!GJIG52U port for
each Rank transformation. +he Informatica 'erver uses the Rank Index port to store the ranking position
for each record in a group. .or example# if you create a Rank transformation that ranks the top 5
salespersons for each 0uarter# the rank index numbers the salespeople from 1 to 5%What is the
)outer transformation?! Router transformation is similar to a .ilter transformation because both
transformations allow you to use a condition to test data. 6owever# a .ilter transformation tests data for
one condition and drops the rows of data that do not meet the condition. ! Router transformation tests
data for one or more conditions and gives you the option to route rows of data that do not meet any of the
conditions to a default output group.
If you need to test the same input data based on multiple conditions# use a Router +ransformation in a
mapping instead of creating multiple .ilter transformations to perform the same task.What r the types
of roups in )outer transformation?Input group 7utput group
+he designer copies property information from the input ports of the input group to create a set of output
ports for each output group.
+wo types of output groups
Cser defined groups
5efault group
C can not modify or delete default groups.Why we use stored procedure transformation?
B Stored Procedure transformation is an important tool for populating and maintaining
databases. )atabase administrators create stored procedures to automate time-consuming tas&s
that are too complicated for standard S7' statements
What r the types of data that passes between informatica ser!er and stored
procedure?; types of data
Input@7ut put parameters
Return Ralues
'tatus code.What is the status code?'tatus code provides error handling for the informatica server
during the session.+he stored procedure issues a status code that notifies whether or not stored
procedure completed sucessfully.+his value can not seen by the user.It only used by the informatica
server to determine whether to continue running the session or stop.
What is source 3ualifier transformation? What r the tasks that source 3ualifier performs?

-hen you add a relational or a flat file source definition to a mapping# you need to connect it to a 'ource
Lualifier transformation. +he 'ource Lualifier represents the rows that the Informatica 'erver reads
when it executes a session.
&oin data oriinatin from the same source database. ou can join two or more tables with
primary9foreign key relationships by linking the sources to one 'ource Lualifier. <ilter records when
the Informatica %er!er reads source data. If you include a filter condition# the Informatica 'erver adds
a -62R2 clause to the default 0uery. %pecify an outer join rather than the default inner join. If
you include a user9defined join# the Informatica 'erver replaces the join information specified by the
metadata in the 'L8 0uery. %pecify sorted ports. If you specify a number for sorted ports# the
Informatica 'erver adds an 7R52R : clause to the default 'L8 0uery. %elect only distinct !alues
from the source. If you choose 'elect 5istinct# the Informatica 'erver adds a '282H+ 5I'+IGH+
statement to the default 'L8 0uery. Create a custom 3uery to issue a special %1"1CT statement
for the Informatica %er!er to read source data. .or example# you might use a custom 0uery to
perform aggregate calculations or execute a stored procedure.
What is the taret load order?C specify the target loadorder based on source 0ualifiers in a
maping.If u have the multiple
source 0ualifiers connected to the multiple targets#C can designatethe order in which informatica
server loads data into the targets.
! target load order group is the collection of source 0ualifiers# transformations# and targets linked together
in a mapping.
What is the default join that source 3ualifier pro!ides?Inner e0ui join.
+he <oiner transformation supports the following join types# which you set in the "roperties tab%
Gormal E5efaultF
1aster 7uter
5etail 7uter
.ull 7uter
What r the basic needs to join two sources in a source 3ualifier?+wo sources should have
primary and .oreign key relation ships.
+wo sources should have matching data types.
what is update stratey transformation ?

+he model you choose constitutes your update strategy# how to handle changes to existing rows. In
"owerHenter and "ower1art# you set your update strategy at two different levels%
Within a session. -hen you configure a session# you can instruct the Informatica 'erver to
either treat all rows in the same way Efor example# treat all rows as insertsF# or use instructions
coded into the session mapping to flag rows for different database operations.
Within a mappin. -ithin a mapping# you use the Cpdate 'trategy transformation to flag rows
for insert# delete# update# or reject.
(escribe two le!els in which update stratey transformation sets?-ithin a session. -hen
you configure a session# you can instruct the Informatica 'erver to either treat all records in the same way
Efor example# treat all records as insertsF# or use instructions coded into the session mapping to flag
records for different database operations.
-ithin a mapping. -ithin a mapping# you use the Cpdate 'trategy transformation to flag records for
insert# delete# update# or reject.What is the default source option for update stratey
transformation?5ata driven.What is (atadri!en?+he informatica server follows instructions
coded into update strategy transformations with in the session maping determine how to flag records for
insert# update# delete or reject. If u do not choose data driven option setting#the informatica server ignores
all update strategy transformations in the mapping.What r the options in the taret session of
update stratey transsformatioin?Insert
5elete
Cpdate
Cpdate as update
Cpdate as insert
Cpdate esle insert
+runcate table
Cpdate as Insert%
+his option specified all the update records from source to be flagged as inserts in the target. In other
words# instead of updating the records in the target they are inserted as new records.
Cpdate else Insert%
+his option enables informatica to flag the records either for update if they are old or insert# if they are
new records from source.
What r the types of mapin wi;ards that r to be pro!ided in Informatica?Simple Pass
trou! Slowly "rowin! Tar!et Slowly #an!in! te $imension Type%
(ost recent values
Type&'ull (istory
4ersion
"lag
)ate
Type)
Current and one previous
What r the types of mapin in =ettin %tarted Wi;ard?'imple "ass through maping %
8oads a static fact or dimension table by inserting all rows. Cse this mapping when you want to drop all
existing data from your table before loading new data.
'lowly $rowing target %
8oads a slowly growing fact or dimension table by inserting new rows. Cse this mapping to load new data
when existing data does not re0uire updates.What r the mapins that we use for slowly
chanin dimension table?
+ype1% Rows containing changes to existing dimensions are updated in the target by overwriting the
existing dimension. In the +ype 1 5imension mapping# all rows contain current dimension data.
Cse the +ype 1 5imension mapping to update a slowly changing dimension table when you do not need
to keep any previous versions of dimensions in the table.
+ype =% +he +ype = 5imension 5ata mapping inserts both new and changed dimensions into the target.
Hhanges are tracked in the target table by versioning the primary key and creating a version number for
each dimension in the table.
Cse the +ype = 5imension@Rersion 5ata mapping to update a slowly changing dimension table when you
want to keep a full history of dimension data in the table. Rersion numbers and versioned primary keys
track the order of changes to each dimension.
+ype ;% +he +ype ; 5imension mapping filters source rows based on user9defined comparisons and
inserts only those found to be new dimensions to the target. Rows containing changes to existing
dimensions are updated in the target. -hen updating an existing dimension# the Informatica 'erver saves
existing data in different columns of the same row and replaces the existing data with the updatesWhat r
the different types of Type/ dimension mapin?+ype= 5imension@Rersion 5ata 1aping% In
this maping the updated dimension in the source will gets inserted in target along with a new version
number.!nd newly added dimension
in source will inserted into target with a primary key.
+ype= 5imension@.lag current 1aping% +his maping is also used for slowly changing dimensions.In
addition it creates a flag value for changed or new dimension.
.lag indiactes the dimension is new or newlyupdated.Recent dimensions will gets saved with cuurent flag
value 1. !nd updated dimensions r saved with the value 0.
+ype= 5imension@2ffective 5ate Range 1aping% +his is also one flavour of +ype= maping used for slowly
changing dimensions.+his maping also inserts both new and changed dimensions in to the target.!nd
changes r tracked by the effective date range for each version of each dimension.2ow can u
reconise whether or not the newly added rows in the source r ets insert in the
taret ?In the +ype= maping we have three options to recognise the newly added rows
Rersion number
.lagvalue
2ffective date RangeWhat r two types of processes that informatica runs the session?
8oad manager "rocess% 'tarts the session# creates the 5+1 process# and sends post9session email
when the session completes.
+he 5+1 process. Hreates threads to initialiAe the session# read# write# and transform data# and handle
pre9 and post9session operations.What r the new features of the ser!er manaer in the
informatica >.9?C can use command line arguments for a session or batch.+his allows C to change
the values of session parameters#and mapping parameters and maping variables.
"arallel data processing% +his feature is available for powercenter only.If we use the informatica server on
a '1" system#C can use multiple H"CBs to process a session concurently.
"rocess session data using threads% Informatica server runs the session in two processes.2xplained in
previous 0uestion.Can u enerate reports in Informatcia?
:t is a #!' tool, you could not ma&e reports from here, but you can generate metadata report,
that is not going to be used for business analysis
What is metadata reporter?It is a web based application that enables you to run reports againist
repository metadata.
-ith a meta data reporter#u can access information about CBr repository with out having knowledge of
s0l#transformation language or underlying tables in the repository.(efine mapin and sessions?
1aping% It is a set of source and target definitions linked by transformation objects that define the rules for
transformation.
'ession % It is a set of instructions that describe how and when to move data from source to
targets.Which tool A use to create and manae sessions and batches and to monitor
and stop the informatica ser!er?Informatica server manager.what is pollin?It displays the
updated information about the session in the monitor window. +he monitor window displays the status of
each session when C poll the informatica server.While importin the relational source
defintion from database,what are the meta data of source A import?'ource name
5atabase location
Holumn names
5atatypes
Jey constraints What r the desiner tools for creatin tranformations?1apping designer
+ansformation developer
1applet designer2ow many ways u create ports?+wo ways
1.5rag the port from another transforamtion
=.Hlick the add buttion on the ports tab.Why we use partitionin the session in informatica?
"artitioning achieves the session performance by reducing the time period of reading the source and
loading the data into target.
"erformance can be improved by processing data in parallel in a single session by creating multiple
partitions of the pipeline.
Informatica server can achieve high performance by partitioning the pipleline and performing the extract #
transformation# and load for each partition in parallel.
To achie!e the session partition what r the necessary tasks u ha!e to do?Honfigure the
session to partition source data.
Install the informatica server on a machine with multiple H"CBs.2ow the informatica ser!er
increases the session performance throuh partitionin the source?.or a relational
sources informatica server creates multiple connections for each parttion of a single source and extracts
seperate range of data for each connection.Informatica server reads multiple partitions of a single source
concurently.'imilarly for loading also informatica server creates multiple connections to the target and
loads partitions of data concurently.
.or U18 and file sources#informatica server reads multiple files concurently..or loading the data
informatica server creates a seperate file for each partitionEof a source fileF.C can choose to merge the
targets.Why u use repository connecti!ity?-hen u edit#schedule the sesion each
time#informatica server directly communicates the repository to check whether or not the session and
users r valid.!ll the metadata of sessions and mappings will be stored in repository. What is (T$
process?!fter the loadmanger performs validations for session#it creates the 5+1 process.5+1 is to
create and manage the threads that carry out the session tasks.I creates the master thread.1aster thread
creates and manges all the other threads.What r the different threads in (T$ process?1aster
thread% Hreates and manages all other threads
1aping thread% 7ne maping thread will be creates for each session..ectchs session and maping
information.
"re and post session threads% +his will be created to perform pre and post session operations.
Reader thread% 7ne thread will be created for each partition of a source.It reads data from source.
-riter thread% It will be created to load data to the target.
+ransformation thread% It will be created to tranform data.What r the data mo!ement modes in
informatcia?5atamovement modes determines how informatcia server handles the charector data.C
choose the datamovement in the informatica server configuration settings.+wo types of datamovement
modes avialable in informatica.
!'HII mode
Cni code mode.What r the out put files that the informatica ser!er creates durin the
session runnin?Informatica server log% Informatica serverEon unixF creates a log for all status and
error messagesEdefault name% pm.server.logF.It also creates an error log for error messages.+hese files
will be created in informatica home directory.
'ession log file% Informatica server creates session log file for each session.It writes information about
session into log files such as initialiAation process#creation of s0l commands for reader and writer
threads#errors encountered and load summary.+he amount of detail in session log file depends on the
tracing level that u set.
'ession detail file% +his file contains load statistics for each targets in mapping.'ession detail include
information such as table name#number of rows written or rejected.C can view this file by double clicking
on the session in monitor window
"erformance detail file% +his file contains information known as session performance details which helps
C where performance can be improved.+o genarate this file select the performance detail option in the
session property sheet.
Reject file% +his file contains the rows of data that the writer does notwrite to targets.
Hontrol file% Informatica server creates control file and a target file when C run a session that uses the
external loader.+he control file contains the information about the target flat file such as data format and
loading instructios for the external loader.
"ost session email% "ost session email allows C to automatically communicate information about a
session run to designated recipents.C can create two different messages.7ne if the session completed
sucessfully the other if the session fails.
Indicator file% If u use the flat file as a target#C can configure the informatica server to create indicator
file..or each target row#the indicator file contains a number to indicate whether the row was marked for
insert#update#delete or reject.
output file% If session writes to a target file#the informatica server creates the target file based on file
prpoerties entered in the session property sheet.
Hache files% -hen the informatica server creates memory cache it also creates cache files..or the
following circumstances informatica server creates index and datacache files.
!ggreagtor transformation
<oiner transformation
Rank transformation
8ookup transformationIn which circumstances that informatica ser!er creates )eject
files?-hen it encounters the 55(Reject in update strategy transformation.
Riolates database constraint
.iled in the rows was truncated or overflowed.Can u copy the session to a different folder or
repository?es. :y using copy session wiAard u can copy a session in a different folder or
repository.:ut that
target folder or repository should consists of mapping of that session.
If target folder or repository is not having the maping of copying session #
u should have to copy that maping first before u copy the sessionIn addition# you can copy the workflow
from the Repository manager. +his will automatically copy the mapping# associated source#targets and
session to the target folder.What is batch and describe about types of batches?$rouping of
session is known as batch.:atches r two types
'e0uential% Runs sessions one after the other
Honcurrent% Runs session at same time.
If u have sessions with source9target dependencies u have to go for se0uential batch to start the
sessions one after another.If u have several independent sessions u can use concurrent batches.
-hch runs all the sessions at the same time. 2ow many number of sessions that u can create
in a batch?!ny number of sessions.When the informatica ser!er marks that a batch is
failed?If one of session is configured to Qrun if previous completesQ and that previous session failsWhat
is a command that used to run a batch?pmcmd is used to start a batch.What r the different
options used to confiure the se3uential batches?+wo options
Run the session only if previous session completes sucessfully. !lways runs the session.In a
se3uential batch can u run the session if pre!ious session fails?es.:y setting the option
always runs the session.Can u start a batches with in a batch?C can not. If u want to start batch
that resides in a batch#create a new independent batch and copy the necessary sessions into the new
batch.Can u start a session inside a batch idi!idually?-e can start our re0uired session only
in case of se0uential batch.in case of concurrent batch
we cant do like this.2ow can u stop a batch?:y using server manager or pmcmd.What r the
session parameters?'ession parameters r like maping parameters#represent values C might want to
change between
sessions such as database connections or source files.
'erver manager also allows C to create userdefined session parameters..ollowing r user defined
session parameters.
5atabase connections
'ource file names% use this parameter when u want to change the name or location of
session source file between session runs
+arget file name % Cse this parameter when u want to change the name or location of
session target file between session runs.
Reject file name % Cse this parameter when u want to change the name or location of
session reject files between session runs.What is parameter file?"arameter file is to define the
values for parameters and variables used in a session.! parameter
file is a file created by text editor such as word pad or notepad.
C can define the following values in parameter file
1aping parameters
1aping variables
session parameters
.or -indows command prompt users# the parameter file name cannot have beginning or trailing spaces.
If the name includes spaces# enclose the file name in double 0uotes%
-para!"#$ %&'(R))*D"r+, !"#$-*.*%
Bote, -hen you write a pmcmd command that includes a parameter file located on another machine# use
the backslash E*F with the dollar sign E&F. +his ensures that the machine where the variable is defined
expands the server variable.
p/0 1*ar*2)r3!#)2 -45 USERNA(E -p5 'ASS6ORD -1 SALES78259 -! $a1* -2
2Sa#$1A5: -para!"#$ ;&'(R))*D"r<,!"#$-*.*;
2ow can u access the remote source into AQr session?Relational source% +o acess relational
source which is situated in a remote place #u need to
configure database connection to the datasource.
.ile'ource % +o access the remote source file C must configure the .+" connection to the
host machine before u create the session.
6etrogenous % -hen CBr maping contains more than one source type#the server manager creates
a hetrogenous session that displays source options for all types.What is difference between
partionin of relatonal taret and partitionin of file tarets?If u parttion a session with a
relational target informatica server creates multiple connections
to the target database to write target data concurently.If u partition a session with a file target
the informatica server creates one target file for each partition.C can configure session properties
to merge these target fileswhat r the transformations that restricts the partitionin of
sessions?!dvanced 2xternal procedure tranformation and 2xternal procedure transformation% +his
transformation contains a check box on the properties tab to allow partitioning.
!ggregator +ransformation% If u use sorted ports u can not parttion the assosiated source
<oiner +ransformation % C can not partition the master source for a joiner transformation
GormaliAer +ransformation
U18 targets.*erformance tunin in Informatica?+he goal of performance tuning is optimiAe
session performance so sessions run during the available load window for the Informatica
'erver.Increase the session performance by following.
+he performance of the Informatica 'erver is related to network connections. 5ata generally moves
across a network at less than 1 1: per second# whereas a local disk moves data five to twenty times
faster. +hus network connections ofteny affect on session performance.'o aviod netwrok connections.
.lat files% If uBr flat files stored on a machine other than the informatca server# move those files to the
machine that consists of informatica server.
Relational datasources% 1inimiAe the connections to sources #targets and informatica server to
improve session performance.1oving target database into server system may improve session
performance.
'taging areas% If u use staging areas u force informatica server to perform multiple datapasses.
Removing of staging areas may improve session performance.
C can run the multiple informatica servers againist the same repository.5istibuting the session load to
multiple informatica servers may improve session performance.
Run the informatica server in !'HII datamovement mode improves the session performance.:ecause
!'HII datamovement mode stores a character value in one byte.Cnicode mode takes = bytes to store a
character.
If a session joins multiple source tables in one 'ource Lualifier# optimiAing the 0uery may improve
performance. !lso# single table select statements with an 7R52R : or $R7C" : clause may benefit
from optimiAation such as adding indexes.
-e can improve the session performance by configuring the network packet siAe#which allows
data to cross the network at one time.+o do this go to server manger #choose server configure database
connections.
If u r target consists key constraints and indexes u slow the loading of data.+o improve the session
performance in this case drop constraints and indexes before u run the session and rebuild them after
completion of session.
Running a parallel sessions by using concurrent batches will also reduce the time of loading the
data.'o concurent batches may also increase the session performance.
"artittionig the session improves the session performance by creating multiple connections to sources
and targets and loads data in paralel pipe lines.
In some cases if a session contains a aggregator transformation #u can use incremental aggregation to
improve session performance.
!viod transformation errors to improve the session performance.
If the sessioin containd lookup transformation u can improve the session performance by enabling the
look up cache.
If CBr session contains filter transformation #create that filter transformation nearer to the sources
or u can use filter condition in source 0ualifier.
!ggreagator#Rank and joiner transformation may oftenly decrease the session performance .:ecause
they must group data before processing it.+o improve session performance in this case use sorted ports
option.What is difference between maplet and reusable transformation?1aplet consists of
set of transformations that is reusable.! reusable transformation is a
single transformation that can be reusable.
If u create a variables or parameters in maplet that can not be used in another maping or maplet.Cnlike
the variables that r created in a reusable transformation can be usefull in any other maping or maplet.
-e can not include source definitions in reusable transformations.:ut we can add sources to a maplet.
-hole transformation logic will be hided in case of maplet.:ut it is transparent in case of reusable
transformation.
-e cant use H7:78 source 0ualifier#joiner#normaliAer transformations in maplet.-here as we can make
them as a reusable transformations.(efine informatica repository?+he Informatica repository is a
relational database that stores information# or metadata# used by the Informatica 'erver and Hlient tools.
1etadata can include information such as mappings describing how to transform source data# sessions
indicating when you want the Informatica 'erver to perform the transformations# and connect strings for
sources and targets.
+he repository also stores administrative information such as usernames and passwords# permissions
and privileges# and product version.
Cse repository manager to create the repository.+he Repository 1anager connects to the repository
database and runs the code needed to create the repository tables.+hsea tables
stores metadata in specific format the informatica server#client tools use.What r the types of
metadata that stores in repository?.ollowing r the types of metadata that stores in the repository
5atabase connections
$lobal objects
1appings
1applets
1ultidimensional metadata
Reusable transformations
'essions and batches
'hort cuts
'ource definitions
+arget defintions
+ransformations %ource definitions. 5efinitions of database objects Etables# views# synonymsF or files
that provide source data. Taret definitions. 5efinitions of database objects or files that contain the
target data. $ulti-dimensional metadata. +arget definitions that are configured as cubes and
dimensions. $appins. ! set of source and target definitions along with transformations containing
business logic that you build into the transformation. +hese are the instructions that the Informatica
'erver uses to transform and move data. )eusable transformations. +ransformations that you can
use in multiple mappings. $applets. ! set of transformations that you can use in multiple mappings.
%essions and workflows. 'essions and workflows store information about how and when the
Informatica 'erver moves data. ! workflow is a set of instructions that describes how and when to run
tasks related to extracting# transforming# and loading data. ! session is a type of task that you can put in
a workflow. 2ach session corresponds to a single mappingWhat is power center repository?+he
"owerHenter repository allows you to share metadata across repositories to create a data mart domain.
In a data mart domain# you can create a single global repository to store metadata used across an
enterprise# and a number of local repositories to share the global metadata as needed. %tandalone
repository. ! repository that functions individually# unrelated and unconnected to other repositories.
=lobal repository. E"owerHenter only.F +he centraliAed repository in a domain# a group of connected
repositories. 2ach domain can contain one global repository. +he global repository can contain common
objects to be shared throughout the domain through global shortcuts. "ocal repository. E"owerHenter
only.F ! repository within a domain that is not the global repository. 2ach local repository in the domain
can connect to the global repository and use objects in its shared folders.2ow can u work with
remote database in informatica?did u work directly by usin remote connections?+o
work with remote datasource u need to connect it with remote connections.:ut it is not
preferable to work with that remote source directly by using remote connections .Instead u bring that
source into C r local machine where informatica server resides.If u work directly with remote source the
session performance will decreases by passing less amount of data across the network in a particular
time.
Aou can wor& with remote,

Dut you have to

Configure "!P
Connection details
:P address
User authentication
what is incremantal areation?-hen using incremental aggregation# you apply captured
changes in the source to aggregate calculations in a session. If the source changes only incrementally
and you can capture changes# you can configure the session to process only those changes. +his allows
the Informatica 'erver to update your target incrementally# rather than forcing it to process the entire
source and recalculate the same calculations each time you run the session.What r the schedulin
options to run a sesion?C can shedule a session to run at a given time or intervel#or u can manually
run the session.
5ifferent options of scheduling
Run only on demand% server runs the session only when user starts session explicitly
Run once% Informatica server runs the session only once at a specified date and time.
Run every% Informatica server runs the session at regular intervels as u configured.
HustomiAed repeat% Informatica server runs the session at the dats and times secified in the repeat dialog
box.What is tracin le!el and what r the types of tracin le!el?+racing level represents the
amount of information that informatcia server writes in a log file.
+ypes of tracing level
Gormal
Rerbose
Rerbose init
Rerbose dataWhat is difference between stored procedure transformation and external
procedure transformation?In case of storedprocedure transformation procedure will be compiled
and executed in a relational data source.C need data base connection to import the stored procedure in
to uBr maping.-here as in external procedure transformation procedure or function will be executed out
side of data source.Ie u need to make it as a 588 to access in u r maping.Go need to have data base
connection in case of external procedure transformation.1xplain about )eco!erin sessions?If
you stop a session or if an error causes a session to stop# refer to the session and error logs to determine
the cause of failure. Horrect the errors# and then complete the session. +he method you use to complete
the session depends on the properties of the mapping# session# and Informatica 'erver configuration.
Cse one of the following methods to complete the session%
W Run the session again if the Informatica 'erver has not issued a commit.
W +runcate the target tables and run the session again if the session is not recoverable.
W Honsider performing recovery if the Informatica 'erver has issued at least one commit. If a session
fails after loadin of -9,999 records in to the taret.2ow can u load the records from
-999- th record when u run the session next time?!s explained above informatcia server has
; methods to recovering the sessions.Cse performing recovery to load the records from where the
session fails.1xplain about perform reco!ery?-hen the Informatica 'erver starts a recovery
session# it reads the 7":('RRR(R2H7R2R table and notes the row I5 of the last row committed to
the target database. +he Informatica 'erver then reads all sources again and starts processing from the
next row I5. .or example# if the Informatica 'erver commits 10#000 rows before the session fails# when
you run recovery# the Informatica 'erver bypasses the rows up to 10#000 and starts loading with row
10#001.
:y default# "erform Recovery is disabled in the Informatica 'erver setup. ou must enable Recovery in
the Informatica 'erver setup before you run a session so the Informatica 'erver can create and@or write
entries in the 7":('RRR(R2H7R2R table.2ow to reco!er the standalone session?!
standalone session is a session that is not nested in a batch. If a standalone session fails# you can run
recovery using a menu command or pmcmd. +hese options are not available for batched sessions.
+o recover sessions using the menu%
1. In the 'erver 1anager# highlight the session you want to recover.
=. 'elect 'erver Re0uests9'top from the menu.
;. -ith the failed session highlighted# select 'erver Re0uests9'tart 'ession in Recovery 1ode from the
menu.
+o recover sessions using pmcmd%
1..rom the command line# stop the session.
=. .rom the command line# start recovery.2ow can u reco!er the session in se3uential
batches?If you configure a session in a se0uential batch to stop on failure# you can run recovery
starting with the failed session. +he Informatica 'erver completes the session and then runs the rest of
the batch. Cse the "erform Recovery session property
+o recover sessions in se0uential batches configured to stop on failure%
1.In the 'erver 1anager# open the session property sheet.
=.7n the 8og .iles tab# select "erform Recovery# and click 7J.
;.Run the session.
?.!fter the batch completes# open the session property sheet.
5.Hlear "erform Recovery# and click 7J.
If you do not clear "erform Recovery# the next time you run the session# the Informatica 'erver attempts
to recover the previous session.
If you do not configure a session in a se0uential batch to stop on failure# and the remaining sessions in
the batch complete# recover the failed session as a standalone session. 2ow to reco!er sessions
in concurrent batches?If multiple sessions in a concurrent batch fail# you might want to truncate all
targets and run the batch again. 6owever# if a session in a concurrent batch fails and the rest of the
sessions complete successfully# you can recover the session as a standalone session.
+o recover a session in a concurrent batch%
1.Hopy the failed session using 7perations9Hopy 'ession.
=.5rag the copied session outside the batch to be a standalone session.
;..ollow the steps to recover a standalone session.
?.5elete the standalone copy.2ow can u complete unrco!erable sessions?Cnder certain
circumstances# when a session does not complete# you need to truncate the target tables and run the
session from the beginning. Run the session from the beginning when the Informatica 'erver cannot run
recovery or when running recovery might result in inconsistent data.What r the circumstances that
infromatica ser!er results an unreci!erable session?+he source 0ualifier transformation does
not use sorted ports.
If u change the partition information after the initial session fails.
"erform recovery is disabled in the informatica server configuration.
If the sources or targets changes after initial session fails.
If the maping consists of se0uence generator or normaliAer transformation.
If a concuurent batche contains multiple failed sessions.If i done any modifications for my table
in back end does it reflect in informatca warehouse or mapin desiner or source
analy;er?G7. Informatica is not at all concern with back end data base.It displays u all the information
that is to be stored in repository.If want to reflect back end changes to informatica screens#
again u have to import from back end to informatica by valid connection.!nd u have to replace the
existing files with imported files.'fter drain the ports of three sources8s3l
ser!er,oracle,informix. to a sinle source 3ualifier, can u map these three ports
directly to taret?G7.Cnless and until u join those three ports in source 0ualifier u cannot map them
directly
if u drag three hetrogenous sources and populated to target without any join means you are entertaining
Harteisn product. If you don4t use join means not only diffrent sources but homegeous sources are show
same error.
If you are not interested to use joins at source 0ualifier level u can add some joins sepratly.
What are Taret Types on the %er!er?+arget +ypes are .ile# Relational# U18 and 2R" What are
Taret ?ptions on the %er!ers?+arget 7ptions for .ile +arget type are .+" .ile# 8oader and 1L.
+here are no target options for 2R" target type
+arget 7ptions for Relational are Insert# Cpdate Eas CpdateF# Cpdate Eas InsertF# Cpdate Eelse InsertF#
5elete# and +runcate +able
2ow do you identify existin rows of data in the taret table usin lookup transformation?
Han identify existing rows of data using unconnected lookup transformation.
ou can use a Honnected 8ookup with dynamic cache on the target
What are 'reate transformation?
!ggregator transform is much like the $roup by clause in traditional 'L8.
this particular transform is a connected@active transform which can take the incoming data form
the mapping pipeline and group them based on the group by ports specified and can calculated
aggregate funtions like E avg# sum# count# stddev....e.tcF for each of those groups.
.rom a performanace perspective if your mapping has an !$$R2$!+7R transform use filters and
sorters very early in the pipeline if there is any need for them.
What are !arious types of 'reation?
Rarious types of aggregation are 'C1# !R$# H7CG+# 1!U# 1IG# .IR'+# 8!'+# 125I!G#
"2RH2G+I82# '+552R# and R!RI!GH2.
What is Code *ae Compatibility?Hompatibility between code pages is used for accurate data
movement when the Informatica 'ever runs in the Cnicode data movement mode. If the code pages are
identical# then there will not be any data loss. 7ne code page can be a subset or superset of another. .or
accurate data movement# the target code page must be a superset of the source code page.
'uperset 9 ! code page is a superset of another code page when it contains the character encoded in the
other code page# it also contains additional characters not contained in the other code page.
'ubset 9 ! code page is a subset of another code page when all characters in the code page are encoded
in the other code page.
What is Code *ae used for?
Hode "age is used to identify characters that might be in different languages. If you are importing
<apanese data into mapping# u must select the <apanese code page of source data.
what is a source 3ualifier?
It is a transformation which represents the data Informatica server reads from source.
+he 'ource Lualifier represents the rows that the Informatica 'erver reads when it executes a session. It
represents all data 0ueried from the source.
What are (imensions and !arious types of (imensions?
set of level properties that describe a specific aspect of a business# used for analyAing the factual
measures of one or more cubes# which use that dimension. 2gs. $eography# time# customer and
product.
What is (ata Transformation $anaer?!fter the load manager performs validations for the
session# it creates the 5+1 process. +he 5+1 process is the second process associated with the session
run. +he primary purpose of the 5+1 process is to create and manage threads that carry out the session
tasks.
W +he 5+1 allocates process memory for the session and divide it into buffers. +his is
also known as buffer memory. It creates the main thread# which is called the master
thread. +he master thread creates and manages all other threads.
W If we partition a session# the 5+1 creates a set of threads for each partition to allow
concurrent processing.. -hen Informatica server writes messages to the session log it
includes thread type and thread I5. .ollowing are the types of threads that 5+1 creates%
1aster thread 9 1ain thread of the 5+1 process. Hreates and manages all other
threads.1apping thread 9 7ne +hread to 2ach 'ession. .etches 'ession and 1apping
Information."re and "ost 'ession +hread97ne +hread each to "erform "re and "ost 'ession
7perations.reader thread97ne +hread for 2ach "artition for 2ach 'ource "ipeline.-RI+2R
+6R2!597ne +hread for 2ach "artition if target exist in the source pipeline write to the
target.tR!G'.7R1!+I7G +6R2!5 9 7ne or 1ore +ransformation +hread .or 2ach "artition.
What is %ession and 7atches?'ession 9 ! 'ession Is ! set of instructions that tells the Informatica
'erver 6ow !nd -hen +o 1ove 5ata .rom 'ources +o +argets. !fter creating the session# we can use
either the server manager or the command line program pmcmd to start or stop the session.:atches 9 It
"rovides ! -ay to $roup 'essions .or 2ither 'erial 7r "arallel 2xecution :y +he Informatica 'erver.
+here !re +wo +ypes 7f :atches %
'e0uential 9 Run 'ession 7ne after the 7ther.concurrent 9 Run 'ession !t +he 'ame +ime.
Why we use lookup transformations?8ookup +ransformations can access data from relational
tables that are not sources in mapping. -ith 8ookup transformation# we can accomplish the following
tasks%
$et a related value9$et the 2mployee Game from 2mployee table based on the 2mployee
I5"erform Halculation.
Cpdate slowly changing dimension tables 9 -e can use unconnected lookup transformation to
determine whether the records already exist in the target or not.

1T" #uestions and 'nswers
what is the metadata extension?

Informatica allows end users and partners to extend the metadata stored in the repository by associating
information with individual objects in the repository. .or example# when you create a mapping# you can
store your contact information with the mapping. ou associate information with repository metadata
using metadata extensions.
Informatica Hlient applications can contain the following types of metadata extensions%
Cendor-defined. +hird9party application vendors create vendor9defined metadata extensions.
ou can view and change the values of vendor9defined metadata extensions# but you cannot
create# delete# or redefine them.
Aser-defined. ou create user9defined metadata extensions using "owerHenter@"ower1art.
ou can create# edit# delete# and view user9defined metadata extensions. ou can also change
the values of user9defined extensions.
what is ?(% 8operation data source.
'B%-, 75' 9 7perational 5ata 'tore.
75' Homes between staging area I 5ata -arehouse. +he data is 75' will be at the low level of
granularity.
7nce data was poopulated in 75' aggregated data will be loaded into into 25- through 75'.
'B%/, !n updatable set of integrated operational data used for enterprise9 wide tactical decision
making.Hontains live data# not snapshots#and has minimal history retained
can we lookup a table from source 3ualifier transformation. ie. unconnected lookup
ou cannot lookup from a source 0ualifier directly. 6owever# you can override the 'L8 in the source
0ualifier to join with the lookup table to perform the lookup.
What are the different "ookup methods used in Informatica?
In the lookup transormation mainly = types
1Fconnected =Funconnected lookup
Honnected lookup% 1FIt recive the value directly from pipeline
=Fit iwill use both dynamic and static
;Fit return multiple value
?Fit support userdefined value
Cnconnected lookup%it recives the value %lkp expression
=Fit will be use only dynamic
;Fit return only single value
?Fit does not support user defined values
What are parameter files ? Where do we use them?
"arameter file is any text file where u can define a value for the parameter defined in the informatica
session# this parameter file can be referenced in the session properties#-hen the informatica sessions
runs the values for the parameter is fetched from the specified file. .or eg % &&!:H is defined in the
infomatica mapping and the value for this variable is defined in the file called abc.txt as
,foldername(session(name/
!:H)4hello worldQ

In the session properties u can give in the parameter file name field abc.txt
What is a mappin, session, worklet, workflow, mapplet?
1apping 9 represents the flow and transformation of data from source to taraget.
1applet 9 a group of transformations that can be called within a mapping.
'ession 9 a task associated with a mapping to define the connections and other configurations for that
mapping.
-orkflow 9 controls the execution of tasks such as commands# emails and sessions.
-orklet 9 a workflow that can be called within a workflow.
%ession 9 a task associated with a mapping to define the connections and other configurations for that
mapping. Workflow 9 controls the execution of tasks such as commands# emails and sessions. Worklet 9 a workflow
that can be called within a workflow. $appin 9 represents the flow and transformation of data from source to
taraget.
$applet 9 a group of transformations that can be called within a mapping.

What is the difference between *ower Center I *ower $art?
"ower 1art is designed for%

8ow range of warehouses
only for local repositories
mainly desktop environment.

"ower mart is designed for%

6igh9end warehouses
$lobal as well as local repositories
2R" support.
Can Informatica load heteroeneous tarets from heteroeneous sources?
yesX it loads from heterogeneous sources..
What are the !arious tools? - Bame a few
+he various 2+8 tools are as follows.

Informatica
5atastage
:usiness 7bjects 5ata Integrator
!binitio#

78!p tools are as follows.

Hognos
:usiness 7bjects
What are snapshots? What are materiali;ed !iews I where do we use them? What is
a materiali;ed !iew lo?
1aterialiAed view is a view in wich data is also stored in some temp table.i.e if we will go with the Riew
concept in 5: in that we only store 0uery and once we call Riew it extract data from 5:.:ut In
materialiAed Riew data is stored in some temp tables.
What is partitionin? What are the types of partitionin?
"artitioning is a part of physical data warehouse design that is carried out to improve performance and
simplify stored9data management. "artitioning is done to break up a large table into smaller#
independently9manageable components because it%
1. reduces work involved with addition of new data.
=. reduces work involved with purging of old data.

+wo types of partitioning are%
1. 6oriAontal partitioning.
=. Rertical partitioning Ereduces efficiency in the context of a data warehouseF.
What is <ull load I Incremental or )efresh load?
.ull 8oad is the entire data dump load taking place the very first time.
$radually to synchroniAe the target data with source data# there are further = techni0ues%9
Refresh load 9 -here the existing data is truncated and reloaded completely.
Incremental 9 -here delta or difference between target and source data is dumped at regular intervals.
+imestamp for previous delta load has to be maintained.

What are the modules in *ower $art?

1. "ower 1art 5esigner
=. 'erver
;. 'erver 1anager
?. Repository
5. Repository 1anager
What is a stain area? (o we need it? What is the purpose of a stain area?
'taging area is place where you hold temporary tables on data warehouse server. 'taging tables are
connected to work area or fact tables. -e basically need staging area to hold the data # and perform data
cleansing and merging # before loading the data into warehouse
! staging area is like a large table with data separated from their sources to be loaded into a data
warehouse in the re0uired format. If we attempt to load data directly from 78+"# it might mess up the
78+" because of format changes between a warehouse and 78+". Jeeping the 78+" data intact is very
important for both the 78+" and the warehouse.
'taging area is a temp schema used to
1. 5o .lat mapping i.e dumping all the 78+" data in to it without applying any business rules pushing
data into staging will take less time because there is no business rules or transformation applied on it.

=. Csed for data cleansing and validation using .irst 8ogic.
2ow to determine what records to extract?
5ata modeler will provide the 2+8 developer# the tables that are to be extracted from various sources.
-hen addressing a table some dimension key must reflect the need for a record to get extracted. 1ostly
it will be from time dimension Ee.g. date D) 1st of current mthF or a transaction flag Ee.g. 7rder Invoiced
'tatF. .oolproof would be adding an archive flag to record which gets reset when record changes
What are the !arious transformation a!ailable?

!ggregator +ransformation
2xpression +ransformation
.ilter +ransformation
<oiner +ransformation
8ookup +ransformation
GormaliAer +ransformation
Rank +ransformation
Router +ransformation
'e0uence $enerator +ransformation
'tored "rocedure +ransformation
'orter +ransformation
Cpdate 'trategy +ransformation
U18 'ource Lualifier +ransformation
!dvanced 2xternal "rocedure +ransformation
2xternal +ransformation

What is a three tier data warehouse?

+hree tier data warehouse contains three tier such as bottom tier# middle tier and top tier.
:ottom tier deals with retrieving related dataBs or information from various information repositories by
using 'L8.
1iddle tier contains two types of servers.
1. R78!" server
=. 178!" server
+op tier deals with presentation or visualiAation of the results . +he ; tiers are%
1. 5ata tier 9 bottom tier 9 consists of the database
=. !pplication tier 9 middle tier 9 consists of the analytical server
;. "resentation tier 9 tier that interacts with the end9user

(o we need an 1T" tool? When do we o for the tools in the market?

2+8 +ools are meant to extract# transform and load the data into 5ata -arehouse for decision making.
:efore the evolution of 2+8 +ools# the above mentioned 2+8 process was done manually by using 'L8
code created by programmers. +his task was tedious and cumbersome in many cases since it involved
many resources# complex coding and more work hours. 7n top of it# maintaining the code placed a great
challenge among the programmers.

+hese difficulties are eliminated by 2+8 +ools since they are very powerful and they offer many
advantages in all stages of 2+8 process starting from extraction# data cleansing# data profiling#
transformation# debugging and loading into data warehouse when compared to the old method.
1. Normally #!' !ool stands for *+traction Transformation ,oader

-. !his helps you to e$tract the data from different <)S@)atabase,

.. :f you have a re5uirement li&e this you need to get the #!' tools, else you no need any
#!'


2ow can we use mappin !ariables in Informatica? Where do we use them?


!fter creating a variable# we can use it in any expression in a mapping or a mapplet. !ls they can be
used in source 0ualifier filter# user defined joins or extract overrides and in expression editor of reusable
transformations.
+heir values can change automatically between sessions.

What are the !arious methods of ettin incremental records or delta records from the source
systems

getting incremental records from source systems to target can be done
by using incremental aggregation transformation
Techni3ues of 1rror 2andlin - Inore , )ejectin bad records to a flat file , loadin
the records and re!iewin them 8default !alues.
Rejection of records either at the database due to constraint key violation or the informatica server when
writing data into target table +hese rejected records we can find in the bad file folder where a reject file
will be created for a session. we can check why a record has been rejected and this bad file contains first
column a row indicator and second column a column indicator.
+hese row indicators or of four types
59valid data#
79overflowed data#
G9null data#
+9 +runcated data#
!nd depending on these indicators we can changes to load data successfully to target.
Can we use procedural loic inside Inforrmatica If yes how if now how can we use
external procedural loic in Inforrmatica?
-e can use 2xternal "rocedure +ransformation to use external procedures. :oth H71 and Inforrmatica
"rocedures are supported using 2xternal procedure +ransformation
Can we o!erride a nati!e s3l 3uery within Informatica? Where do we do it? 2ow do
we do it?
we can override a s0l 0uery in the s0l override property of a source 0ualifier
What is latest !ersion of *ower Center : *ower $art?
"ower Henter O.1
2ow do we call shell scripts from Inforrmatica?

ou can use a Hommand task to call the shell scripts# in the following ways%
1. 'tandalone Hommand task. ou can use a Hommand task anywhere in the workflow or worklet to run
shell commands.
=. "re9 and post9session shell command. ou can call a Hommand task as the pre9 or post9session shell
command for a 'ession task. .or more information about specifying pre9session and post9session shell
commands

What is Informatica $etadata and where is it stored?

Informatica 1etadata contains all the information about the source tables# target tables# the
transformations# so that it will be useful and easy to perform transformations during the 2+8 process.

+he Informatica 1etadata is stored in Informatica repository
What are acti!e transformation : *assi!e transformations?
!n active transformation can change the number of rows as output after a transformation# while a passive
transformation does not change the number of rows and passes through the same number of rows that
was given to it as input.
+ransformations can be active or passive. !n active transformation can change the number of rows that
pass through it# such as a .ilter transformation that removes rows that do not meet the filter condition. !
passive transformation does not change the number of rows that pass through it# such as an 2xpression
transformation that performs a calculation on data and passes all rows through the transformation
Acti-e transformations
Bdvanced #$ternal Procedure
Bggregator
Bpplication Source 7ualifier
"ilter
;oiner
NormaliEer
Ran&
Router
Update Strategy
Passi-e transformation
#$pression
#$ternal Procedure
(aplet- :nput
'oo&up
Se5uence generator
F(' Source 7ualifier
(aplet - <utput

When do we 'naly;e the tables? 2ow do we do it?

-hen the data in the data warehouse changes fre0uently we need to analyAe the tables. !nalyAe tables
will compute@update the table statistics# that will help to boost the performance of your 'L8.

Compare 1T" I $anual de!elopment?

+here are pros and cons of both tool based 2+8 and hand9coded 2+8. +ool based 2+8 provides
maintainability# ease of development and graphical view of the flow. It also reduces the learning curve on
the team.
6andcoded 2+8 is good when there is minimal transformational logic involved. It is also good when the
sources and targets are in the same environment. 6owever# depending on the skill level of the team# this
can extend the overall development time.
1rimary 2ey !ateriali,ed 3iewsThe following statement creates the primary-key
materiali,ed view on the ta'le emp located on a remote data'ase.S=L> >REA?E
(A?ERIALI@ED AIE6 5B$pBp3 REFRESC FAS? S?AR? 6I?C SYSDA?E
NED? SYSDA?E E 1<49 6I?C 'RI(ARY FEY AS SELE>? G FRO(
$pHr$)*$B0IJ (a*$r"a#"K$0 5"$2 /r$a*$0-4ote5 When you create a materiali,ed view
using the 607T option you will need to create a view log on the master ta'les)s+ as shown
'elow5S=L> >REA?E (A?ERIALI@ED AIE6 LOL ON $pJ(a*$r"a#"K$0 5"$2 #):
/r$a*$0-8owid !ateriali,ed 3iewsThe following statement creates the row id materiali,ed
view on ta'le emp located on a remote data'ase5S=L> >REA?E (A?ERIALI@ED AIE6
5B$pBr)2"0 REFRESC 6I?C RO6ID AS SELE>? G FRO(
$pHr$)*$B0IJ (a*$r"a#"K$0 5"$2 #): /r$a*$0-7u' *uery !ateriali,ed 3iewsThe
following statement creates a su' *uery materiali,ed view 'ased on the emp and dept
ta'les located on the remote data'ase5S=L> >REA?E (A?ERIALI@ED AIE6 5B$p0$p*AS
SELE>? G FRO( $pHr$)*$B0I $6CERE EDIS?S (SELE>? G FRO( 0$p*Hr$)*$B0I
0 6CERE $-0$p*BM) N 0-0$p*BM))REFRESH CLAUSEOr$!r$1P O!a1*Q
/)p#$*$Q!)r/$R O)M 0$aM0 Q /)"*R O1*ar* 2"*P 0a*$R OM$.*
0a*$R O2"*P Spr"ar, 3$,Qr)2"0TRRThe refresh option specifies5
a. The refresh method used 'y 9racle to refresh data in materiali,ed view
'. Whether the view is primary key 'ased or row-id 'ased
c. The time and interval at which the view is to 'e refreshed
Refresh Method - 607T :lauseThe 607T refreshes use the materiali,ed view logs )as seen
a'ove+ to send the rows that have changed from master ta'les to the materiali,ed view.;ou
should create a materiali,ed view log for the master ta'les if you specify the 8/68/7< 607T
clause. S=L> >REA?E (A?ERIALI@ED AIE6 LOL ON $pJ (a*$r"a#"K$0 5"$2 #):
/r$a*$0-!ateriali,ed views are not eligi'le for fast refresh if the defined su'*uery contains
an analytic function.Refresh Method - :9!1"/T/ :lauseThe complete refresh re-creates the
entire materiali,ed view. If you re*uest a complete refresh, 9racle performs a complete
refresh even if a fast refresh is possi'le.Refresh Method - 698:/ :lauseWhen you specify a
698:/ clause, 9racle will perform a fast refresh if one is possi'le or a complete refresh
otherwise. If you do not specify a refresh method )607T, :9!1"/T/, or 698:/+, 698:/ is
the default.PRIMARY KEY and ROWID ClauseWIT< 18I!08; 2/; is used to create a primary
key materiali,ed view i.e. the materiali,ed view is 'ased on the primary key of the master
ta'le instead of 89WI& )for 89WI& clause+. 18I!08; 2/; is the default option. To use the
18I!08; 2/; clause you should have defined 18I!08; 2/; on the master ta'le or else you
should use 89WI& 'ased materiali,ed views.1rimary key materiali,ed views allow
materiali,ed view master ta'les to 'e reorgani,ed without affecting the eligi'ility of the
materiali,ed view for fast refresh. 8owid materiali,ed views should have a single master
ta'le and cannot contain any of the following5
&istinct or aggregate functions
=89U1 %; 7u'*ueries , >oins ? 7et operations
Timing the refreshThe 7T08T WIT< clause tells the data'ase when to perform the
first replication from the master ta'le to the local 'ase ta'le. It should evaluate to a future
point in time. The 4/T clause specifies the interval 'etween refreshesS=L> >REA?E
(A?ERIALI@ED AIE6 5B$pBp3 REFRESC FAS? S?AR? 6I?C SYSDA?E
NED? SYSDA?E E 2 6I?C 'RI(ARY FEY AS SELE>? G FRO(
$pHr$)*$B0IJ (a*$r"a#"K$0 5"$2 /r$a*$0-In the a'ove e-ample, the first copy of the
materiali,ed view is made at 7;7&0T/ and the interval at which the refresh has to 'e
performed is every two days.

Informatica Training in Bangalore, Marathahalli
+op of .orm
:ottom of .orm
Informatica Inter-iew Questions . Part %/
What are acti!e and passi!e transformations?
+ransformations can be active or passive. !n active transformation can change the number of
rows that pass through it# such as a .ilter transformation that removes rows that do not meet the
filter condition.
! passive transformation does not change the number of rows that pass through it# such as an
2xpression transformation that performs a calculation on data and passes all rows through the
transformation.
What is tracin le!el and what are the types of tracin le!els?
+racing level represents the amount of information that informatcia server writes in a log file.
Types of tracin le!el,
Gormal
Rerbose
Rerbose init
Rerbose data
2ow can you say that union Transormation is 'cti!e transformation?
:y 5efinition# !ctive transformation is the transformation that changes the number of rows that
pass through it. In union transformation the number of rows resulting from union can be different
from the actual number of rows.
Is a fact table normali;ed or de-normali;ed?
! fact table is always 52G7R1!8I'25 table. It consists of data from dimension table E"rimary
Jey4sF and .act table has foreign keys and measures.
0 comments
Email This BlogThis! Share to Twitter Share to Facebook Share to Google B!!
Informatica Inter-iew Questions . Part %0
What are the different threads in (T$ process?
$aster thread, Hreates and manages all other threads
$appin thread, 7ne mapping thread will be creates for each session..ectchs session and
mapping information.
*re and post session threads, +his will be created to perform pre and post session
operations.
)eader thread, 7ne thread will be created for each partition of a source. It reads data from
source.
Writer thread, It will be created to load data to the target.
Transformation thread, It will be created to transform data.
If we are usin Apdate %tratey Transformation in a mappin how can we know whether
insert or update or reject or delete option has been selected durin runnin of sessions
in Informatica?
In 5esigner while creating Cpdate 'trategy +ransformation uncheck Qforward to next
transformationQ. If any rejected rows are there automatically it will be updated to the session log
file.
Cpdate or insert files are known by checking the target file or table only.
2ow to join two tables without usin the &oiner Transformation?
ItBs possible to join the two or more tables by using source 0ualifier. :ut provided the tables
should have relationship.
-hen you drag and drop the tables you will be getting the source 0ualifier for each table. 5elete
all the source 0ualifiers. !dd a common source 0ualifier for all. Right click on the source 0ualifier
you will find 25I+# click on it. Hlick on the properties tab and then you will find s0l 0uery in that
you can write your s0l.
Which is better amon incremental load, Bormal "oad and 7ulk load?
It depends on the re0uirement. 7therwise Incremental load can be better as it takes only that
data which is not available previously on the target.
What is the difference between summary filter and detail filter?
'ummary filter can be applied on a group of rows that contain a common value. -hereas detail
filters can be applied on each and every red of the data base.
What are the tasks that "oad maner process will do?
$anaes the session and batch schedulin, -hen you start the informatica server the load
manager launches and 0ueries the repository for a list of sessions configured to run on the
informatica server. -hen you configure the session the load manager maintains list of list of
sessions and session start times. -hen you start a session load manger fetches the session
information from the repository to perform the validations and verifications prior to starting 5+1
process.
"ockin and readin the session, -hen the informatica server starts a session load manager
locks the session from the repository. 8ocking prevents starting the session again and again.
)eadin the parameter file, If the session uses a parameter files#loadmanager reads the
parameter file and verifies that the session level parameters are declared in the file
Cerifies permission and pri!ilees, -hen the session starts load manger checks whether or
not the user have privileges to run the session.
Creatin lo files, 8oad manger creates log file contains the status of session.
0 comments
Email This BlogThis! Share to Twitter Share to Facebook Share to Google B!!
Informatica Inter-iew Questions . Part %)
What is )outer transformation?
Router transformation allows you to use a condition to test data. It is similar to filter
transformation. It allows the testing to be done on one or more conditions.
What type of metadata is stored in repository?
%ource definitions, 5efinitions of database objects Etables# views# synonymsF or files that
provide source data.
Taret definitions, 5efinitions of database objects or files that contain the target data.
$ulti-dimensional metadata, +arget definitions that are configured as cubes and dimensions.
$appins, ! set of source and target definitions along with transformations containing business
logic that you build into the transformation. +hese are the instructions that the Informatica
'erver uses to transform and move data.
)eusable transformations, +ransformations that you can use in multiple mappings.
$applets, ! set of transformations that you can use in multiple mappings.
%essions and workflows, 'essions and workflows store information about how and when the
Informatica 'erver moves data. ! workflow is a set of instructions that describes how and when
to run tasks related to extracting# transforming# and loading data. ! session is a type of task that
you can put in a workflow. 2ach session corresponds to a single mapping.
2ow to delete duplicate rows in flat files source?
Cse a sorter transformation# in this you will have a QdistinctQ option make use of it.
Can you use areator:acti!e transformation after update stratey transformation?
ou can use aggregator after update strategy. +he problem will be# once you perform the
update strategy# say you had flagged some rows to be deleted and you had performed
aggregator transformation for all rows# say you are using 'C1 function# then the deleted rows
will be subtracted from this aggregator transformation.
What is the difference between dimension table and fact table and what are different
dimension tables and fact tables?
.act table contain measurable data# contains primary key
(ifferent types of fact tables,
1. !dditive
=. Gon additive
;. 'emi additive
5imensions table contain textual description of data.
It contains primary key.
0 comments
Email This BlogThis! Share to Twitter Share to Facebook Share to Google B!!
Informatica Inter-iew Questions . Part %&
What is meant by lookup cache?
+he informatica server builds a cache in memory when it processes the first row at a data in a
cached look up transformation. It allocates memory for the cache based on the amount you
configure in the transformation or session properties. +he informatica server stores condition
values in the index cache and output values in the data cache.
Can you use the mappin parameters or !ariables created in one mappin into any other
reusable transformation?
es. :ecause reusable transformation is not contained with any maplet or mapping.
What are reusable transformations?
ou can design using two methods%
-. using transformation developer
/. Hreate normal one and promote it to reusable
What is Code *ae used for?
Hode "age is used to identify characters that might be in different languages. If you are
importing <apanese data into mapping# you must select the <apanese code page of source
data.
Can you use a session 7ulk loadin options and durin this time can you make a
reco!ery to the session?
If the session is configured to use in bulk mode it will not write recovery information to recovery
tables. 'o :ulk loading will not perform the recovery as re0uired.
What are the differences between connected and unconnected lookup?
Connected lookup,
-. Receives input values directly from the pipe line.
/. you can use a dynamic or static cache.
4. Hache includes all lookup columns used in the mapping.
R. 'upport user defined default values.
Anconnected lookup,
-. Receives input values from the result of a lkp expression in a another transformation.
/. ou can use a static cache.
4. Hache includes all lookup output ports in the lookup condition and the lookup@return port.
R. 5oes not support user defined default values.
0 comments
Email This BlogThis! Share to Twitter Share to Facebook Share to Google B!!
Informatica Inter-iew Questions . Part %%
What are the schedulin options to run a session?
! session can be scheduled to run at a given time or intervel# or you can manually run the
session.
(ifferent options of schedulin,
)un only on demand, server runs the session only when user starts session explicitly.
)un once, Informatica server runs the session only once at a specified date and time.
)un e!ery, Informatica server runs the session at regular intervals as u configured.
Customi;ed repeat, Informatica server runs the session at the dates and times specified in the
repeat dialog box.
What is parameter file?
"arameter file is to define the values for parameters and variables used in a session. !
parameter file is a file created by text editor such as word pad or notepad.
Lou can define the followin !alues in parameter file,
1apping parameters
mapping variables
session parameters.
What are the session parameters?
'ession parameters are like mapping parameters# that represent values you might want to
change between sessions such as database connections or source files.
'erver manager also allows you to create user defined session parameters. .ollowing are user
defined session parameters%
5atabase connections
'ource file names% Cse this parameter when you want to change the name or location of
session source file between session runs.
+arget file name% Cse this parameter when you want to change the name or location of session
target file between session runs.
Reject file name% Cse this parameter when you want to change the name or location of session
reject files between session runs.
In a se3uential batch can you run the session if pre!ious session fails?
es. :y setting the option always runs the session.
2ow can you transform row to a column?
1. -e can use normaliAer transformation
or
=.Cse pivot function in oracle
What are the basic needs to join two sources in a source 3ualifier?
:asic need to join two sources using source 0ualifier%
-. :oth sources should be in same database
/. +he should have at least one column in common with same data types
0 comments
Email This BlogThis! Share to Twitter Share to Facebook Share to Google B!!
Informatica Inter-iew Questions . Part %1
What are two types of processes that informatica runs the session?
"oad manaer *rocess, 'tarts the session# creates the 5+1 process# and sends post9session
email when the session completes.
The (T$ process, Hreates threads to initialiAe the session# read# write# and transform data#
and handle pre9 and post9session operations.
What are mappin parameters and !ariables in which situation we can use it ?
If we need to change certain attributes of a mapping after every time the session is run# it will be
very difficult to edit the mapping and then change the attribute. 'o we use mapping parameters
and variables and define the values in a parameter file. +hen we could edit the parameter file to
change the attribute values. +his makes the process simple.
1apping parameter values remain constant. If we need to change the parameter value then we
needs to edit the parameter file.
:ut value of mapping variables can be changed by using variable function. If we need to
increment the attribute value by 1 after every session run then we can use mapping variables.
In a mapping parameter we need to manually edit the attribute value in the parameter file after
every session run.
What is the method of loadin > flat files of ha!in same structure to a sinle taret and
which transformations I can use?
Two $ethods.
-. -rite all files in one directory then use file repository concept EdonBt forget to type source file
type as indirect in the sessionF.
/. Cse union transformation to combine multiple input files into a single target.
In which circumstances that informatica ser!er creates )eject files?
-hen it encounters the 55(Reject in update strategy transformation.
Riolates database constraint
.ield in the rows was truncated or overflown.
What is the default join that source 3ualifier pro!ides?
Inner e0ui join.
What is the difference between %tored *rocedure 8(7 le!el. and %tored proc trans
8IB<?)$'TIC' le!el. ? Why should we use %* trans ?
.irst of all stored procedures Eat 5: levelF are series of 'L8 statement. !nd those are stored
and compiled at the server side. In the Informatica it is a transformation that uses same stored
procedures which are stored in the database. 'tored procedures are used to automate time9
consuming tasks that are too complicated for standard 'L8 statements. if you don4t want to use
the stored procedure then you have to create expression transformation and do all the coding in
it.
0 comments
Email This BlogThis! Share to Twitter Share to Facebook Share to Google B!!
Informatica Inter-iew Questions . Part 2
What are !ariable ports and list two situations when they can be used?
-e have mainly tree ports Import# 7utput# Rariable port. Import represents data is flowing into
transformation. 7ut port is used when data is mapped to next transformation. Rariable port is
used when we mathematical calculations are re0uired.
This is a scenario in which the source has / columns
10 !
10 !
=0 H
;0 5
?0 2
=0 H
and there should be = targets one to show the duplicate values and another target for distinct
rows.
+1 +=
10 ! 10 !
=0 H =0 H
;0 5
which transformation can be used to load data into taret?
?0 2
'tep1% sort the source data based on the uni0ue key.
1xpression,
.lag) iifEcol1 )prev(col1#44#4G4F
prev(col1 ) col1
)outer,
1.for duplicate record% condition% falg ) 44
=. .or distinct Records condition
flag ) 4G4
What r the types of lookup caches?
1F 'tatic Hache
=F 5ynamic Hache
;F "ersistent Hache
?F Reusable Hache
5F 'hared Hache
What are the real times problems that enerally come up while doin:runnin
mappin:any transformation? 1xplain with an example?
6ere are few real time examples of problems while running informatica mappings%
-. Informatica uses 7:5H connections to connect to the databases.+he database passwords
EproductionF is changed in a periodic manner and the same is not updated at the Informatica
side. our mappings will fail in this case and you will get database connectivity error.
/. If you are using Cpdate strategy transformation in the mapping# in the session properties
you have to select +reat 'ource Rows% 5ata 5riven. If we do not select this Informatica
server will ignore updates and it only inserts rows.
4. If we have mappings loading multiple target tables we have to provide the +arget 8oad "lan
in the se0uence we want them to get loaded.
R. 2rror% 'napshot too old is a very common error when using 7racle tables. -e get this error
while using too large tables. Ideally we should schedule these loads when server is not very
busy Emeaning when no other loads are runningF.
>. -e might get some poor performance issues while reading from large tables. !ll the source
tables should be indexed and updated regularly.
Informatica Inter-iew Questions . Part 3
Is sorter an acti!e or passi!e transformation? What happens if we uncheck the distinct
option in sorter? Will it be under acti!e or passi!e transformation?
'orter is an active transformation. if you don4t check the distinct option it is considered as a
passive transformation. :ecause this distinct option eliminates the duplicate records from the
table.
2ow can we partition a session in Informatica?
"artitioning option optimiAes parallel processing on multiprocessor hardware by providing a
thread9based architecture and built9in data partitioning. $CI9based tools reduce the
development effort necessary to create data partitions and streamline ongoing troubleshooting
and performance tuning tasks# while ensuring data integrity throughout the execution process.
!s the amount of data within an organiAation expands and real9time demand for information
grows# the "ower Henter "artitioning option enables hardware and applications to provide
outstanding performance and jointly scale to handle large volumes of data and users.
In update stratey taret table or flat file which i!es more performance? Why?
*ros, 8oading# 'orting# 1erging operations will be faster as there is no index concept and 5ata
will be in !'HII mode.
Cons, +here is no concept of updating existing records in flat file. !s there is no indexes# while
lookups speed will be lesser.
What is the difference between constraint base load orderin and taret load plan ?
Honstraint based load ordering
1xample,
+able 19991aster
+ake =9995etail
If the data in +able91 is dependent on the data in +able9= then +able9= should be loaded first. In
such cases to control the load order of the tables we need some conditional loading which is
nothing but constraint based load. In Informatica this feature is implemented by just one check
box at the session level.
What is parameter file?
-hen you start a workflow# you can optionally enter the directory and name of a parameter file.
+he Informatica 'erver runs the workflow using the parameters in the file you specify.
<or ABID shell users, enclose the parameter file name in sinle 3uotes,
9paramfile 4&"1Root5ir@myfile.txt4
<or Windows command prompt users, the parameter file name cannot ha!e beinnin or
trailin spaces. If the name includes spaces, enclose the file name in double 3uotes,
9paramfile 3&"1Root5irmy file.txt3
Bote, -hen you write a pmcmd command that includes a parameter file located on another
machine# use the backslash EF with the dollar sign E&F. +his ensures that the machine where the
variable is defined expands the server variable.
"mcmd startworkflow 9CR C'2RG!12 9"R "!''-7R5 9s '!82'% M=5P 9f east 9w w'ales!vg
9paramfile 4&"1Root5ir@myfile.txt4
Informatica inter-iew 4uestions . Part 5
(efine informatica repository?
Infromatica Repository% +he informatica repository is at the center of the informatica suite. ou
create a set of metadata tables within the repository database that the informatica application
and tools access. +he informatica client and server access the repository to save and retrieve
metadata.
What are the difference between joiner transformation and source 3ualifier
transformation?
<oiner +ransformation can be used to join tables from heterogeneous Edifferent sourcesF# but we
still need a common key from both tables. If we join two tables without a common key we will
end up in a Hartesian <oin. <oiner can be used to join tables from difference source systems
where as 'ource 0ualifier can be used to join tables in the same database. -e definitely need a
common key to join two tables no mater they are in same database or difference databases.
2ow can you impro!e session performance in areator transformation?
7ne way is supplying the sorted input to aggregator transformation. In situations where sorted
input cannot be supplied# we need to configure data cache and index cache at
session@transformation level to allocate more space to support aggregation.
What is the difference between connected and unconnected stored procedures?
Anconnected, +he unconnected 'tored "rocedure transformation is not connected directly to
the flow of the mapping. It either runs before or after the session# or is called by an expression
in another transformation in the mapping.
Connected, +he flow of data through a mapping in connected mode also passes through the
'tored "rocedure transformation. !ll data entering the transformation through the input ports
affects the stored procedure. ou should use a connected 'tored "rocedure transformation
when you need data from an input port sent as an input parameter to the stored procedure# or
the results of a stored procedure sent as an output parameter to another transformation.
Informatica inter-iew 4uestions . Part 6
1xplain error handlin in informatica with examples?
+here is one file called the bad file which generally has the format as Y.bad and it contains the
records rejected by informatica server. +here are two parameters one for the types of row and
other for the types of columns. +he row indicators signify what operation is going to take place
Ei.e. insertion# deletion# updating etc.F. +he column indicators contain information regarding why
the column has been rejected. E'uch as violation of not null constraint# value error# overflow
etc.F If one rectifies the error in the data present in the bad file and then reloads the data in the
target# then the table will contain only valid data.
What is power center repository?
%tandalone repository, ! repository that functions individually# unrelated and unconnected to
other repositories.
=lobal repository, E"ower Henter only.F +he centraliAed repository in a domain# a group of
connected repositories. 2ach domain can contain one global repository. +he global repository
can contain common objects to be shared throughout the domain through global shortcuts.
8ocal repository. E"ower Henter only.F ! repository within a domain that is not the global
repository. 2ach local repository in the domain can connect to the global repository and use
objects in its shared folders.
1xplain difference between static and dynamic cache with one example?
%tatic Cache, 7nce the data is cached# it will not change. 2xample unconnected lookup uses
static cache.
(ynamic Cache, +he cache is updated as to reflect the update in the table Eor sourceF for
which it is referring to. E2x. connected lookupF.
What is update stratey transformation?
+he model you choose constitutes your update strategy# how to handle changes to existing
rows. In "ower Henter and "ower 1art# you set your update strategy at two different levels%
-ithin a session. -hen you configure a session# you can instruct the Informatica 'erver to
either treat all rows in the same way Efor example# treat all rows as insertsF# or use instructions
coded into the session mapping to flag rows for different database operations.
-ithin a mapping. -ithin a mapping# you use the Cpdate 'trategy transformation to flag rows
for insert# delete# update# or reject.
1xplain Informatica ser!er 'rchitecture?
Informatica server# load manager@rs#data transfer manager#reader#temp server and writer are
the components of informatica server. .irst load manager sends a re0uest to the reader if the
reader is ready to read the data from source and dump into the temp server and data transfer
manager manages the load and it send the re0uest to writer as per first in first out process and
writer takes the data from temp server and loads it into the target.
What is (ata dri!en?
+he informatica server follows instructions coded into update strategy transformations with in
the session mapping determine how to flag records for insert# update# delete or reject. If you do
not choose data driven option setting# the informatica server ignores all update strategy
transformations in the mapping.
2ow the informatica ser!er sorts the strin !alues in )ank transformation?
-e can run informatica server either in CGIH752 data moment mode or !'HII data moment
mode.
Anicode mode, In this mode informatica server sorts the data as per the sorted order in
session.
'%CII $ode, In this mode informatica server sorts the date as per the binary order.
When do you use an unconnected lookup and connected lookup?
7r
what is the difference between dynamic and static lookup?
7r
Why and when do we use dynamic and static lookup?
In static lookup cache# you cache all the lookup data at the starting of the session. In dynamic
lookup cache# you go and 0uery the database to get the lookup value for each record which
needs the lookup. 'tatic lookup cache adds to the session run time# but it saves time as
informatica does not need to connect to your database every time it needs to lookup. 5epending
on how many rows in your mapping needs a lookup# you can decide on this. !lso remember
that static lookup eats up space. so remember to select only those columns which are needed.
2ow do we do unit testin in informatica? 2ow do we load data in informatica?
Cnit testing in informatica are of two types
1. Luantitative testing
=. Lualitative testing
%teps,
1. .irst validate the mapping
=.Hreate session on the mapping and then run workflow.
7nce the session is succeeded then right click on session and go for statistics tab.+here you
can see how many numbers of source rows are applied and how many number of rows loaded
in to targets and how many number of rows rejected. +his is called Luantitative testing.
If once rows are successfully loaded then we will go for 0ualitative testing.
%teps,
1.+ake the 5!+1 E5!+1 means where all business rules are mentioned to the corresponding
source columnsF and check whether the data is loaded according to the 5!+1 in to target table.
If any data is not loaded according to the 5!+1 then go and check in the code and rectify it.
+his is called Lualitative testing.+his is what a developer will do in Cnit +esting.
7at are te output files tat te informatica ser-er creates durin! te session
run
What are the output files that the informatica ser!er creates durin the session
run?
Informatica ser!er lo, Informatica serverEon CnixF creates a log for all status and
error messagesEdefault name% pm.server.logF. It also creates an error log for error
messages. +hese files will be created in informatica home directory.
%ession lo file, Informatica server creates session log file for each session. It writes
information about session into log files such as initialiAation process# creation of s0l
commands for reader and writer threads# errors encountered and load summary. +he
amount of detail in session log file depends on the tracing level that you set.
%ession detail file, +his file contains load statistics for each target in mapping. 'ession
detail include information such as table name# number of rows written or rejected you
can view this file by double clicking on the session in monitor window.
*erformance detail file, +his file contains information known as session performance
details which helps you where performance can be improved. +o generate this file
select the performance detail option in the session property sheet.
)eject file, +his file contains the rows of data that the writer does not write to targets.
Control file, Informatica server creates control file and a target file when you run a
session that uses the external loader. +he control file contains the information about the
target flat file such as data format and loading instructions for the external loader.
*ost session email, "ost session email allows you to automatically communicate
information about a session run to designated recipents.ou can create two different
messages. 7ne if the session completed successfully the other if the session fails.
Indicator file, If you use the flat file as a target# you can configure the informatica
server to create indicator file. .or each target row# the indicator file contains a number to
indicate
whether the row was marked for insert# update# delete or reject.
?utput file, If session writes to a target file# the informatica server creates the target file
based on file properties entered in the session property sheet.
Cache files, -hen the informatica server creates memory cache it also creates cache
files.
<or the followin circumstances informatica ser!er creates index and data cache
files,
!ggregator transformation
<oiner transformation
Rank transformation
8ookup transformation
2ow do you handle decimal places while importin a flat file into informatica?
-hile importing flat file definition just specify the scale for a numeric data type. In the mapping#
the flat file source supports only number data typeEno decimal and integerF. In the 'L
associated with that source will have a data type as decimal for that number port of the source.
%ource - Bumber data type port - %# - decimal datatype. Integer is not supported. 6ence
decimal is taken care.
What is the use of incremental areation? 1xplain in brief with an example?
ItBs a session option. -hen the informatica server performs incremental aggregation# it passes
new source data through the mapping and uses historical chache data to perform new
aggregation caluculations incrementaly. .or performance we will use it.
(ifferences between Bormali;er and Bormali;er transformation?
Bormali;er, It is a transormation mainly used for Hobol sources#it changes the rows into
columns and columns into rows
Bormali;ation, +o remove the redundancy and inconsistency
What is the taret load order?
ou specify the target load order based on source 0ualifiers in a maping.If you have the multiple
source 0ualifiers connected to the multiple targets# you can designate the order in which
informatica server loads data into the targets.
7at can you do to increase performance or e+plain Performance tunin! in
Informatica8
What can you do to increase performance or explain *erformance tunin in Informatica?
+he goal of performance tuning is to optimiAe session performance so sessions run during the
available load window for the Informatica 'erver.Increase the session performance by following%
+he performance of the Informatica 'erver is related to network connections. 5ata generally
moves across a network at less than 1 1: per second# whereas a local disk moves data five to
twenty times faster. +hus network connections often affect on session performance.'o aviod
netwrok connections.
.lat files% If your flat files stored on a machine other than the informatca server# move those files
to the machine that consists of informatica server.
Relational datasources% 1inimiAe the connections to sources# targets and informatica server to
improve session performance.1oving target database into server system may improve session
performance.
'taging areas% If you use staging areas you force informatica server to perform multiple
datapasses.Removing of staging areas may improve session performance.
ou can run the multiple informatica serversB againist the same repository.5istibuting the
session load to multiple informatica servers may improve session performance.
Run the informatica server in !'HII datamovement mode improves the session performance.
:ecause !'HII datamovement mode stores a character value in one byte.Cnicode mode takes
= bytes to store a character.
If a session joins multiple source tables in one 'ource Lualifier# optimiAing the 0uery may
improve performance. !lso# single table select statements with an 7R52R : or $R7C" :
clause may benefit from optimiAation such as adding indexes.
-e can improve the session performance by configuring the network packet siAe# which allows
data to cross the network at one time. +o do this go to server manger# choose server configure
database connections.
If your target consists key constraints and indexes you slow the loading of data. +o improve the
session performance in this case drop constraints and indexes before you run the session and
rebuild them after completion of session.
Running parallel sessions by using concurrent batches will also reduce the time of loading the
data. 'o concurent batches may also increase the session performance.
"artitioning the session improves the session performance by creating multiple connections to
sources and targets and loads data in paralel pipe lines.
In some cases if a session contains an aggregator transformation# you can use incremental
aggregation to improve session performance.
!viod transformation errors to improve the session performance.
If the session contained lookup transformation you can improve the session performance by
enabling the look up cache.
If your session contains filter transformation# create that filter transformation nearer to the
sources or you can use filter condition in source 0ualifier.
!ggreagator# Rank and joiner transformation may often decrease the session performance
.:ecause they must group data before processing it. +o improve session performance in this
case use sorted ports option.
What is snow flake scheme desin in database?
'now flake schema is one of the designs that are present in database design. 'now flake
schema serves the purpose of dimensional modeling in data warehousing. If the dimensional
table is split into many tables# where the schema is inclined slightly towards normaliAation# then
the snow flake design is utiliAed. It contains joins in depth. +he reason is that# the tables split
further.
1xplain the difference between star and snowflake schemas?
%tar schema, ! highly de9normaliAed techni0ue. ! star schema has one fact table and is
associated with numerous dimensions table and depicts a star.
%now flake schema, +he normaliAed principles applied star schema is known as 'now flake
schema. 2very dimension table is associated with sub dimension table.
(ifferences,
! dimension table will not have parent table in star schema# whereas snow flake
schemas have one or more parent tables.
+he dimensional table itself consists of hierarchies of dimensions in star schema# where
as hierarchies are split into different tables in snow flake schema. +he drilling down data
from top most hierarchies to the lowermost hierarchies can be done.
What is the difference between !iew and materiali;ed !iew?
! view is created by combining data from different tables. 6ence# a view does not have data of
itself.
7n the other hand# 1aterialiAed view usually used in data warehousing has data. +his data
helps in decision making# performing calculations etc. +he data stored by calculating it before
hand using 0ueries.
-hen a view is created# the data is not stored in the database. +he data is created when a
0uery is fired on the view. -hereas# data of a materialiAed view is stored.
What is junk dimension?
! single dimension is formed by lumping a number of small dimensions. +his dimension is
called a junk dimension. <unk dimension has unrelated attributes. +he process of grouping
random flags and text attributes in dimension by transmitting them to a distinguished sub
dimension is related to junk dimension.
What is deenerate dimension table?
! degenerate table does not have its own dimension table. It is derived from a fact table. +he
column EdimensionF which is a part of fact table but does not map to any dimension.
2.g. employee(id
What is conformed fact and conformed dimensions use for?
Honformed fact in a warehouse allows itself to have same name in separate tables. +hey can
be compared and combined mathematically. Honformed dimensions can be used across
multiple data marts. +hese conformed dimensions have a static structure. !ny dimension table
that is used by multiple fact tables can be conformed dimensions.
What is the difference between Informatica +.9 and G.9?
+he architecture of "ower Henter P has changed a lot%
1. "HP is service9oriented for modularity# scalability and flexibility.
=. +he Repository 'ervice and Integration 'ervice Eas replacement for Rep 'erver and
Informatica 'erverF can be run on different computers in a network Eso called nodesF# even
redundantly.
;. 1anagement is centraliAed# that means services can be started and stopped on nodes via a
central web interface.
?. Hlient +ools access the repository via that centraliAed machine# resources are distributed
dynamically.
5. Running all services on one machine is still possible# of course.
M. It has a support for unstructured data which includes spreadsheets# email# 1icrosoft -ord
files# presentations and ."5. documents. It provides high availability# seamless fail over#
eliminating single points of failure.
O. It has added performance improvements E+o bump up systems performance# Informatica has
added Qpush down optimiAationQ which moves data transformation processing to the native
relational database I@7 engine whenever it is most appropriate.F
P. Informatica has now added more tightly integrated data profiling# cleansing# and matching
capabilities.
S. Informatica has added a new web based administrative console.
10. !bility to write a Hustom +ransformation in HTT or <ava.
11. 1idstream 'L8 transformation has been added in P.1.1# not in P.1.
1=. 5ynamic configuration of caches and partitioning
1;. <ava transformation is introduced.
1?. Cser defined functions
15. "owerHenter P release has Q!ppend to +arget fileQ feature.
What is (ata warehousin?
! data warehouse can be considered as a storage area where interest specific or relevant data
is stored irrespective of the source. -hat actually is re0uired to create a data warehouse can be
considered as 5ata -arehousing. 5ata warehousing merges data from multiple sources into an
easy and complete form.
What are fact tables and dimension tables?
!s mentioned# data in a warehouse comes from the transactions. .act table in a data
warehouse consists of facts and@or measures. +he nature of data in a fact table is usually
numerical.
7n the other hand# dimension table in a data warehouse contains fields used to describe the
data in fact tables. ! dimension table can provide additional and descriptive information
EdimensionF of the field of a fact table.
e.g. If I want to know the number of resources used for a task# my fact table will store the actual
measure Eof resourcesF while my 5imension table will store the task and resource details.
6ence# the relation between a fact and dimension table is one to many.
What is 1T" process in data warehousin?
2+8 stands for 2xtraction# transformation and loading. +hat means extracting data from different
sources such as flat files# databases or U18 data# transforming this data depending on the
applicationBs need and loads this data into data warehouse.
1xplain the difference between data minin and data warehousin?
5ata mining is a method for comparing large amounts of data for the purpose of finding
patterns. 5ata mining is normally used for models and forecasting. 5ata mining is the process of
correlations# patterns by shifting through large data repositories using pattern recognition
techni0ues.
5ata warehousing is the central repository for the data of several business systems in an
enterprise. 5ata from various resources extracted and organiAed in the data warehouse
selectively for analysis and accessibility.
What is an ?"T* system and ?"'* system?
78+" stands for 7n8ine +ransaction "rocessing. !pplications that supports and manges
transactions which involve high volumes of data are supported by 78+" system. 78+" is based
on client9server architecture and supports transactions across networks.
78!" stands for 7n8ine !nalytical "rocessing. :usiness data analysis and complex
calculations on low volumes of data are performed by 78!". !n insight of data coming from
various resources can be gained by a user with the support of 78!".
What are cubes?
1ulti dimensional data is logically represented by Hubes in data warehousing. +he dimension
and the data are represented by the edge and the body of the cube respectively. 78!"
environments view the data in the form of hierarchical cube. ! cube typically includes the
aggregations that are needed for business intelligence 0ueries.
What is snow flake scheme desin in database?
'now flake schema is one of the designs that are present in database design. 'now
flake schema serves the purpose of dimensional modeling in data warehousing. If the
dimensional table is split into many tables# where the schema is inclined slightly towards
normaliAation# then the snow flake design is utiliAed. It contains joins in depth. +he
reason is that# the tables split further.
1xplain the difference between star and snowflake schemas?
%tar schema, ! highly de9normaliAed techni0ue. ! star schema has one fact table and
is associated with numerous dimensions table and depicts a star.
%now flake schema, +he normaliAed principles applied star schema is known as 'now
flake schema. 2very dimension table is associated with sub dimension table.
(ifferences,
! dimension table will not have parent table in star schema# whereas snow flake
schemas have one or more parent tables.
+he dimensional table itself consists of hierarchies of dimensions in star schema#
where as hierarchies are split into different tables in snow flake schema. +he
drilling down data from top most hierarchies to the lowermost hierarchies can be
done.
What is the difference between !iew and materiali;ed !iew?
! view is created by combining data from different tables. 6ence# a view does not have
data of itself.
7n the other hand# 1aterialiAed view usually used in data warehousing has data. +his
data helps in decision making# performing calculations etc. +he data stored by
calculating it before hand using 0ueries.
-hen a view is created# the data is not stored in the database. +he data is created
when a 0uery is fired on the view. -hereas# data of a materialiAed view is stored.
What is junk dimension?
! single dimension is formed by lumping a number of small dimensions. +his dimension
is called a junk dimension. <unk dimension has unrelated attributes. +he process of
grouping random flags and text attributes in dimension by transmitting them to a
distinguished sub dimension is related to junk dimension.
What is deenerate dimension table?
! degenerate table does not have its own dimension table. It is derived from a fact
table. +he column EdimensionF which is a part of fact table but does not map to any
dimension.
2.g. employee(id
What is conformed fact and conformed dimensions use for?
Honformed fact in a warehouse allows itself to have same name in separate tables.
+hey can be compared and combined mathematically. Honformed dimensions can be
used across multiple data marts. +hese conformed dimensions have a static structure.
!ny dimension table that is used by multiple fact tables can be conformed dimensions.
What is Cirtual (ata Warehousin?
! virtual data warehouse provides a compact view of the data inventory. It contains 1eta data. It
uses middleware to build connections to different data sources. +hey can be fast as they allow
users to filter the most important pieces of data from different legacy applications.
What is acti!e data warehousin?
!n !ctive data warehouse aims to capture data continuously and deliver real time data. +hey
provide a single integrated view of a customer across multiple business lines. It is associated
with :usiness Intelligence 'ystems
What is the difference between dependent and independent data warehouse?
! dependent data warehouse stored the data in a central data warehouse. 7n the other hand
independent data warehouse does not make use of a central data warehouse.
(ifference between data modelin and data minin?
(ata modelin aims to identify all entities that have data. It then defines a relationship between
these entities. 5ata models can be conceptual# logical or "hysical data models. Honceptual
models are typically used to explore high level business concepts in case of stakeholders.
8ogical models are used to explore domain concepts. -hile "hysical models are used to
explore database design.
(ata minin is used to examine or explore the data using 0ueries. +hese 0ueries can be fired
on the data warehouse. 5ata mining helps in reporting# planning strategies# finding meaningful
patterns etc. it can be used to convert a large amount of data into a sensible form.
What is the difference between 1) $odelin and (imensional $odelin?
2R modeling# that models an 2R diagram represents the entire businesses or applications
processes. +his diagram can be segregated into multiple 5imensional models. +his is to say# an
2R model will have both logical and physical model. +he 5imensional model will only have
physical model.
What is (ata $art?
5ata mart stores particular data that is gathered from different sources. "articular data may
belong to some specific community Egroup of peopleF or genre. 5ata marts can be used to focus
on specific business needs.
What are !arious methods of loadin (imension tables?
Con!entional load, 6ere the data is checked for any table constraints before loading.
(irect or <aster load, +he data is directly loaded without checking for any constraints.
What is the difference between ?"'* and data warehouse?
! data warehouse serves as a repository to store historical data that can be used for analysis.
78!" is 7nline !nalytical processing that can be used to analyAe and evaluate data in a
warehouse. +he warehouse has data coming from varied sources. 78!" tool helps to organiAe
data in the warehouse using multidimensional models.
(escribe the forein key columns in fact table and dimension table?
+he primary keys of entity tables are the foreign keys of dimension tables.
+he "rimary keys of fact dimensional table are the foreign keys of fact tables.
(efine the term slowly chanin dimensions 8%C(.?
'H5 are dimensions whose data changes very slowly. !n example of this can be city of an
employee. +his dimension will change very slowly. +he row of this data in the dimension can be
either replaced completely without any track of old record 7R a new row can be inserted# 7R
the change can be tracked
What is a %tar %chema?
! star schema comprises of fact and dimension tables. .act table contains the fact or the actual
data. Csually numerical data is stored with multiple columns and many rows. 5imension tables
contain attributes or smaller granular data. +he fact table in start schema will have foreign key
references of dimension tables.
What is the difference between star and snowflake schema?
%tar %chema, ! de9normaliAed techni0ue in which one fact table is associated with several
dimension tables. It resembles a star.
%now <lake %chema, ! star schema that is applied with normaliAed principles is known as
'now flake schema. 2very dimension table is associated with sub dimension table.
1xplain the use lookup tables and 'reate tables?
!n aggregate table contains summariAed view of data. 8ookup tables# using the primary key of
the target# allow updating of records based on the lookup condition.
What is real time data-warehousin?
In real time data9warehousing# the warehouse is updated every time the system performs a
transaction. It reflects the businesses real time information. +his means that when the 0uery is
fired in the warehouse# the state of the business at that time will be returned.
(efine non-additi!e facts?
+he facts that can not be summed up for the dimensions present in the fact table are called non9
additive facts. +he facts can be useful if there are changes in dimensions. .or example# profit
margin is a non9additive fact for it has no meaning to add them up for the account level or the
day level.
(efine 7A% %chema?
! :C' schema is to identify the common dimensions across business processes# like
identifying conforming dimensions. :C' schema has conformed dimension and standardiAed
definition of facts.
What is data cleanin? 2ow can we do that?
5ata cleaning is the process of identifying erroneous data. +he data is checked for accuracy#
consistency# typos etc.
(ata cleanin $ethods,
*arsin 9 Csed to detect syntax errors.
(ata Transformation 9 Honfirms that the input data matches in format with expected data.
(uplicate elimination 9 +his process gets rid of duplicate entries.
%tatistical $ethods9 values of mean# standard deviation# range# or clustering algorithms etc
are used to find erroneous data.
What is the purpose of <act less <act Table?
.act less tables are so called because they simply contain keys which refer to the dimension
tables. 6ence# they donBt really have facts or any information but are more commonly used for
tracking some information of an event.
2g. +o find the number of leaves taken by an employee in a month.
What is a le!el of =ranularity of a fact table?
! fact table is usually designed at a low level of $ranularity. +his means that we need to find the
lowest level of information that can store in a fact table.
2.g. 2mployee performance is a very high level of granularity. 2mployee(performance(daily#
employee(perfomance(weekly can be considered lower levels of granularity.
What is 7it $apped Index?
:itmap indexes make use of bit arrays EbitmapsF to answer 0ueries by performing bitwise logical
operations.
+hey work well with data that has a lower cardinality which means the data that take fewer
distinct values.
:itmap indexes are useful in the data warehousing applications.
:itmap indexes have a significant space and performance advantage over other structures for
such data.
+ables that have less number of insert or update operations can be good candidates.
The ad!antaes of 7itmap indexes are,
+hey have a highly compressed structure# making them fast to read.
+heir structure makes it possible for the system to combine multiple indexes together so that
they can access the underlying table faster.
The (isad!antae of 7itmap indexes is,
+he overhead on maintaining them is enormous.
What is (ata Cardinality?
Hardinality is the term used in database relations to denote the occurrences of data on either
side of the relation.
There are 4 basic types of cardinality,
2ih data cardinality,Ralues of a data column are very uncommon.
e.g.% email ids and the user names
Bormal data cardinality,Ralues of a data column are somewhat uncommon but never uni0ue.
e.g.% ! data column containing 8!'+(G!12 Ethere may be several entries of the same last
nameF
"ow data cardinality,Ralues of a data column are very usual.
e.g.% flag statuses% 0@1
5etermining data cardinality is a substantial aspect used in data modeling. +his is used to
determine the relationships
Types of cardinalities,
+he 8ink Hardinality 9 0%0 relationships
+he 'ub9type Hardinality 9 1%0 relationships
+he "hysical 'egment Hardinality 9 1%1 relationship
+he "ossession Hardinality 9 0% 1 relation
+he Hhild Hardinality 9 1% 1 mandatory relationship
+he Hharacteristic Hardinality 9 0% 1 relationship
+he "aradox Hardinality 9 1% 1 relationship.

You might also like