Sei sulla pagina 1di 29

How can you recognise whether or not the newly added rows in the source are gets insert

in the target? In the Type2 maping we have three options to recognise the newly added rows Version number Flagvalue Effective date Range. You can see that in the session log properties ta!e some "# new records$ and run the wor!flow$ then loo! into the session log$ there you can find the effected row$ applied row$ and re%ected row. &dd one timestamp column in target table. If the target table timestamp is updated$ means the record is updated'inserted in the wor!flow. What is the difference between Informatica 7.0 and 8.0 ?

The major difference is Informatica 8x mainly works on SOA where as the Informatica 7x works on Client and Server Architecture concept the main differences are time concept also and more advanced transformations are released like java and s!l transformations etc
Differences between Normalizer and Normalizer transformation. (ormali)er* It is a transormation mainly using for cobol sources$ it+s change the rows into coloums and columns into rows (ormali)ation*To remove the retundancy and inconsitecy erformance tuning in Informatica?

The "oal of performance tunin" is optimi#e session performance so sessions run durin" the availa$le load window for the Informatica Server Increase the session performance $y followin" The performance of the Informatica Server is related to network connections %ata "enerally moves across a network at less than & '( per second) whereas a local disk moves data five to twenty times faster Thus network connections ofteny affect on session performance So aviod netwrok connections *lat files+ If u,r flat files stored on a machine other than the informatca server) move those files to the machine that consists of informatica server -elational datasources+ 'inimi#e the connections to sources )tar"ets and informatica server to improve session performance 'ovin" tar"et data$ase into server system may improve session performance Sta"in" areas+ If u use sta"in" areas u force informatica server to perform multiple datapasses -emovin" of sta"in" areas may improve session performance .ou can run the multiple informatica servers a"ainist the same repository %isti$utin" the session load to multiple informatica servers may improve session performance

-un the informatica server in ASCII datamovement mode improves the session performance (ecause ASCII datamovement mode stores a character value in one $yte /nicode mode takes 0 $ytes to store a character If a session joins multiple source ta$les in one Source 1ualifier) optimi#in" the !uery may improve performance Also) sin"le ta$le select statements with an O-%2- (. or 3-O/4 (. clause may $enefit from optimi#ation such as addin" indexes 5e can improve the session performance $y confi"urin" the network packet si#e)which allows data to cross the network at one time To do this "o to server man"er )choose server confi"ure data$ase connections If u are tar"et consists key constraints and indexes u slow the loadin" of data To improve the session performance in this case drop constraints and indexes $efore u run the session and re$uild them after completion of session -unnin" a parallel sessions $y usin" concurrent $atches will also reduce the time of loadin" the data So concurent $atches may also increase the session performance 4artittioni" the session improves the session performance $y creatin" multiple connections to sources and tar"ets and loads data in paralel pipe lines In some cases if a session contains a a""re"ator transformation ).ou can use incremental a""re"ation to improve session performance Aviod transformation errors to improve the session performance If the sessioin containd lookup transformation .ou can improve the session performance $y ena$lin" the look up cache If /,r session contains filter transformation )create that filter transformation nearer to the sources or .ou can use filter condition in source !ualifier A""rea"ator)-ank and joiner transformation may oftenly decrease the session performance (ecause they must "roup data $efore processin" it To improve session performance in this case use sorted ports option Increase the temporary data$ase space also improves the performance
How do you handle decimal !laces while im!orting a flatfile into informatica?

while importin" flat file definetion just specify the scale for a neumaric data type in the mappin") the flat file source supports only num$er datatype6no decimal and inte"er7 In the S1 associated with that source will have a data type as decimal for that num$er port of the source source 89num$er datatype port 89S1 89 decimal datatype Inte"er is not supported hence decimal is taken care Import the field as strin" and then use expression to convert it) so that we can avoid truncation if decimal places in source itself
What is the use of incremental aggregation? "#!lain me in brief with an e#am!le. ,hen using incremental aggregation$ you apply captured changes in the source to aggregate calculations in a session. If the source changes incrementally and you can capture changes$ you can configure the session to process those changes. This allows the Integration -ervice to update the target incrementally$ rather than forcing it to process the entire source and recalculate the same data each time you run the session.

.onsider using incremental aggregation in the following circumstances* You can capture new source data. /se incremental aggregation when you can capture new source data each time you run the session. /se a -tored 0rocedure or Filter transformation to process new data. Incremental changes do not significantly change the target. /se incremental aggregation when the changes do not significantly change the target. If processing the incrementally changed source alters more than half the e1isting target$ the session may not benefit from using incremental aggregation. In this case$ drop the table and recreate the target with complete source data. (ote* 2o not use incremental aggregation if the mapping contains percentile or median functions. The Integration -ervice uses system memory to process these functions in addition to the cache memory you configure in the session properties. &s a result$ the Integration -ervice does not store incremental aggregation values for percentile and median functions in dis! caches. What is the target load order? You specify the target loadorder based on source 3ualifiers in a maping.If you have the multiple source 3ualifiers connected to the multiple targets$You can designate the order in which informatica server loads data into the targets. How do we do unit testing in informatica? How do we load data in informatica ? /nit testing are of two types ". 4uantitaive testing 2.4ualitative testing -teps. ".First validate the mapping 2..reate session on themapping and then run wor!flow. 5nce the session is succeeded the right clic! on session and go for statistics tab. There you can see how many number of source rows are applied and how many number of rows loaded in to targets and how many number of rows re%ected.This is called 4uantitative testing. If once rows are successfully loaded then we will go for 3ualitative testing. -teps ".Ta!e the 2&T672&T6 means where all business rules are mentioned to the corresponding source columns8 and chec! whether the data is loaded according to the 2&T6 in to target table.If any data is not loaded according to the 2&T6 then go and chec! in the code and rectify it. This is called 4ualitative testing. This is what a devloper will do in /nit Testing. What is !ower center re!ository?

a power center repository is a data dictionary$ where we store ob%ect definitions. ".folders 2.source and target definitions 9. transformation rules :.mappings ;.sessions <.wor!flows and scheduling =. users permission and previli)ations it+s also one type of relational database where we store metadata. this repository created at the time of installation by informatica administrators Diff between static and dynamic cache? and !lease e#!lain with one e#am!le?

%ifference $etween static and dynamic cache8 Static8 Once the data is cached ) it will not chan"e example unconnected lookup uses static cache %ynamic8 The cache is updated as to reflect the update in the ta$le6 or source7 for which it is refferin" to 6ex connected lookup7 while usin" a static cache in lookup we can use all operators like :);)9 in condition ta$ $ut in usin" dynamic cache we only can use : operator
How the informatica ser$er sorts the string $alues in %an&transformation?

while "ivin" condition

5hen Informatica Server runs in /<ICO%2 data movement mode )then it uses the sort order confi"ured in session properties 5e can run informatica server either in /<ICO%2 data moment mode or ASCII data moment mode /nicode mode+ in this mode informatica server sorts the data as per the sorted order in session ASCII 'ode+in this mode informatica server sorts the date as per the $inary order
"#!lain about Informatica ser$er 'rchitecture?

when we will strt the workflow the data loaded into load mana"er and load to dispatcher there the parts are there first one is reader thread+: it is a su$pro"rames uses the source ta$le and source ta$le connection to read the source data from the source data$ase second one is sharedmemory +: in this sharedmemory the extract data from reader is stored under shared memory is called sta"in" area

writerthread +: to colllect the data from shared memory and uses tar"et ta$le and tar"et ta$le and tar"et ta$le connections to load the data into tar"et data$ase
How can you im!ro$e session !erformance in aggregator transformation?

/se sorted input One way is supplyin" the sorted input to a""re"ator transformation In situations where sorted input cannot $e supplied) we need to confi"ure data cache and index cache at session=transformation level to allocate more space to support a""re"ation
Is sorter an acti$e or !assi$e transformation?What ha!!ens if we unchec& the distinct o!tion in sorter.Will it be under acti$e or !assi$e transformation? -orter is an active transformation. if you don+t chec! the distinct option it is considered as a passive transformation. becos this distinct option eliminates the duplicate records from the table. In u!date strategy target table or flat file which gi$es more !erformance ? why?

4ros+ >oadin") Sortin") 'er"in" operations will $e faster as there is no index concept and %ata will $e in ASCII mode Cons+ There is no concept of updatin" existin" records in flat file As there is no indexes) while lookups speed will $e lesser
What is the difference between sto! and abort 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*???? You can issue the abort command $ it is similar to stop command e1cept it has ;# second time out . If the server cannot finish processing and commiting data with in ;# sec How can you create or im!ort flat file definition in to the warehouse designer? You can not create or import flat file defintion in to warehouse designer directly.Instead you must analy)e the file in source analy)er$then drag it into the warehouse designer. ,hen you drag the flat file source defintion into warehouse desginer wor!space$the warehouse designer creates a relational target defintion not a file defintion.If you 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 flat file. How many ty!es of dimensions are a$ailable in Informatica?

The types of dimensions available are* ". @un! dimension 2. 2egenerative 2imension 9. .onformed 2imension When we create a target as flat file and source as oracle.. how can i s!ecify first rows as column names in flat files...

use a pre s!l statement $ut this is a hardcodin" method if you chan"e the column names or put in extra columns in the flat file) you will have to chan"e the insert statement .ou can also achive this $y chan"in" the settin" in the Informatica -epository mana"er to display the columns headin" The only disadvanta"e of this is that it will $e applied on all the files that will $e "enerated $y This server II*6C/'26&7:&) ?col&)col0)col@)colA?BBCC-6&D7BBtoEchar6col& 7)toEchar6col&77 In Fersion 8 0 of Informatica ) we have in session properties ) an option Called G Ceader optionsG /se that to "et the field names as the first row in the Tar"et *lat file
How can we use !mcmd command in a wor&flow or to run a session pmcmdAstartwor!flow ?f foldername wor!flowname What is the difference between filter and loo&u! transformation? "8 Filter transformation is an &ctive transformation and Boo!up is a 0assive transformation 28 Filter transformation is used to Filter rows based on condition and Boo!up is used to to loo! up data in a flat file or a relational table$ view$ or synonym How do you configure ma!!ing in informatica You should configure the mapping with the least number of transformations and e1pressions to do the most amount of wor! possible. You should minimi)e the amount of data moved by deleting unnecessary lin!s between transformations. For transformations that use data cache 7such as &ggregator$ @oiner$ Ran!$ and Boo!up transformations8$ limit connected input'output or output ports. Bimiting the number of connected input'output or output ports reduces the amount of data the transformations store in the data cache. Which tas&s can be !erformed on !ort le$el(using one s!ecific !ort)? I thin! unconnected Boo!up or e1pression transformation can be used for single port for a row. What is difference between ma!let and reusable transformation?

'aplet+ one or more transformations -eusa$le transformation+ only one transformation 'applet + set of transformations that are reusa$le -eusua$le Transformation+ Sin"le transformation which is reusa$le
When do u use a unconnected loo&u! and connected loo&u!.... what is the difference between dynamic and static loo&u!...y and when do $ use these ty!es of loo&u!s ( ie...dynamic and static )

n static lookup cache) you cache all the lookup data at the startin" of the session in dynamic lookup cache) you "o and !uery the data$ase to "et the lookup value for each record which needs the lookup static lookup cache adds to the session run time $ut it saves time as informatica does not need to connect to your data$se every time it needs to lookup dependin" on how many rows in your mappin" needs a lookup) you can decide on this also remem$er that static lookup eats up space so remem$er to select only those columns which are needed /nconnected >ookup 4hysically unconnected from other transformations8<O data flow arrows leadin" to or from an unconnected >ookup >ookup data is called from the point in the 'appin" that needs it so there are less num$er of looks up >ookup function can $e set within any transformation that supports expressions /nconnected lookup will $e used if we need to use same lookup tx multiple times within the same mappin" Connected lookup will $e used if we need to use a lookup Tx only once in a mappin" %ifferance (=w %ynamic and static lookup+ & if we use %ynamic lookup) the Inte"ration service wll !uery the lookup source once and $uilds a cache which can $e inserted=updated $ased on the availa$ility of new records and the chan"es in the source records $efore loadin" to tar"et ta$le If we use static lookup) the cache will $e $uild $y the inte"ration service when the a row from the source re!uests lookup first time Inte"ration Service doesn?t inserts=updates the lookup cache $ased on the new rows=chan"es from the source 0 Static lookup could $e $oth connected and unconnected whereas %ynamic lookup will $e only connected @ static lookup will not consume much memory when compared to %ynamic lookup %ynamic lookup wll $e used if there is a chance of "ettin" a new record and a chan"e in that record as 0 differant rows in a sin"le session run 2x+ row&+creation of a Customer c& dataH -ow0+ Chan"in" the profile of the same customer c& Cere ) row & should $e inserted to tar"et and row0 should $e updated to tar"et Static lookup will $e used if there is no chance to "et a$ove case

How many ty!es of facts and what are they? There are Factless Facts*Facts without any measures. &dditive Facts*Fact data that can be additive'aggregative. (on?&dditive facts* Facts that are result of non?additon -emi?&dditive Facts* 5nly few colums data can be added. 0eriodic Facts* That stores only one row per transaction that happend over a period of time. &ccumulating Fact* stores row for entire lifetime of event. What are the out !ut files that the informatica ser$er creates during the session running? Informatica server log* Informatica server7on uni18 creates a log for all status and error messages7default name* pm.server.log8. It also creates an error log for error messages. These 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 initiali)ation process$creation of s3l commands for reader and writer threads$errors encountered and load summary.The amount of detail in session log file depends on the tracing level that you set. -ession detail file* This file contains load statistics for each targets in mapping.-ession detail include information such as table name$number of rows written or re%ected./ can view this file by double clic!ing on the session in monitor window 0erformance detail file* This file contains information !nown as session performance details which helps you where performance can be improved.To genarate this file select the performance detail option in the session property sheet. Re%ect file* This file contains the rows of data that the writer does notwrite to targets. .ontrol file* Informatica server creates control file and a target file when you run a session that uses the e1ternal loader.The control file contains the information about the target flat file such as data format and loading instructios for the e1ternal loader. 0ost session email* 0ost session email allows you to automatically communicate information about a session run to designated recipents.You can create two different messages.5ne if the session completed sucessfully 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.For each target row$the indicator file contains a number to indicate whether the row was mar!ed for insert$update$delete or re%ect. 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.

.ache files* ,hen the informatica server creates memory cache it also creates cache files. For the following circumstances informatica server creates inde1 and datacache files*? &ggreagtor transformation @oiner transformation Ran! transformation Boo!up transformation *an anyone e#!lain error handling in informatica with e#am!les so that it will be easy to e#!lain the same in the inter$iew.

3o to the session lo" file there we will find the information re"ardin" to the session initiation process) errors encountered load summary so $y seein" the errors encountered durin" the session runnin") we can resolve the errors There is one file called the $ad file which "enerally has the format as I $ad and it contains the records rejected $y informatica server There are two parameters one fort the types of row and other for the types of columns The row indicators si"nifies what operation is "oin" to take place 6 i e insertion) deletion) updation etc 7 The column indicators contain information re"ardin" why the column has $een rejected 6 such as violation of not null constraint) value error) overflow etc 7 If one rectifies the error in the data preesent in the $ad file and then reloads the data in the tar"et)then the ta$le will contain only valid data
What is !arameter file? ,hen you start a wor!flow$ you can optionally enter the directory and name of a parameter file. The Informatica -erver runs the wor!flow using the parameters in the file you specify. For /(IC shell users$ enclose the parameter file name in single 3uotes* ?paramfile +D06Root2ir'myfile.t1t+ For ,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 3uotes* ?paramfile ED06Root2irmy file.t1tE (ote* ,hen you write a pmcmd command that includes a parameter file located on another machine$ use the bac!slash 78 with the dollar sign 7D8. This ensures that the machine where the variable is defined e1pands the server variable.

pmcmd startwor!flow ?uv /-ER(&6E ?pv 0&--,5R2 ?s -&BE-*;2:= ?f east ?w w-ales&vg ?paramfile +D06Root2ir'myfile.t1t+ Discuss the ad$antages + Disad$antages of star + snowfla&e schema?

In a STA- schema there is no relation $etween any two dimension ta$les) whereas in a S<O5*>AJ2 schema there is a possi$le relation $etween the dimension ta$les
What is source ,ualifier transformation?

5hen you add a relational or a flat file source definition to a mapin")/ need to connect it to a source !ualifer transformation The source !ualifier transformation represnets the records that the informatica server reads when it runs a session S1 transformation is a transformation which is automatically "enerated to read data from source ta$les into informatica desi"ner
In Dimensional modeling fact table is normalized or denormalized?in case of star schema and incase of snow fla&e schema? In 2imensional modeling$ -tar -chema* & -ingle Fact table will be surrounded by a group of 2imensional tables comprise of de? normali)ed data -nowfla!e -chema* & -ingle Fact table will be surrounded by a group of 2imensional tables comprised of normali)ed dataThe -tar -chema 7sometimes referenced as star %oin schema8 is the simplest data warehouse schema$ consisting of a single Ffact tableF with a compound primary !ey$ with one segment for each FdimensionF and with additional columns of additive$ numeric facts.The -tar -chema ma!es multi? dimensional database 7622G8 functionality possible using a traditional relational database. Gecause relational databases are the most common data management system in organi)ations today$ implementing multi?dimensional views of data using a relational database is very appealing. Even if you are using a specific 622G solution$ its sources li!ely are relational databases. &nother reason for using star schema is its ease of understanding. Fact tables in star schema are mostly in third normal form 79(F8$ but dimensional tables in de?normali)ed second normal form 72(F8. If you want to normali)e dimensional tables$ they loo! li!e snowfla!es 7see snowfla!e schema8 and the same problems of relational databases arise ? you need comple1 3ueries and business users cannot easily understand the meaning of data. &lthough 3uery performance may be improved by advanced 2G6- technology and hardware$ highly normali)ed tables ma!e reporting difficult and applications comple1.The -nowfla!e -chema is a more comple1 data warehouse model than a star schema$ and is a type of star schema. It is called a snowfla!e schema because the diagram of the schema resembles a snowfla!e.-nowfla!e schemas normali)e dimensions to eliminate redundancy. That is$ the dimension data has been grouped into multiple tables instead of one large table. For e1ample$ a product dimension table in a star schema might be normali)ed into a products table$ a 0roduct? category table$ and a product?manufacturer table in a snowfla!e schema. ,hile this saves

space$ it increases the number of dimension tables and re3uires more foreign !ey %oins. The result is more comple1 3ueries and reduced 3uery performance. Difference between %an& and Dense %an&?

-ank+ & 0;880nd position 0;88@rd position A K Same -ank is assi"ned to same totals=num$ers -ank is followed $y the 4osition 3olf "ame ususally -anks this way This is usually a 3old -ankin" %ense -ank+ & 0;880nd position 0;88@rd position @ A Same ranks are assi"ned to same totals=num$ers=names the next rank follows the serial num$er
What is u!date strategy transformation ? The model you choose constitutes your update strategy$ how to handle changes to e1isting rows. In 0ower.enter and 0ower6art$ 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 7for e1ample$ treat all rows as inserts8$ or use instructions coded into the session mapping to flag rows for different database operations. ,ithin a mapping. ,ithin a mapping$ you use the /pdate -trategy transformation to flag rows for insert$ delete$ update$ or re%ect. What is the difference between constraind base load ordering and target load !lan

Constraint $ased load orderin" example+ Ta$le &888'aster Ta$ke 0888%etail If the data in ta$le& is dependent on the data in ta$le0 then ta$le0 should $e loaded first In such

cases to control the load order of the ta$les we need some conditional loadin" which is nothin" $ut constraint $ased load In Informatica this feature is implemented $y just one check $ox at the session level

A C(l specifies the order in which data loads into the tar"ets $ased on key constraints A tar"et load plan defines the order in which data $ein" extracted from the source !ualifier
What is the default -oin that source ,ualifier !ro$ides?

Inner e!ui join

cross join

How can we !artition a session in Informatica? The InformaticaE 0ower.enterE 0artitioning option optimi)es parallel processing on multiprocessor hardware by providing a thread?based architecture and built?in data partitioning. H/I?based tools reduce the development effort necessary to create data partitions and streamline ongoing troubleshooting and performance tuning tas!s$ while ensuring data integrity throughout the e1ecution process. &s the amount of data within an organi)ation e1pands and real?time demand for information grows$ the 0ower.enter 0artitioning option enables hardware and applications to provide outstanding performance and %ointly scale to handle large volumes of data and users. What is difference between II. and D"*/D" function

.ou can use nested II* statements to test multiple conditions The followin" example tests for various conditions and returns D if sales is #ero or ne"ative+ II*6 SA>2S 9 D) II*6 SA>2S ; KD) SA>A-.&) II*6 SA>2S ; &DD) SA>A-.0) II*6 SA>2S ; 0DD) SA>A-.@) (O</S777) D 7 .ou can use %2CO%2 instead of II* in many cases %2CO%2 may improve reada$ility The followin" shows how you can use %2CO%2 instead of II* + SA>2S 9 D and SA>2S ; KD) SA>A-.&) SA>2S 9 AL A<% SA>2S ; &DD) SA>A-.0)

SA>2S 9 LL A<% SA>2S ; 0DD) SA>A-.@) SA>2S 9 &LL) (O</S7

%ecode function can used in s!l statement where as if statment cant use with S1> statement

What is the difference between connected and unconnected stored !rocedures.

/nconnected+ The unconnected Stored 4rocedure transformation is not connected directly to the flow of the mappin" It either runs $efore or after the session) or is called $y an expression in another transformation in the mappin" connected+ The flow of data throu"h a mappin" in connected mode also passes throu"h the Stored 4rocedure transformation All data enterin" the transformation throu"h the input ports affects the stored procedure .ou should use a connected Stored 4rocedure 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
Waht are main ad$antages and !ur!ose of using Normalizer 0ransformation in Informatica?

<armali#er Transformation is used mainly with CO(O> sources where most of the time data is stored in de8normali#ed format Also) <ormali#er transformation can $e used to create multiple rows from a sin"le row of data
Differences between connected and unconnected loo&u!? .onnected loo!up*? "A Receives input values diectly from the pipe line. 2A You can use a dynamic or static cache. 9A .ache includes all loo!up columns used in the maping. IA -upport user defined default values. /nconnected loo!up*? "A Receives input values from the result of a l!p e1pression in a another transformation. 2A You can use a static cache. 9A .ache includes all loo!up out put ports in the loo!up condition and the loo!up'return port. IA 2oes not support user defiend default values.

What are the -oin ty!es in -oiner transformation? (ormal 72efault8 6aster outer 2etail outer Full outer. What are the methods for creating reusable transforamtions?

In 0 ways & /sin" transformation developer tool 0 Convertin" a non reusa$le transformation into a reusa$le transformation in mappin" -estriction + It does not support Source 1ualifier Transformation as -eusa$le Transformation
If you ha$e four loo&u! tables in the wor&flow. How do you troubleshoot to im!ro$e !erformance?

There r many ways to improve the mappin" which has multiple lookups &7 we can create an index for the lookup ta$le if we have permissions6sta"in" area7 07 divide the lookup mappin" into two 6a7 dedicate one for insert means+ source 8 tar"et)) these r new rows only the new rows will come to mappin" and the process will $e fast 6$7 dedicate the second one to update + source:tar"et)) these r existin" rows only the rows which exists allready will come into the mappin" @7we can increase the chache si#e of the lookup
How the informatica ser$er increases the session !erformance through !artitioning the source? For a relational sources informatica server creates multiple connections for each parttion of a single source and e1tracts 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. For C6B and file sources$informatica server reads multiple files concurently.For loading the data informatica server creates a seperate file for each partition7of a source file8. You can choose to merge the targets. 0o achie$e the session !artition what are the necessary tas&s you ha$e to do?

Confi"ure the session to partition source data Install the informatica server on a machine with multiple C4/,s
why did u use u!date stategy in your a!!lication?

/pdate -trategy is used to drive the data to be Inert$ /pdate and 2elete depending upon some condition. You can do this on session level tooo but there you cannot define any condition.For eg* If you want to do update and insert in one mapping...you will create two flows and will ma!e one as insert and one as update depending upon some condition.Refer * /pdate -trategy in Transformation Huide for more information What is difference between !artioning of relatonal target and !artitioning of file targets?

4artition?s can $e done on $oth relational and flat files Informatica supports followin" partitions & %ata$ase partitionin" 0 -ound-o$in @ 4ass8throu"h A Cash8Jey partitionin" K Jey -an"e partitionin" All these are applica$le for relational tar"ets *or flat file only data$ase partitionin" is not applica$le Informatica supports <way partitionin" / can just specify the name of the tar"et file and create the partitions) rest will $e taken care $y informatica session

How can u wor& with remote database in informatica?did u wor& directly by using remote connections? To wor! with remote datasource u need to connect it with remote connections.Gut it is not preferable to wor! with that remote source directly by using remote connections .Instead u bring that source into / r local machine where informatica server resides.If u wor! directly with remote source the session performance will decreases by passing less amount of data across the networ! in a particular time. What is Datadri$en?

The informatica server follows instructions coded into update strate"y transformations with in the session mapin" determine how to fla" records for insert) update) delete or reject If you do not choose data driven option settin")the informatica server i"nores all update strate"y transformations in the mappin"

If the data driven option is selected in the session properties)it follows the instructions in the update strate"y transformation in the mappin" o w it follows instuctions specified in the session
If a session fails after loading of 102000 records in to the target.How can u load the records from 10001 th record when u run the session ne#t time?

As explained a$ove informatcia server has @ methods to recoverin" the sessions /se performin" recovery to load the records from where the session fails
Why did you use stored !rocedure in your "03 '!!lication? usage of stored procedure has the following advantages "chec!s the status of the target database 2drops and recreates inde1es 9determines if enough space e1ists in the database Iperforms aspecili)ed calculation What are the -oiner caches? ,hen a @oiner transformation occurs in a session$ the Informatica -erver reads all the records from the master source and builds inde1 and data caches based on the master rows. &fter building the caches$ the @oiner transformation reads records from the detail source and perform %oins. What are the basic needs to -oin two sources in a source ,ualifier?

Two sources should have primary and *orei"n key relation ships Two sources should have matchin" data types

(asic need to join two sources usin" source !ualifier+ &7 (oth sources should $e in same data$ase 07 The should have at least one column in common with same data types
In a scenario I ha$e col12 col42 col52 under that 12#2y2 and 42a2b and I want in this form col12 col4 and 12# and 12y and 42a and 42b2 what is the !rocedure?

/se <ormali#er + create two ports 8 first port occurs : & second make occurs : 0 two output ports are created and connect to tar"et
How can you im!ro$e the !erformance of 'ggregate transformation?

we can improve the a"rre"ator performence in the followin" ways & send sorted input 0 increase a""re"ator cache si#e i e Index cache and data cache @ 3ive input=output what you need in the transformation i e reduce num$er of input and output ports

/se Sorter Transformation to sort input in a""re"rator properties filter the records $efore
How do you create single loo&u! transformation using multi!le tables?

5rite a override s!l !uery Adjust the ports as per the s!l !uery

(y writin" S1> override and specifyin" joins in the S1> override


/n a day2 I load 10 rows in my target and on ne#t day if I get 10 more rows to be added to my target out of which 6 are u!dated rows how can I send them to target? How can I insert and u!date the record? ,e can use do this by identifying the granularity of the target table . ,e can use .R. e1ternal procedure after that to compare newly generated .R. no. with the old one and if they do not match then update the row. In which condtions we can not use -oiner transformation(3imitaions of -oiner transformation)?

(oth pipelines $e"in with the same ori"inal data source (oth input pipelines ori"inate from the same Source 1ualifier transformation (oth input pipelines ori"inate from the same <ormali#er transformation (oth input pipelines ori"inate from the same Moiner transformation

2ither input pipelines contains an /pdate Strate"y transformation 2ither input pipelines contains a connected or unconnected Se!uence 3enerator transformation

What are the diffrence between -oiner transformation and source ,ualifier transformation?

.ou can join hetro"enious data sources in joiner transformation which we can not achieve in source !ualifier transformation .ou need matchin" keys to join two relational sources in source !ualifier transformation 5here as you doesn,t need matchin" keys to join two sources Two relational sources should come from same datasource in source!ualifier .ou can join relatinal sources which are comin" from diffrent sources also

Moiner Transformation can $e used to join ta$les from hetro"enious 6different sources7) $ut we still need a common key from $oth ta$les If we join two ta$les without a common key we will end up in a Cartesian Moin Moiner can $e used to join ta$les from difference source systems where as Source !ualifier can $e used to join ta$les in the same data$ase 5e definitely need a common key to join two ta$les no mater they are in same data$ase or difference data$ases
what are the difference between $iew and materialized $iew? 6ateriali)ed views are schema ob%ects that can be used to summari)e$ precompute$ replicate$ and distribute data. E.g. to construct a data warehouse. & materiali)ed view provides indirect access to table data by storing the results of a 3uery in a separate schema ob%ect. /nli!e an ordinary view$ which does not ta!e up any storage space or contain any data How can i transform row to column?

Throu"h <ormali#er Transformation we can do this & we can use normali#er transformation or 0 use pivot function in oracle
0his is a scenario in which the source has 4 cols 10 ' 10 ' 40 *

50 D 70 " 40 * 'nd there should be 4 targets one to show the du!licate $alues and another target for distinct rows. 01 04 10 ' 10 ' 40 * 40 * 50 D Which transformation can be used to load data into target? 70 " -tep"* sort the source data based on the uni3ue !ey. E1pression ?????????? FlagJ iif7col" Jprev>col"$+Y+$+(+8 prev>col" J col" Router* ??????? ".for duplicate record* condition* falg J +Y+ 2. for distinct Records condition flag J +(+ How to reco$er sessions in concurrent batches?

If multiple sessions in a concurrent $atch fail) you mi"ht want to truncate all tar"ets and run the $atch a"ain Cowever) if a session in a concurrent $atch fails and the rest of the sessions complete successfully) you can recover the session as a standalone session To recover a session in a concurrent $atch+ & Copy the failed session usin" Operations8Copy Session 0 %ra" the copied session outside the $atch to $e a standalone session @ *ollow the steps to recover a standalone session A %elete the standalone copy
What are two ty!es of !rocesses that informatica runs the session? Boad manager 0rocess* -tarts the session$ creates the 2T6 process$ and sends post?session email when the session completes. The 2T6 process. .reates threads to initiali)e the session$ read$ write$ and transform data$ and handle pre? and post?session operations. How to im!ort oracle se,uence into Informatica.

C-2AT2 O<2 4-OC2%/-2 A<% %2C>A-2 TC2 S21/2<C2 I<SI%2 TC2 4-OC2%/-2)*I<A>>. CA>> TC2 4-OC2%/-2 I< I<*O-'ATICA 5ITC TC2 C2>4 O* STO-2% 4-OC2%/-2 T-A<S*O-'ATIO<
*an you start a session inside a batch idi$idually?

5e can start our re!uired session only in case of se!uential $atch in case of concurrent $atch we cant do like this
What r the ty!es of loo&u! caches?

&7Static Cache 07%ynamic Cache @74ersistent Cache A7-eusa$le Cache K7Shared Cache
What is !ushdown o!timizations in !c 8.# with e#am!le? /se pushdown optimi)ation to push transformation logic to the source or target database. The Integration -ervice analy)es the transformation logic$ mapping$ and session configuration to determine the transformation logic it can push to the database. &t run time$ the Integration -ervice e1ecutes any -4B statement generated against the source or target tables$ and it processes any transformation logic that it cannot push to the database. -elect one of the following values* ? (one. The Integration -ervice does not push any transformation logic to the database. ? To -ource. The Integration -ervice pushes as much transformation logic as possible to the source database. ? To Target. The Integration -ervice pushes as much transformation logic as possible to the target database. ? Full. The Integration -ervice pushes as much transformation logic as possible to both the source database and target database. ? DD0ushdown.onfig. The DD0ushdown.onfig mapping parameter allows you to run the same session with different pushdown optimi)ation configurations at different times. For more information about configuring the DD0ushdown.onfig mapping parameter and parameter file$ see /sing the DD0ushdown.onfig 6apping 0arameter. How do u chec& the source for the latest records that are to be loaded into the target. i.e i ha$e loaded some records yesterday2 today again the file has been !o!ulated with some more records today2 so how do i find the records !o!ulated today.

a7 Create a lookup to tar"et ta$le from Source 1ualifier $ased on primary Jey $7 /se and expression to evaluate primary key from tar"et look8up 6 If a new source record look8up primary key port for tar"et ta$le should return null7 Trap this with decode and proceed
In which circumstances that informatica ser$er creates %e-ect files? ,hen it encounters the 22>Re%ect in update strategy transformation. Violates database constraint Filed in the rows was truncated or overflowed. What is batch and describe about ty!es of batches?

(atch888 is a "roup of any thin" %ifferent $atches 8888%ifferent "roups of different thin"s

There are two types of $atches & Concurrent 0 Se!uential concurrent and se!uential
What is the method of loading 6 flat files of ha$ing same structure to a single target and which transformations I can use?

Two 'ethods & write all files in one directory then use file repository concept6dont for"et to type source file type as indirect in the session7 0 use union t=r to com$ine multiple input files into a sin"le tar"et

What is the !rocedure to load the fact table.8i$e in detail?

(ased on the re!uirement to your fact ta$le) choose the sources and data and transform it $ased on your $usiness needs *or the fact ta$le) you need a primary key so use a se!uence "enerator transformation to "enerate a uni!ue key and pipe it to the tar"et 6fact7 ta$le with the forei"n keys from the source ta$les Can you use the maping parameters or variables created in one maping into any other reusable transformation? .es (ecause reusa$le tranformation is not contained with any maplet or mapin"

What are $ariable !orts and list two situations when they can be used?

Faria$le acts as a local to that transformation we can do further calculation)we cannot pass to the next level (ut Output can pass to the next level)we cannot do further calculation in o=p ports
What are the o!tions in the target session of u!date strategy transsformatioin?

Insert %elete /pdate /pdate as update /pdate as insert /pdate esle insert Truncate ta$le

Why you use re!ository connecti$ity?

5hen you edit)schedule the sesion each time)informatica server directly communicates the repository to check whether or not the session and users are valid All the metadata of sessions and mappin"s will $e stored in repository
What are the scheduling o!tions to run a sesion? & session can be scheduled to run at a given time or intervel$or u can manually run the session. 2ifferent options of scheduling Run only on demand* server runs the session only when user starts session e1plicitly 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. .ustomi)ed repeat* Informatica server runs the session at the dats and times secified in the repeat dialog bo1. What is change data ca!ture? .hange data capture 7.2.8 is a set of software design patterns used to determine the data that has changed in a database so that action can be ta!en using the changed data. 0here are 5 de!ts in de!t table and one with 100 !eo!le and 4nd with 6 and 5rd with some 50 and so. i want to di!lay those de!tno where more than 10 !eo!le e#ists YesK the answer provided is absolutely right. by an -4B application75racle8. If you want to perform it thru informatica$ the Fire the same 3uery in the -4B 5verride of -ource 3ualifier transformation and ma!e a simple pass thru mapping. 5ther wise$ you can also do it by using a Filter.Router transformation by giving the condition there deptnoAJ"#. How u will create header and footer in target using informatica? If you are focus is about the flat files then one can set it in file properties while creating a mapping or at the session level in session properties

What is meant by "DW? E2, is Enterprise 2atawarehouse which means that its a centralised 2, for the whole organi)ation. this apporach is the apporach on Imon which relies on the point of having a single warehouse'centralised where the !imball apporach says to have seperate data marts for each vertical'department. &dvantages of having a E2,* ". Holbal view of the 2ata 2. -ame point of source of data for all the users acroos the organi)ation. 9. able to perform consistent analysis on a single 2ata ,arehouse. to over come is the time it ta!es to develop and also the management that is re3uired to build a centralised database. What is wor&let and what use of wor&let and in which situation we can use it

A set of worlflow tasks is called worklet) 5orkflow tasks means &7timer07decesion@7commandA7eventwaitK7eventriseN7mail etc (ut we r use diffrent situations $y usin" this only
How can u wor& with remote database in informatica?did u wor& directly by using remote connections? You can wor! with remote$

Gut you have to

.onfigure FT0 .onnection details I0 address /ser authentication What is data merging2 data cleansing2 sam!ling?

Cleansin"+888TO identify and remove the retundacy and inconsistency samplin"+ just smaple the data throu" send the data from source to tar"et

%ata mer"in"+ It is a process of com$inin" the data with similar structures in to a sin"le output %ata Cleansin"+ It is a process of identifyin" and rectifyin" the inconsistent and inaccurate data into consistent and accurate data %ata Samplin"+It is the process of sample $y sendin" the data from source to tar"et
What is the e#act meaning of domain?

%omain is nothin" $ut "ive a comlete information on a particular su$ject area like sales domain)telecom domain etc

The 4owerCenter domain is the fundamental administrative unit in 4owerCenter The domain supports the administration of the distri$uted services A domain is a collection of nodes and services that you can "roup in folders $ased on administration ownership
I ha$e an re,uirement where in the columns names in a table (0able ') should a!!ear in rows of target table (0able 9) i.e. con$erting columns to rows. Is it !ossible through Informatica? If so2 how? if data in tables as follows Table & Ley?" char798 table & values >>>>>>> " 2 9 Table G b!ey?a char798 bcode char7"8 table b values "T "& "H 2& 2T 2B

9& and output re3uired is as "$ T$ & 2$ &$ T$ B 9$ & the -4B 3uery in source 3ualifier should be select !ey>"$ ma17decode7 bcode$ +T+$ bcode$ null 88 t>code$ ma17decode7 bcode$ +&+$ bcode$ null 88 a>code$ ma17decode7 bcode$ +B+$ bcode$ null 88 l>code from a$ b where a.!ey>" J b.b!ey>a group by !ey>" What r the acti$e and !assi$e transforamtions?

Transformations can $e active or passive An active transformation can chan"e the num$er of rows that pass throu"h it) such as a *ilter transformation that removes rows that do not meet the filter condition A passive transformation does not chan"e the num$er of rows that pass throu"h it) such as an 2xpression transformation that performs a calculation on data and passes all rows throu"h the transformation

In an active transformations the no of outputs will $e less than the no of inputs in an passive transformation the no of oputputs e!uals the no of inputs
What r the tas&s that source ,ualifier !erforms? @oin data originating from the same source database. You can %oin two or more tables with primary?foreign !ey relationships by lin!ing the sources to one -ource 4ualifier. Filter records when the Informatica -erver reads source data. If you include a filter condition$ the Informatica -erver adds a ,MERE clause to the default 3uery. -pecify an outer %oin rather than the default inner %oin. If you include a user?defined %oin$ the Informatica -erver replaces the %oin information specified by the metadata in the -4B 3uery. -pecify sorted ports. If you specify a number for sorted ports$ the Informatica -erver adds an 5R2ER GY clause to the default -4B 3uery. -elect only distinct values from the source. If you choose -elect 2istinct$ the Informatica -erver adds a -EBE.T 2I-TI(.T statement to the default -4B 3uery. .reate a custom 3uery to issue a special -EBE.T statement for the Informatica -erver to read source data. For e1ample$ you might use a custom 3uery to perform aggregate calculations or e1ecute a stored procedure. What is 0ransaction?

Transaction is a logical unit of wor! that comprises one or more s3l statements e1ecuted by a single user *an we run a grou! of sessions without using wor&flow manager ya Its 0osible using pmcmd .ommand with out using the wor!flow 6anager run the group of session. as per my !nowledge i give the answer. *an u tell me how to go for :*D;s and its ty!es.Where do we use them mostly The F-lowly .hanging 2imensionF problem is a common one particular to data warehousing. In a nutshell$ this applies to cases where the attribute for a record varies over time. ,e give an e1ample below* .hristina is a customer with &G. Inc. -he first lived in .hicago$ Illinois. -o$ the original entry in the customer loo!up table has the following record* .ustomer Ley (ame -tate "##" .hristina Illinois&t a later date$ she moved to Bos &ngeles$ .alifornia on @anuary$ 2##9. Mow should &G. Inc. now modify its customer table to reflect this changeE This is the F-lowly .hanging 2imensionF problem. There are in general three ways to solve this type of problem$ and they are categori)ed as follows* In Type " -lowly .hanging 2imension$ the new information simply overwrites the original information. In other words$ no history is !ept. In our e1ample$ recall we originally have the following table* .ustomer Ley (ame -tate "##" .hristina Illinois&fter .hristina moved from Illinois to .alifornia$ the new information replaces the new record$ and we have the following table* .ustomer Ley (ame -tate "##" .hristina .alifornia&dvantages* ? This is the easiest way to handle the -lowly .hanging 2imension problem$ since there is no need to !eep trac! of the old information. 2isadvantages* ? &ll history is lost. Gy applying this methodology$ it is not possible to trace bac! in history. For e1ample$ in this case$ the company would not be able to !now that .hristina lived in Illinois before. /sage* &bout :#N of the time. ,hen to use Type "* Type " slowly changing dimension should be used when it is not necessary for the data warehouse to !eep trac! of historical changes. In Type 2 -lowly .hanging 2imension$ a new record is added to the table to represent the new information. Therefore$ both the original and the new record will be present. The new record gets its own primary !ey. In our e1ample$ recall we originally have the following table* .ustomer Ley (ame -tate "##" .hristina Illinois&fter .hristina moved from Illinois to .alifornia$ we add the new information as a new row into the table* .ustomer Ley (ame -tate "##" .hristina Illinois "##: .hristina .alifornia&dvantages* ? This allows us to accurately !eep all historical information. 2isadvantages* ? This will cause the si)e of the table to grow fast. In cases where the number of rows for the table is very high to start with$ storage and performance can become a concern. ? This necessarily complicates the ETB process. /sage* &bout :#N of the time. ,hen to use Type 2* Type 2 slowly changing dimension should be used when it is necessary for the data warehouse to trac! historical changes. In Type 9 -lowly .hanging 2imension$ there will be two columns to indicate the particular attribute of interest$ one indicating the original value$ and one indicating the current value. There will also be a column that indicates when the current value becomes active. In our e1ample$ recall we originally have the following table* .ustomer Ley (ame -tate"##" .hristina IllinoisTo accomodate Type 9 -lowly .hanging 2imension$ we will now have the following columns* E .ustomer Ley E (ame E 5riginal -tate E .urrent -tate E Effective 2ate &fter .hristina moved from Illinois to .alifornia$ the original information gets updated$ and we have the following table 7assuming the effective date of change is @anuary ":$ 2##98* .ustomer Ley (ame 5riginal -tate .urrent -tate Effective 2ate "##" .hristina Illinois .alifornia ":?@&(?2##9&dvantages* ? This does not increase the si)e of the table$ since new information is updated. ? This allows us to !eep some part of history. 2isadvantages* ? Type 9 will not be able to !eep all history where an attribute is changed more than once. For e1ample$ if .hristina later moves to Te1as on 2ecember ":$ 2##9$ the .alifornia

information will be lost. /sage* Type 9 is rarely used in actual practice. ,hen to use Type 9* Type III slowly changing dimension should only be used when it is necessary for the data warehouse to trac! historical changes$ and when such changes will only occur for a finite number of time. How can we -oin the tables if the tables ha$e no !rimary and forien &ey relation and no matchig !ort to -oin? without common column or common data type we can %oin two sources using dummy ports. ".&dd one dummy port in two sources. 2.In the e1pression trans assing +"+ to each port. 2./se @oiner transformation to %oin the sources using dummy port7use %oin conditions8. hope this will help. If you are wor&flow is running slow in informatica. Where do you start trouble shooting and what are the ste!s you follow?

5hen the work flow is runnin" slowly u have to find out the $ottlenecks in this order tar"et source mappin" session system
How to delete du!licate rows in flat files source is any o!tion in informatica

/se a sorter transformation ) in that u will have a GdistinctG option make use of it
What is ran& transformation?where can we use this transformation?

-ank transformation is used to find the status ex if we have one sales ta$le and in this if we find more employees sellin" the same product and we are in need to find the first K Dr &D employee who is sellin" more products we can "o for rank transformation
*an any body write a session !arameter file which will change the source and targets for e$ery session. i.e different source and targets for each session run.

.ou are supposed to define a parameter file And then in the 4arameter file) you can define two parameters) one for source and one for tar"et 3ive like this for example+ OSrcEfile : c+pro"ram filesinformaticaserverina$cEsource txt Ot"tEfile : c+ ar"etsa$cEtar"ets txt Then "o and define the parameter file+ PfolderEname 5*+workflowEname ST+sEsessionEnameQ OSrcEfile :c+pro"ram filesinformaticaserverina$cEsource txt Ot"tEfile : c+ ar"etsa$cEtar"ets txt If its a relational d$) you can even "ive an overridden s!l at the session level as a parameter 'ake sure the s!l is in a sin"le line
How to retri$e the records from a re-ected file. e#!lane with synta# or e#am!le

%urin" the execution of workflow all the rejected rows will $e stored in $ad files6where your informatica server "et installedHC+4ro"ram *ilesInformatica 4owerCenter 7 &Server7 These $ad files can $e imported as flat a file in source then thro? direct mapin" we can load these files in desired format
*an u start a batches with in a batch? / 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. What is e#act use of ;/nline; and ;/ffline; ser$er connect /!tions while defining Wor& flow in Wor& flow monitor? . 0he system hangs when ;/nline; ser$er connect o!tion. 0he Informatica is installed on a ersonal la!to!.

5hen the repo is up and the 4'S2-F2- is also up) workflow monitor always will $e connected on8line 5hen 4'server is down and the repo is still up we will $e prompted for an off8line connection with which we can just monitor the workflows
What r the tas&s that source ,ualifier !erforms?

Moin data ori"inatin" from the same source data$ase .ou can join two or more ta$les with primary8forei"n key relationships $y linkin" the sources to one Source 1ualifier *ilter records when the Informatica Server reads source data If you include a filter condition) the Informatica Server adds a 5C2-2 clause to the default !uery Specify an outer join rather than the default inner join If you include a user8defined join) the

Informatica Server replaces the join information specified $y the metadata in the S1> !uery Specify sorted ports If you specify a num$er for sorted ports) the Informatica Server adds an O-%2- (. clause to the default S1> !uery Select only distinct values from the source If you choose Select %istinct) the Informatica Server adds a S2>2CT %ISTI<CT statement to the default S1> !uery Create a custom !uery to issue a special S2>2CT statement for the Informatica Server to read source data *or example) you mi"ht use a custom !uery to perform a""re"ate calculations or execute a stored procedure

Potrebbero piacerti anche