Informatica Ray

download Informatica Ray

of 79

Transcript of Informatica Ray

  • 8/10/2019 Informatica Ray

    1/79

    InformaticaQuestionnaire

    1. What are the components of Informatica? And what is the purpose of each?

    Ans: Informatica Designer, Server Manager & Repository Manager. Designer for Creating Source & Target definitions, CreatiMapplets and Mappings etc. Server Manager for creating sessions & atc!es, Sc!eduling t!e sessions & atc!es, Monitoring t!triggered sessions and atc!es, giving post and pre session commands, creating dataase connections to various instances eRepository Manage for Creating and Adding repositories, Creating & editing folders "it!in a repository, #stalis!ing users, groupprivileges & folder permissions, Copy, delete, ac$up a repository, %ie"ing t!e !istory of sessions, %ie"ing t!e loc$s on variouoects and removing t!ose loc$s etc.

    2. What is a repository? And how to add it in an informatica client?

    Ans: It's a location "!ere all t!e mappings and sessions related information is stored. (asically it's a dataase "!ere t!e metadaresides. )e can add a repository t!roug! t!e Repository manager.

    3. Name at least 5 different types of transformations used in mapping design and state the use of each.

    Ans: Source *ualifier + Source *ualifier represents all data ueries from t!e source, #-pression + #-pression performs simpcalculations,ilter + ilter serves as a conditional filter,/oo$up + /oo$up loo$s up values and passes to ot!er oects,Aggregator 0 Aggregator performs aggregate calculations.

    4. ow can a transformation !e made reusa!le?

    Ans: In t!e edit properties of any transformation t!ere is a c!ec$ o- to ma$e it reusale, y c!ec$ing t!at it ecomes reusale. 1ocan even create reusale transformations in Transformation developer.

    5. ow are the sources and targets definitions imported in informatica designer? ow to create "arget definition for flfiles?

    Ans: )!en you are in source analy2er t!ere is a option in main menu to Import t!e source from Dataase, lat ile, Cool ile & 3Mfile, y selecting any one of t!em you can import a source definition. )!en you are in )are!ouse Designer t!ere is an option in mamenu to import t!e target from Dataase, 3M/ from ile and 3M/ from sources you can select any one of t!ese.T!ere is no "ay to import target definition as file in Informatica designer. So "!ile creating t!e target definition for a file in t!"are!ouse designer it is created considering it as a tale, and t!en in t!e session properties of t!at mapping it is specified as file.

    #. $%plain what is s&l o'erride for a source ta!le in a mapping.

    Ans: T!e Source *ualifier provides t!e S*/ *uery option to override t!e default uery. 1ou can enter any S*/ statement supportedy your source dataase. 1ou mig!t enter your o"n S#/#CT statement, or !ave t!e dataase perform aggregate calculations, or cala stored procedure or stored function to read t!e data and perform some tas$s.

    (. What is loo)up o'erride?

    Ans: T!is feature is similar to entering a custom uery in a Source *ualifier transformation. )!en entering a /oo$up S*/ 4verridyou can enter t!e entire override, or generate and edit t!e default S*/ statement.T!e loo$up uery override can include )5#R# clause.

    *. What are mapplets? ow is it different from a +eusa!le "ransformation?

    Ans: A mapplet is a reusale oect t!at represents a set of transformations. It allo"s you to reuse transformation logic and can contaas many transformations as you need. 1ou create mapplets in t!e Mapplet Designer.

    Its different t!an a reusale transformation as it may contain a set of transformations, "!ile a reusale transformation is a single one.

    ,. ow to use an oracle se&uence generator in a mapping?

    Ans: )e !ave to "rite a stored procedure, "!ic! can ta$e t!e seuence name as input and dynamically generates a ne-tval from t!seuence. T!en in t!e mapping "e can use t!at stored procedure t!roug! a procedure transformation.

    1-. What is a session and how to create it?

    Ans: A session is a set of instructions t!at tells t!e Informatica Server !o" and "!en to move data from sources to targets. 1ou creatand maintain sessions in t!e Server Manager.

    INTERNAL

    6

  • 8/10/2019 Informatica Ray

    2/79

    11. ow to create the source and target data!ase connections in ser'er manager?

    Ans: In t!e main menu of server manager t!ere is menu 7Server Configuration8, in t!at t!ere is t!e menu 7Dataase connectionsrom !ere you can create t!e Source and Target dataase connections.

    12. Where are the source flat files )ept !efore running the session?

    Ans: T!e source flat files can e $ept in some folder on t!e Informatica server or any ot!er mac!ine, "!ic! is in its domain.

    13. What are the oracle /0 commands possi!le through an update strategy?

    Ans: dd9insert, dd9update, dd9delete & dd9reect.

    14. ow to update or delete the rows in a target which do not ha'e )ey fields?

    Ans: To pdate a tale t!at does not !ave any ;eys "e can do a S*/ 4verride of t!e Target Transformation y specifying t!e )5#Rconditions e-plicitly. Delete cannot e done t!is "ay. In t!is case you !ave to specifically mention t!e ;ey for Target tale definition ot!e Target transformation in t!e )are!ouse Designer and delete t!e ro" using t!e pdate Strategy transformation.

    15. What is option !y which we can run all the sessions in a !atch simultaneously?Ans: In t!e atc! edit o- t!ere is an option called concurrent. (y c!ec$ing t!at all t!e sessions in t!at (atc! "ill run concurrently.

    1#. Informatica settings are a'aila!le in which file?Ans: Informatica settings are availale in a file pmdesign.ini in )indo"s folder.

    1(. ow can we oin the records from two heterogeneous sources in a mapping?Ans: (y using a oiner.

    1*. ifference !etween onnected nconnected loo)6up.

    Ans: An unconnected /oo$up transformation e-ists separate from t!e pipeline in t!e mapping. 1ou "rite an e-pression using t!e :/;reference ualifier to call t!e loo$up "it!in anot!er transformation. )!ile t!e connected loo$up forms a part of t!e "!ole flo" mapping.

    1,. ifference !etween 0oo)up "ransformation nconnected 7tored 8rocedure "ransformation 9 Which one is faster ?

    2-. ompare +outer :s ;ilter 7ource

  • 8/10/2019 Informatica Ray

    3/79

    Refres! m vie"s 6.on commit and ?. on demand=Complete, never, fast, force>

    2.What is !itmap inde% why its used for W?

    A itmap for eac! $ey value replaces a list of ro"ids. (itmap inde- more efficient for data "are!ousing ecause lo" cardinality, lo"updates, very efficient for "!ere class3.What is star schema? And what is snowfla)e schema?

    T!e center of t!e star consists of a large fact tale and t!e points of t!e star are t!e dimension tales.

    Sno"fla$e sc!emas normali2ed dimension tales to eliminate redundancy. T!at is, t!eDimension data !as een grouped into multiple tales instead of one large tale.

    Star sc!ema contains demorali2ed dimension tales and fact tale, eac! primary $ey values in dimension tale associated "it! foreig$ey of fact tales.5ere a fact tale contains all usiness measures =normally numeric data> and foreign $ey values, and dimension tales !as detailsaout t!e suect area.

    Sno"fla$e sc!ema asically a normali2ed dimension tales to reduce redundancy in t!e dimension tales

    4.Why need staging area data!ase for W?

    Staging area needs to clean operational data efore loading into data "are!ouse.Cleaning in t!e sense your merging data "!ic! comes from different source

    5.What are the steps to create a data!ase in manually?

    create os service and create init file and start data ase no mount stage t!en give create data ase command.

    #.ifference !etween F0"8 and W?

    4/T< system is asically application orientation =eg, purc!ase order it is functionality of an application>)!ere as in D)5 concern is suect orient =suect in t!e sense custorer, product, item, time>F0"8@ Application 4riented@ sed to run usiness@ Detailed data@ Current up to date

    @ Isolated Data@ Repetitive access@ Clerical ser @ @ Redundancy present@ Dataase Si2e 6 ( 0 fe" teraytes

    (.Why need data warehouse?

    A single, complete and consistent store of data otained from a variety of different sources made availale to end users in a "!at t!ecan understand and use in a usiness conte-t.

    A process of transforming data into information and ma$ing it availale to users in a timely enoug! manner to ma$e a differenceInformation

    INTERNAL

    E

  • 8/10/2019 Informatica Ray

    4/79

    Tec!niue for assemling and managing data from various sources for t!e purpose of ans"ering usiness uestions. T!us ma$ingdecisions t!at "ere not previous possile

    *.What is difference !etween data mart and data warehouse?

    A data mart designed for a particular line of usiness, suc! as sales, mar$eting, or finance.

    )!ere as data "are!ouse is enterprise0"ideorgani2ational

    T!e data flo" of data "are!ouse depending on t!e approac!

    ,.What is the significance of surrogate )ey?

    Surrogate $ey used in slo"ly c!anging dimension tale to trac$ old and ne" values and it's derived from primary $ey.

    1-.What is slowly changing dimension. What )ind of scd used in your proect?

    Dimension attriute values may c!ange constantly over t!e time. =Say for e-ample customer dimension !as customer9id,name, andaddress> customer address may c!ange over time.5o" "ill you !andle t!is situationFT!ere are E types, one is "e can over"rite t!e e-isting record, second one is create additional ne" record at t!e time of c!ange "it!t!e ne" attriute values.T!ird one is create ne" field to $eep ne" values in t!e original dimension tale.

    11.What is difference !etween primary )ey and uni&ue )ey constraints?

    from =select salary from employee order y salary>)!ere ro"numH

    1(.When you gi'e an update statement how undo>roll!ac) segment will wor)>what are the steps?

    4racle $eep old values in undo segment and ne" values in redo entries. )!en you say rollac$ it replace old values from undosegment. )!en you say commit erase t!e undo segment values and $eep ne" vales in permanent.

    Informatica Administration

    1*.What is "/? ow will you configure it?

    DTM transform data received from reader uffer and its moves transformation to transformation on ro" y ro" asis and it usetransformation cac!es "!en necessary.

    1,.@ou transfer 1----- rows to target !ut some rows get discard how will you trace them? And where its get loaded?

    Reected records are loaded into ad files. It !as record indicator and column indicator.

    INTERNAL

    J

  • 8/10/2019 Informatica Ray

    5/79

    Record indicator identified y =0insert,60update,?0delete,E0reect> and column indicator identified y =D0valid,40overflo",B0null,T0truncated>.

    Bormally data may get reected in different reason due to transformation logic

    2-.What are the different uses of a repository manager?

    Repository manager used to create repository "!ic! contains metadata t!e informatica uses to transform data from source target. And also it use to create informatica user's and folders and copy, ac$up and restore t!e repository

    21.ow do you ta)e care of security using a repository manager?

    sing repository privileges, folder permission and loc$ing.

    Repository privileges=Session operator, se designer, (ro"se repository, Create session and atc!es, Administer repository,administer server, super user>

    older permission=o"ner, groups, users>

    /oc$ing=Read, )rite, #-ecute, etc!, Save>

    22.What is a folder?

    older contains repository oects suc! as sources, targets, mappings, transformation "!ic! are !elps logically organi2e our da"are!ouse.

    23.an you create a folder within designer?

    Bot possile

    24.What are shortcuts? Where it can !e used? What are the ad'antages?

    T!ere are ? s!ortcuts=/ocal and gloal> /ocal used in local repository and gloal used in gloal repository. T!e advantage is reuse aoect "it!out creating multiple oects. Say for e-ample a source definition "ant to use in 6 mappings in 6 different folder "it!outcreating 6 multiple source you create 6 s!otcuts.

    25.ow do you increase the performance of mappings?

    se single pass read=use one source ualifier instead of multiple S* for same tale>Minimi2e data type conversion =Integer to Decimal again ac$ to Integer>4ptimi2e transformation="!en you use /oo$up, aggregator, filter, ran$ and oiner>se cac!es for loo$upAggregator use presorted port, increase cac!e si2e, minimi2e inputout port as muc! as possilese ilter "!erever possile to avoid unnecessary data flo"

    2#.$%plain Informatica Architecture?

    Informatica consist of client and server. Client tools suc! as Repository manager, Designer, Server manager. Repository daase contains metadata it read y informatica server used read data from source, transforming and loading into target.

    2(.ow will you do sessions partitions?

    It's not availale in po"er part J.K

    "ransformation

    2*.What are the constants used in update strategy?

    DD9IBS#RT, DD9

  • 8/10/2019 Informatica Ray

    6/79

    Connected supports dynamic cac!es "!ere as unconnected supports static

    3-.What you will do in session le'el for update strategy transformation?

    In session property s!eet set Treat ro"s as 7Data Driven8

    31.What are the port a'aila!le for update strategy se&uence generator 0oo)up stored procedure transformation?

    Transformations

  • 8/10/2019 Informatica Ray

    7/79

    42.What is loo)up and difference !etween types of loo)up. What e%actly happens when a loo)up is cached. ow does adynamic loo)up cache wor).

    /oo$up transformation used for c!ec$ values in t!e source and target tales=primary $ey values>.T!ere are ? type connected and unconnected transformationConnected loo$up returns multiple values if condition true)!ere as unconnected return a single values t!roug! return port.Connected loo$up return default user value if t!e condition does not mac!)!ere as unconnected return null values

    /oo$up cac!e does:Read t!e sourcetarget tale and stored in t!e loo$up cac!e43.What is a oiner transformation?

    sed for !eterogeneous sources=A relational source and a flat file>Type of oins:Assume ? tales !as values=Master 0 6, ?, E and Detail 0 6, E, J>

    Bormal=If t!e condition mac! ot! master and detail tales t!en t!e records "ill e displaced. Result set 6, E>Master 4uter=It ta$es all t!e ro"s from detail tale and mac!ing ro"s from master tale. Result set 6, E, J>Detail 4uter=It ta$es all t!e values from master source and mac!ing values from detail tale. Result set 6, ?, E>ull 4uter=It ta$es all values from ot! tales>

    44.What is aggregator transformation how will you use in your proect?

    sed perform aggregate calculation on group of records and "e can use conditional clause to filter data

    45.an you use one mapping to populate two ta!les in different schemas?

    1es "e can use

    4#.$%plain loo)up cache 'arious caches?

    /oo$up transformation used for c!ec$ values in t!e source and target tales=primary $ey values>.

    :arious achesC

    8ersistent cache="e can save t!e loo$up cac!e files and reuse t!em t!e ne-t time process t!e loo$up transformation>

    +e6cache from data!ase=If t!e persistent cac!e not sync!roni2ed "it! loo$up tale you can configure t!e loo$up transformatioto reuild t!e loo$up cac!e>

    7tatic cache =)!en t!e loo$up condition is true, Informatica server return a value from loo$up cac!e and it's does not update t!cac!e "!ile it processes t!e loo$up transformation>

    ynamic cache=Informatica server dynamically inserts ne" ro"s or update e-isting ro"s in t!e cac!e and t!e target. Suppose"e "ant loo$up a target tale "e can use dynamic cac!e>

    7hared cache="e can s!are loo$up transformation et"een multiple transformations in a mapping. ? loo$up in a mapping cas!are single loo$up cac!e>

    4(.Which path will the cache !e created?

    ser specified directory. If "e say c:N all t!e cac!e files created in t!is directory.

    4*.Where do you specify all the parameters for loo)up caches?

    /oo$up property s!eetta.

    4,.ow do you remo'e the cache files after the transformation?

    After session complete, DTM remove cac!e memory and deletes cac!es files.In case using persistent cac!e and Incremental aggregation t!en cac!es files "ill e saved.

    5-.What is the use of aggregator transformation?

    To perform Aggregate calculation

    INTERNAL

    K

  • 8/10/2019 Informatica Ray

    8/79

    se conditional clause to filter data in t!e e-pression Sum=commission, Commission O?>

    se non0aggregate function iif =ma-=uantity> O , Ma-=uantitiy>, >>

    51.What are the contents of inde% and cache files?

    Inde- cac!es files !old uniue group values as determined y group y port in t!e transformation.

    Data cac!es files !old ro" data until it performs necessary calculation.

    52.ow do you call a store procedure within a transformation?

    In t!e e-pression transformation create ne" out port in t!e e-pression "rite :sp.stored procedure name=arguments>

    53.Is there any performance issue in connected unconnected loo)up? If yes ow?

    1es

    nconnected loo$up muc! more faster t!an connected loo$up "!y ecause in unconnected not connected to any ot!transformation "e are calling it from ot!er transformation so it minimi2e loo$up cac!e value

    )!ere as connected transformation connected to ot!er transformation so it $eeps values in t!e loo$up cac!e.

    54.What is dynamic loo)up?

    )!en "e use target loo$up tale, Informatica server dynamically insert ne" values or it updates if t!e values e-ist and passes target tale.

    55.ow Informatica read data if source ha'e one relational and flat file?

    se oiner transformation after source ualifier efore ot!er transformation.

    5#.ow you will load uni&ue record into target flat file from source flat files has duplicate data?

    T!ere are ? "e can do t!is eit!er "e can use Ran$ transformation or oracle e-ternal taleIn ran$ transformation using group y port =roup t!e records> and t!en set no. of ran$ 6. Ran$ transformation return one value fromt!e group. T!at t!e values "ill e a uniue one.

    5(.an you use flat file for repository?

    Bo, )e cant

    5*.an you use flat file for loo)up ta!le?

    Bo, )e cant

    5,.Without 7ource

    #2.When we use router transformation?

    INTERNAL

    P

  • 8/10/2019 Informatica Ray

    9/79

    )!en "e "ant perform multiple condition to filter out data t!en "e go for router. =Say for e-ample source records filtcondition mac! 6 records remaining J records get filter out ut still "e "ant perform fe" more filter condition to filter remaining Jrecords.>

    #3.ow did you schedule sessions in your proect?

    Run once =set ? parameter date and time "!en session s!ould start>

    Run #very =Informatica server run session at regular interval as "e configured, parameter Days, !our, minutes, end on, end after,forever>

    Customi2ed repeat =Repeat every ? days, daily freuency !r, min, every "ee$, every mont!>

    Run only on demand=Manually run> t!is not session sc!eduling.

    #4.ow do you use the pre6sessions and post6sessions in sessions wiEard what for they used?

    8ost6sessionused for email option "!en t!e session successfailure send email. or t!at "e s!ould configureStep6. S!ould !ave a informatica startup account and create outloo$ profile for t!at userStep?. Configure Microsoft e-c!ange server in mail o- applet=control panel>StepE. Configure informatica server miscellaneous ta !ave one option called MS e-c!ange profile "!ere "e !ave specify t!

    outloo$ profile name.

    8re6sessionused for even sc!eduling =Say for e-ample "e don't $no" "!et!er source file availale or not in particular directoror t!at "e "rite one D4S command to move file directory to destination and set event ased sc!eduling option in session propers!eet Indicator file "ait for>.

    #5.What are different types of !atches. What are the ad'antages and dis6ad'antages of a concurrent !atch?

    Seuential=Run t!e sessions one y one>

    Concurrent =Run t!e sessions simultaneously>

    Ad'antage of concurrent !atch:

    It's ta$es informatica server resource and reduce time it ta$es run session separately.se t!is feature "!en "e !ave multiple sources t!at process large amount of data in one session. Split sessions and put into oneconcurrent atc!es to complete uic$ly.

    isad'antage

    Reuire more s!ared memory ot!er"ise session may get failed

    ##.ow do you handle a session if some of the records fail. ow do you stop the session in case of errors. an it !eachie'ed in mapping le'el or session le'el?

    It can e ac!ieved in session level only. In session property s!eet, log files ta one option is t!e error !andling Stop on 000000 errors.(ased on t!e error "e set informatica server stop t!e session.

    #(.ow you do impro'e the performance of session.

    If "e use Aggregator transformation use sorted port, Increase aggregate cac!e si2e, se filter efore aggregation so t!at minimi2e unnecessary aggregation.

    /oo$up transformation use loo$up cac!es

    Increase DTM s!ared memory allocation

    #liminating transformation errors using lo"er tracing level=Say for e-ample a mapping !as transformation "!en transformationerror occur informatica server !as to "rite in session log file it affect session performance>

    #*.$%plain incremental aggregation. Will that increase the performance? ow?

    Incremental aggregation capture "!atever c!anges made in source used for aggregate calculation in a session, rat!er t!anprocessing t!e entire source and recalculating t!e same calculation eac! time session run. T!erefore it improve session performance

    Fnly use incremental aggregation following situationC

    Mapping !ave aggregate calculation

    INTERNAL

    Q

  • 8/10/2019 Informatica Ray

    10/79

    Source tale c!anges incrementallyiltering source incremental data y time stamp

    Gefore Aggregation ha'e to do following stepsC

    se filter transformation to remove pre0e-isting records

    +einitialiEe aggregate cache"!en source tale completely c!anges for e-ample incremental c!anges !apping daily and completec!anges !appenings mont!ly once. So "!en t!e source tale completely c!ange "e !ave reinitiali2e t!e aggregate cac!e andtruncate target tale use ne" source tale. C!oose Reinitiali2e cac!e in t!e aggregation e!avior in transformation ta

    #,.oncurrent !atches ha'e 3 sessions and set each session run if pre'ious complete !ut 2nd fail then what will happen th!atch?

    (atc! "ill fail

    eneral 8roect

    (-. ow many mapping dimension ta!les ;act ta!les and any comple% mapping you did? And what is your data!ase siEehow fre&uently loading to W?

    I did ?? Mapping, J dimension tale and one fact tale. 4ne comple- mapping I did for slo"ly c!anging dimension tale. Dataasesi2e is Q(. /oading data every day(1. What are the different transformations used in your proect?

    Aggregator, #-pression, ilter, Seuence generator, pdate Strategy, /oo$up, Stored

  • 8/10/2019 Informatica Ray

    11/79

    *1.ata flow of your ata warehouseBArchitectureD

    D)5 is a asic arc!itecture =4/T< to Data "are!ouse from D)5 4/A< analytical and report uilding.

    *2.ifference !etween 8ower part and power center?

    sing po"er center "e can create gloal repository,i? Where you will use hash partition?

    In oraclePi t!ere are E partition =Range, 5as!, Composite>In 4racleQi /ist partition is additional one

    +ange =sed for Dates values for e-ample in D)5 = Date values are *uarter 6, *uarter ?, *uarter E, *uaterJ>

    ash=sed for unpredictale values say for e-ample "e cant ale predict "!ic! value to allocate "!ic! partition t!en "e go for !as!partition. If "e set partition for a column oracle allocate values into partition accordingly>.

    0ist=sed for literal values say for e-ample a country !ave ?J states create ?J partition for ?J states eac!>

    omposite=Comination of range and !as!>

    ,1.What is main difference mapplets and mapping?

    Reuse t!e transformation in several mappings, "!ere as mapping not li$e t!at.

    If any c!anges made in mapplets it automatically in!erited in all ot!er instance mapplets.

    ,2. What is difference !etween the source &ualifier filter and filter transformation?Source ualifier filter only used for relation source "!ere as ilter used any $ind of source.

    Source ualifier filter data "!ile reading "!ere as filter efore loading into target.

    ,3. What is the ma%imum no. of return 'alue when we use unconnectedtransformation?

    4nly one.

    ,4. What are the en'ironments in which informatica ser'er can run on?

    INTERNAL

    66

  • 8/10/2019 Informatica Ray

    12/79

    Informatica client runs on )indo"s Q QP BT, ni- Solaris, ni- AI3=I(M>

    Informatica Server runs on )indo"s BT ni-

    Minimum 5ard"are reuirements

    Informatica Client 5ard dis$ JM(, RAM JM(

    Informatica Server 5ard Dis$ M(, RAM JM(

    ,5. an unconnected loo)up do e'erything a connected loo)up transformation can do?

    Bo, )e cant call connected loo$up in ot!er transformation. Rest of t!ings it's possile

    ,#. In 5.% can we copy part of mapping and paste it in other mapping?

    I t!in$ its possile

    ,(. What option do you select for a sessions in !atch so that the sessions run oneafter the other?

    )e !ave select an option called 7Run if previous completed8

    ,*. ow do you really )now that paging to dis) is happening while you are using a loo)up transformation? Assume youha'e access to ser'er?

    )e !ave collect performance data first t!en see t!e counters parameter loo$up9readtodis$ if it's greater t!an t!en it's read from dis

    Step6. C!oose t!e option 7Collect

  • 8/10/2019 Informatica Ray

    13/79

    se tracing level %erose data

    1-5. i'e a way in which you can implement a real time scenario where data in a ta!le is changing and you need to loo) updata from it. ow will you configure the loo)up transformation for this purpose?

    In slo"ly c!anging dimension tale use type ? and model 6

    1-#. What is "/ process? ow many threads it creates to process data e%plain eachthread in !rief?

    DTM receive data from reader and move data to transformation to transformation on ro" y ro" asis. It's create ? t!read one isreader and anot!er one is "riter

    1-(. 7uppose session is configured with commit inter'al of 1---- rows and source has 5---- rows e%plain the commitpoints for source !ased commit target !ased commit. Assume appropriate 'alue where'er re&uired?

    Target (ased commit =irst time (uffer si2e full K ne-t time 6>

    Commit #very 6, ??, E, J,

    Source (ased commit=Does not affect ro"s !eld in uffer>

    Commit #very 6, ?, E, J,

    1-*.What does first column of !ad file Breected rowsD indicates?

    irst Column 0 Ro" indicator =, 6, ?, E>

    Second Column + Column Indicator =D, 4, B, T>

    1-,. What is the formula for calculation ran) data caches? And also Aggregator data inde% caches?

    Inde- cac!e si2e G Total no. of ro"s si2e of t!e column in t!e loo$up condition = J>

    AggregatorRan$ transformation Data Cac!e si2e G =Total no. of ro"s si2e of t!e column in t!e loo$up condition> =Total no. of ro"s si2e of t!e connected output ports>

    11-. an unconnected loo)up return more than 1 'alue? Bo

    IN;F+/A"IA "+AN7;F+/A"IFN7

    Aggregator

    #-pression

    #-ternal

  • 8/10/2019 Informatica Ray

    14/79

    $%pression "ransformation

    - 1ou can use #T to calculate values in a single ro" efore you "rite to t!e target- 1ou can use #T, to perform any non0aggregate calculation- To perform calculations involving multiple ro"s, suc! as sums of averages, use t!e Aggregator. nli$e #T t!e Aggregator

    Transformation allo" you to group and sort data

    alculation

    To use t!e #-pression Transformation to calculate values for a single ro", you must include t!e follo"ing ports.- Input port for eac! value used in t!e calculation

    - 4utput port for t!e e-pressionNF"$

    1ou can enter multiple e-pressions in a single #T. As long as you enter only one e-pression for eac! port, you can create any numer output ports in t!e #-pression Transformation. In t!is "ay, you can use one e-pression transformation rat!er t!an creating separatransformations for eac! calculation t!at reuires t!e same set of data.7e&uence enerator "ransformation

    - Create $eys- Replace missing values- T!is contains t"o output ports t!at you can connect to one or more transformations. T!e server generates a value eac! time a

    ro" enters a connected transformation, even if t!at value is not used.- T!ere are t"o parameters B#3T%A/, CRR%A/- T!e ST can e reusale- 1ou can not edit any default ports =B#3T%A/, CRR%A/>

    7" 8roperties- Start value- Increment (y- #nd value- Current value- Cycle =If selected, server cycles t!roug! seuence range. 4t!er"ise,

    Stops "it! configured end value>- Reset- Bo of cac!ed values

    NF"$- Reset is disaled for Reusale ST- nli$e ot!er transformations, you cannot override ST properties at session level. T!is protects t!e integrity of seuence values

    generated.Aggregator "ransformation

    ifference !etween Aggregator and $%pression "ransformation

    )e can use Aggregator to perform calculations on groups. )!ere as t!e #-pression transformation permits you to calculations oro"0y0ro" asis only.

    T!e server performs aggregate calculations as it reads and stores necessary data group and ro" data in an aggregator cac!e.

    )!en Incremental aggregation occurs, t!e server passes ne" source data t!roug! t!e mapping and uses !istorical cac!e data to performne" calculation incrementally.

    omponents- Aggregate #-pression- roup y port

    - Aggregate cac!e

    )!en a session is eing run using aggregator transformation, t!e server creates Inde- and data cac!es in memory to process t!etransformation. If t!e server reuires more space, it stores overflo" values in cac!e files.

    NF"$

    T!e performance of aggregator transformation can e improved y using 7Sorted Input option8. )!en t!is is selected, t!e server assumesall data is sorted y group.

    INTERNAL

    6J

  • 8/10/2019 Informatica Ray

    15/79

    Incremental Aggregation

    - sing t!is, you apply captured c!anges in t!e source to aggregate calculation in a session. If t!e source c!anges onlyincrementally and you can capture c!anges, you can configure t!e session to process only t!ose c!anges

    - T!is allo"s t!e sever to update t!e target incrementally, rat!er t!an forcing it to process t!e entire source and recalculate t!esame calculations eac! time you run t!e session.

    Steps:- T!e first time you run a session "it! incremental aggregation enaled, t!e server process t!e entire source.

    - At t!e end of t!e session, t!e server stores aggregate data from t!at session ran in t"o files, t!e inde- file and data file. Tserver creates t!e file in local directory.

    - T!e second time you run t!e session, use only c!anges in t!e source as source data for t!e session. T!e server t!en performt!e follo"ing actions:

    =6> or eac! input record, t!e session c!ec$s t!e !istorical information in t!e inde- file for a corresponding group, t!en:

    If it finds a corresponding group +

    T!e server performs t!e aggregate operation incrementally, using t!e aggregate data for t!at group, and savet!e incremental c!anges.

    #lse

    Server create a ne" group and saves t!e record data

    =?> )!en "riting to t!e target, t!e server applies t!e c!anges to t!e e-isting target.

    o pdates modified aggregate groups in t!e target

    o Inserts ne" aggregate data

    o Delete removed aggregate data

    o Ignores unc!anged aggregate data

    o Saves modified aggregate data in Inde-Data files to e used as !istorical data t!e ne-t time you run t!e session.

    #ac! Suseuent time you run t!e session "it! incremental aggregation, you use only t!e incremental source c!anges in t!e session.

    If t!e source c!anges significantly, and you "ant t!e server to continue saving t!e aggregate data for t!e future incremental c!angeconfigure t!e server to over"rite e-isting aggregate data "it! ne" aggregate data.

    se Incremental Aggregator Transformation 4nly I:

    - Mapping includes an aggregate function- Source c!anges only incrementally

    - 1ou can capture incremental c!anges. 1ou mig!t do t!is y filtering source data y timestamp.

    $%ternal 8rocedure "ransformation

    - )!en Informatica's transformation does not provide t!e e-act functionality "e need, "e can develop comple- functions "it! indynamic lin$ lirary or ni- s!ared lirary.

    - To otain t!is $ind of e-tensiility, "e can use Transformation #-c!ange =T3> dynamic invocation interface uilt into

  • 8/10/2019 Informatica Ray

    16/79

    o T!is allo"s an #-ternal procedure to e references in a mappingy adding an instance of an #-ternal

    - Supports C4M and Informatica Connected =or> unconnected.

    => Cac!ed =or> uncac!ed .

    If you cac!e t!e l$p tale , you can c!oose to use a dynamic or static cac!e . y default ,t!e /;< cac!e remains static adoesn't c!ange during t!e session ."it! dynamic cac!e ,t!e server inserts ro"s into t!e cac!e during t!e session ,informatirecommends t!at you cac!e t!e target tale as /oo$up .t!is enales you to loo$up values in t!e target and insert t!em if t!ey don't e-is

    1ou can configure a connected /;< to receive input directly from t!e mapping pipeline .=or> you can configure an unconnect/;< to receive input from t!e result of an e-pression in anot!er transformation.

    ifferences Getween onnected and nconnected 0oo)upC

    connected

    o Receives input values directly from t!e pipeline.

    o uses Dynamic or static cac!e

    o Returns multiple values

    o supports user defined default values.

    nconnected

    o Recieves input values from t!e result of /;< e-pression in anot!er transformation

    INTERNAL

    6

  • 8/10/2019 Informatica Ray

    17/79

    o se static cac!e only.

    o Returns only one value.

    o Doesn't supports user0defined default values.

    NF"$7

    o Common use of unconnected /;< is to update slo"ly c!anging dimension tales.

    o /oo$up components are

    =a> /oo$up tale. (> condition.

    0oo)up ta!les: T!is can e a single tale, or you can oin multiple tales in t!e same Dataase using a /oo$up uery override.1ou cimprove /oo$up initiali2ation time y adding an inde- to t!e /oo$up tale.

    0oo)up ports: T!ere are E ports in connected /;< transformation =I

  • 8/10/2019 Informatica Ray

    18/79

    7tored 8rocedure "ransformation

    - D(A creates stored procedures to automate time consuming tas$s t!at are too complicated for standard S*/ statements.

    - A stored procedure is a precompiled collection of transact S*/ statements and optional flo" control statements, similar to ae-ecutale script.

    - Stored procedures are stored and run "it! in t!e dataase. 1ou can run a stored procedure "it! #3#CT# S*/ statement in dataase client tool, ust as S*/ statements. (ut unli$e standard procedures allo" user defined variales, conditionstatements and programming features.

    sages of Stored

    Running a Stored

  • 8/10/2019 Informatica Ray

    19/79

    +an) "ransformation

    - T!is allo"s you to select only t!e top or ottom ran$ of data. 1ou can get returned t!e largest or smallest numeric value in a poor group.

    - 1ou can also use Ran$ Transformation to return t!e strings at t!e top or t!e ottom of a session sort order. During t!e session, tserver cac!es input data until it can perform t!e ran$ calculations.

    - Ran$ Transformation differs from MA3 and MIB functions, "!ere t!ey allo"s to select a group of topottom values, not ust onvalue.

    - As an acti'etransformation, Ran$ transformation mig!t c!ange t!e numer of ro"s passed t!roug! it.

    Ran$ Transformation

  • 8/10/2019 Informatica Ray

    20/79

    ;ilter "ransformation

    - As an active transformation, t!e ilter Transformation may c!ange t!e no of ro"s passed t!roug! it.

    - A filter condition returns TR#A/S# for eac! ro" t!at passes t!roug! t!e transformation, depending on "!et!er a ro" meet!e specified condition.

    - 4nly ro"s t!at return TR# pass t!roug! t!is filter and discarded ro"s do not appear in t!e session logreect files.

    - To ma-imi2e t!e session performance, include t!e ilter Transformation as close to t!e source in t!e mapping as possile.

    - T!e filter transformation does not allo" setting output default values.

    - To filter out ro" "it! B// values, use t!e ISB// and IS9S Target load order group numer

    => Source pipeline numer

    =c> Aggregate Ran$ oundary numer

    0og ;ile odes

    $rror odes escription

    (R 0 Related to reader process, including #R

  • 8/10/2019 Informatica Ray

    21/79

    =a> Inserted

    => pdated

    =c> Deleted

    =d> Reected

    7tatistics details

    =a> Reuested ro"s s!o"s t!e no of ro"s t!e "riter actually received for t!e specified operation

    => Applied ro"s s!o"s t!e numer of ro"s t!e "riter successfully applied to t!e target =)it!out #rror>

    =c> Reected ro"s s!o" t!e no of ro"s t!e "riter could not apply to t!e target

    =d> Affected ro"s s!o"s t!e no of ro"s affected y t!e specified operation

    etailed transformation statistics

    T!e server reports t!e follo"ing details for eac! transformation in t!e mapping

    =a> Bame of Transformation

    => Bo of I< ro"s and name of t!e Input source

    =c> Bo of 4< ro"s and name of t!e output target

    =d> Bo of ro"s dropped

    Tracing /evels

    Bormal 0 Initiali2ation and status information, #rrors encountered, Transformation errors, ro"s s$ipped, summarisession details =Bot at t!e level of individual ro"s>

    Terse 0 Init iali2ation information as "ell as error messages, and notif ication of reected data

    %erose Init 0 Addition to normal tracing, Bames of Inde-, Data files used and detailed transformation statistics.

    %erose Data 0 Addition to %erose Init, #ac! ro" t!at passes in to mapping detailed transformation statistics.

    B4T#

    )!en you enter tracing level in t!e session property s!eet, you override tracing levels configured for transformations in t!e mapping.

    INTERNAL

    ?6

  • 8/10/2019 Informatica Ray

    22/79

    /0"I80$ 7$+:$+7

    )it! Bon0atal #rrors

    It is an error t!at does not force t!e session to stop on its first occurrence. #stalis! t!e error t!res!old in t!e session prope

    s!eet "it! t!e stop on option. )!en you enale t!is option, t!e server counts Bon0atal errors t!at occur in t!e reader, "riter antransformations.

    Reader errors can include alignment errors "!ile running a session in nicode mode.

    )riter errors can include $ey constraint violations, loading B// into t!e B4T0B// field and dataase errors.

    Transformation errors can include conversion errors and any condition set up as an #RR4R,. Suc! as B// Input.

    => atal #rrors

    T!is occurs "!en t!e server can not access t!e source, target or repository. T!is can include loss of connection or targdataase errors, suc! as lac$ of dataase space to load data.

    If t!e session uses normali2er =or> seuence generator transformations, t!e server can not update t!e seuence values in t!repository, and a fatal error occurs.

    V 4t!ers

    sages of A(4RT function in mapping logic, to aort a session "!en t!e server encounters a transformation error.

    Stopping t!e server usingpmcmd =or>Server Manager

  • 8/10/2019 Informatica Ray

    23/79

    - Server commits data ased on t!e no of target ro"s and t!e $ey constraints on t!e target tale. T!e commit point also depenon t!e uffer loc$ si2e and t!e commit pinterval.

    - During a session, t!e server continues to fill t!e "riter uffer, after it reac!es t!e commit interval. )!en t!e uffer loc$ is full, t!Informatica server issues a commit command. As a result, t!e amount of data committed at t!e commit point generae-ceeds t!e commit interval.

    - T!e server commits data to eac! target ased on primary +foreign $ey constraints.

    => Source ased commit

    - Server commits data ased on t!e numer of source ro"s. T!e commit point is t!e commit interval you configure in t!e sessio

    properties.- During a session, t!e server commits data to t!e target ased on t!e numer of ro"s from an active source in a single pipelin

    T!e ro"s are referred to as source ro"s.

    - A pipeline consists of a source ualifier and all t!e transformations and targets t!at receive data from source ualifier.

    - Alt!oug! t!e ilter, Router and pdate Strategy transformations are active transformations, t!e server does not use t!em active sources in a source ased commit session.

    - )!en a server runs a session, it identifies t!e active source for eac! pipeline in t!e mapping. T!e server generates a commit rofrom t!e active source at every commit interval.

    - )!en eac! target in t!e pipeline receives t!e commit ro"s t!e server performs t!e commit.

    +eect 0oading

    During a session, t!e server creates a reect file for eac! target instance in t!e mapping. If t!e "riter of t!e target reects data, t!

    server "riters t!e reected ro" into t!e reect file.

    1ou can correct t!ose reected data and re0load t!em to relational targets, using t!e reect loading utility. =1ou cannot load reectedata into a flat file target>

    #ac! time, you run a session, t!e server appends a reected data to t!e reect file.

    /ocating t!e (adiles

    W

  • 8/10/2019 Informatica Ray

    24/79

    B Bull (ad Data.

    T Truncated (ad Data

    B4T#

    B// columns appear in t!e reect file "it! commas mar$ing t!eir column.

    orrecting +eect ;ile

    se t!e reect file and t!e session log to determine t!e cause for reected data.

    ;eep in mind t!at correcting t!e reect file does not necessarily correct t!e source of t!e reect.

    Correct t!e mapping and target dataase to eliminate some of t!e reected data "!en you run t!e session again.

    Trying to correct target reected ro"s efore correcting "riter reected ro"s is not recommended since t!ey may contain misleadincolumn indicator.

    or e-ample, a series of 7B8 indicator mig!t lead you to elieve t!e target dataase does not accept B// values, so you decide c!ange t!ose B// values to Xero.

    5o"ever, if t!ose ro"s also !ad a E in ro" indicator. Column, t!e ro" "as reected t!e "riter ecause of an update stratege-pression, not ecause of a target dataase restriction.

    If you try to load t!e corrected file to target, t!e "riter "ill again reect t!ose ro"s, and t!ey "ill contain inaccurate values, in place B// values.

    )!y "riter can reect F

    - Data overflo"ed column constraints

    - An update strategy e-pression

    )!y target dataase can Reect F

    - Data contains a B// column

    - Dataase errors, suc! as $ey violations

    Steps for loading reect file:

    - After correcting t!e reected data, rename t!e reected f ile to reect9file.in

    - T!e reloader used t!e data movement mode configured for t!e server. It also used t!e code page of server4S. 5ence do nc!ange t!e aove, in middle of t!e reect loading

    - se t!e reect loader utility

    Pmrejldr pmserver.cfg [folder name] [session name]

    4t!er points

    INTERNAL

    ?J

  • 8/10/2019 Informatica Ray

    25/79

    T!e server does not perform t!e follo"ing option, "!en using reect loader

    =a> Source ase commit

    => Constraint ased loading

    =c> Truncated target tale

    =d> T< targets

    =e> #-ternal /oading

    Multiple reect loaders

    1ou can run t!e session several times and correct reected data from t!e several session at once. 1ou can correct and load all of t!reect files at once, or "or$ on one or t"o reect files, load t!en and "or$ on t!e ot!er at a later time.

    $%ternal 0oading

    1ou can configure a session to use Syase I*, Teradata and 4racle e-ternal loaders to load session target files into t!e respectivdataases.

    T!e #-ternal /oader option can increase session performance since t!ese dataases can load information directly from files fastt!an t!ey can t!e S*/ commands to insert t!e same data into t!e dataase.

    Met!od:

    )!en a session used #-ternal loader, t!e session creates a control file and target flat file. T!e control file contains information aot!e target flat file, suc! as data format and loading instruction for t!e #-ternal /oader. T!e control file !as an e-tension of 7.ctl 7 an

    you can vie" t!e file in W

    4t!er Information:

    - T!e #-ternal /oader performance depends upon t!e platform of t!e server

    - T!e server loads data at different stages of t!e session

    - T!e serve "rites #-ternal /oader initiali2ation and completing messaging in t!e session log. 5o"ever, details aout #performance, it is generated at #/ log, "!ic! is getting stored as same target directory.

    - If t!e session contains errors, t!e server continues t!e #/ process. If t!e session fails, t!e server loads partial target data usin#/.

    - T!e #/ creates a reect file for data reected y t!e dataase. T!e reect file !as an e-tension of 7.ldr8 reect.

    - T!e #/ saves t!e reect file in t!e target file directory

    - 1ou can load corrected data from t!e file, using dataase reect loader, and not t!roug! Informatica reect load utility =or #/ reefile only>

    Configuring #/ in session

    - In t!e server manager, open t!e session property s!eet

    - Select ile target, and t!en clic$ flat file options

    aches

    INTERNAL

    ?

  • 8/10/2019 Informatica Ray

    26/79

    - server creates inde- and data cac!es in memory for aggregator ,ran$ ,oiner and /oo$up transformation in a mapping.

    - Server stores $ey values in inde- cac!es and output values in data cac!es : if t!e server reuires more memory ,it stores overflovalues in cac!e files .

    - )!en t!e session completes, t!e server releases cac!es memory, and in most circumstances, it deletes t!e cac!es files .

    - Cac!es Storage overflo" :

    - releases cac!es memory, and in most circumstances, it deletes t!e cac!es files .

    Cac!es Storage overflo" :

    "ransformation inde% cache data cacheAggregator stores group values stores calculations

    As configured in t!e ased on roup0y ports

    roup0y ports.

    Ran$ stores group values as stores ran$ing information

    Configured in t!e roup0y ased on roup0y ports .

    Loiner stores inde- values for stores master source ro"s .

    T!e master source tale

    As configured in Loiner condition.

    /oo$up stores /oo$up condition stores loo$up data t!at's

    Information. Bot stored in t!e inde- cac!e.

    etermining cache re&uirements

    To calculate t!e cac!e si2e, you need to consider column and ro" reuirements as "ell as processing over!ead.

    - server reuires processing over!ead to cac!e data and inde- information.

    Column over!ead includes a null indicator, and ro" over!ead can include ro" to $ey information.

    Steps:

    - first, add t!e total column si2e in t!e cac!e to t!e ro" over!ead.

    - Multiply t!e result y t!e no of groups =or> ro"s in t!e cac!e t!is gives t!e minimum cac!e reuirements .

    - or ma-imum reuirements, multiply min reuirements y ?.

    /ocation:

    6y default , t!e server stores t!e inde- and data files in t!e directory W K>

    Aggregate data cac!e:

    Yroups ==column si2e> K>

    +an) ache

    - "!en t!e server runs a session "it! a Ran$ transformation, it compares an input ro" "it! ro"s "it! ro"s in data cac!e. If tinput ro" out0ran$s a stored ro",t!e Informatica server replaces t!e stored ro" "it! t!e input ro".

    - If t!e ran$ transformation is configured to ran$ across multiple groups, t!e server ran$s incrementally for eac! group it finds .

    Inde- Cac!e :

    INTERNAL

    ?

  • 8/10/2019 Informatica Ray

    27/79

    Yroups ==column si2e> K>

    Ran$ Data Cac!e:

    Kroup Z=YRan$s =column si2e 6>> ?[

    =oiner acheC

    - )!en server runs a session "it! oiner transformation, it reads all ro"s from t!e master source and uilds memory cac!es aseon t!e master ro"s.

    - After uilding t!ese cac!es, t!e server reads ro"s from t!e detail source and performs t!e oins

    - Server creates t!e Inde- cac!e as it reads t!e master source into t!e data cac!e. T!e server uses t!e Inde- cac!e to test t!e ocondition. )!en it finds a matc!, it retrieves ro"s values from t!e data cac!e.

    - To improve oiner performance, t!e server aligns all data for oiner cac!e or an eig!t yte oundary.

    Inde- Cac!e :

    YMaster ro"s Z=column si2e> 6>

    Loiner Data Cac!e:

    KMaster ro" Z=column si2e> P[

    0oo)up cacheC

    - )!en server runs a loo$up transformation, t!e server uilds a cac!e in memory, "!en it process t!e first ro" of data in t!transformation.

    - Server uilds t!e cac!e and ueries it for t!e eac! ro" t!at enters t!e transformation.

    - If you partition t!e source pipeline, t!e server allocates t!e configured amount of memory for eac! partition. If t"o loo$utransformations s!are t!e cac!e, t!e server does not allocate additional memory for t!e second loo$up transformation.

    - T!e server creates inde- and data cac!e files in t!e loo$up cac!e drectory and used t!e server code page to create t!e files.

    Inde- Cac!e :

    YRo"s in loo$up tale Z=column si2e> 6>

    /oo$up Data Cac!e:

    KRo"s in loo$up tale Z=column si2e> P[

    INTERNAL

    ?K

  • 8/10/2019 Informatica Ray

    28/79

    "ransformations

    A transformation is a repository oect t!at generates, modifies or passes data.

    =a> Active Transformation:

    a. Can c!ange t!e numer of ro"s, t!at passes t!roug! it =ilter, Bormali2er, Ran$ ..>

    => Designing in transformation developer

    => t!at passes t!roug!. T!e value may e J6?EEJQKQE.

    If you enale decimal arit!metic, t!e server passes t!e numer as it is. If you do not enale decimal arit!metic, t!e servpasses J.6?EEJQKK 3 66Q.

    If you "ant to process a decimal value "it! a precision greater t!an ?P digits, t!e server automatically treats as a doulvalue.

    INTERNAL

    ?P

  • 8/10/2019 Informatica Ray

    29/79

    /applets

    )!en t!e server runs a session using a mapplets, it e-pands t!e mapplets. T!e server t!en runs t!e session as it "ould any ot!sessions, passing data t!roug! eac! transformations in t!e mapplet.

    If you use a reusale transformation in a mapplet, c!anges to t!ese can invalidate t!e mapplet and every mapping using t!e mapplet.

    1ou can create a non0reusale instance of a reusale transformation.

    Mapplet 4ects:

    =a> Input transformation

    => Source ualifier =c> Transformations, as you need

    =d> 4utput transformation

    Mapplet )on't Support:

    - Loiner

    - Bormali2er

    - Source ile directory

    =c> Target file directory

    =d> Reect file directory

    Description:

    se session parameter to ma$e sessions more fle-ile. or e-ample, you !ave t!e same type of transactional data "ritten to t"o differedataases, and you use t!e dataase connections TransD(6 and TransD(? to connect to t!e dataases. 1ou "ant to use t!e sammapping for ot! tales.

    Instead of creating t"o sessions for t!e same mapping, you can create a dataase connection parameter, li$e WD(ConnectionSource, anuse it as t!e source dataase connection for t!e session.

    )!en you create a parameter file for t!e session, you set WD(ConnectionSource to TransD(6 and run t!e session. After it completes st!e value to TransD(? and run t!e session again.

    B4T#:

    1ou can use several parameter toget!er to ma$e session management easier.

    Session parameters do not !ave default value, "!en t!e server can not find a value for a session parameter, it fails to initiali2e t!e sessio

    7ession 8arameter ;ile

    INTERNAL

    ?Q

  • 8/10/2019 Informatica Ray

    30/79

    - A parameter file is created y te-t editor.

    - In t!at, "e can specify t!e folder and session name, t!en list t!e parameters and variales used in t!e session and assign eacvalue.

    - Save t!e parameter file in any directory, load to t!e server

    - )e can define follo"ing values in a parameter

    o Mapping parameter

    o Mapping variales

    o Session parameters

    - 1ou can include parameter and variale information for more t!an one session in a single parameter file y creating separasections, for eac! session "it! in t!e parameter file.

    - 1ou can override t!e parameter file for sessions contained in a atc! y using a atc! parameter file. A atc! parameter file !t!e same format as a session parameter file

    0ocale

    Informatica server can transform c!aracter data in t"o modes

    =a> A7II

    a. Default one

    . NIF$

    a.

  • 8/10/2019 Informatica Ray

    31/79

    =a> (efore Session: After saving mapping, "e can run some initial tests.

    => After Session: real Deugging process

    M#adata Reporter:

    - )e ased application t!at allo"s to run reports against repository metadata

    - Reports including e-ecuted sessions, loo$up tale dependencies, mappings and sourcetarget sc!emas.

    +epository

    Types of Repository

    =a> loal Repository

    a. T!is is t!e !u of t!e domain use t!e R to store common oects t!at multiple developers can use t!roug! s!ortcuT!ese may include operational or application source definitions, reusale transformations, mapplets and mappings

    => /ocal Repository

    a. A /ocal Repository is "it! in a domain t!at is not t!e gloal repository. seJ t!e /ocal Repository for development.

    V Standard Repository

    a. A repository t!at functions individually, unrelated and unconnected to ot!er repository

    B4T#:

    - 4nce you create a gloal repository, you can not c!ange it to a local repository

    - 5o"ever, you can promote t!e local to gloal repository

    Gatches

    - Run t!e session, only if t!e previous completes successfully

    => Al"ays run t!e session =t!is is default>

    oncurrent Gatch

    In t!is mode, t!e server starts all of t!e sessions "it!in t!e atc!, at same time

    Concurrent atc!es ta$e advantage of t!e resource of t!e Informatica server, reducing t!e time it ta$es to run t!e session separateor in a seuential atc!.

    oncurrent !atch in a 7e&uential !atch

    If you !ave concurrent atc!es "it! source0target dependencies t!at enefit from running t!ose atc!es in a particular order, ust li$sessions, place t!em into a seuential atc!.

    INTERNAL

    E6

  • 8/10/2019 Informatica Ray

    32/79

    INTERNAL

    E?

  • 8/10/2019 Informatica Ray

    33/79

    7er'er oncepts

    T!e Informatica server used t!ree system resources

    =a> C S!ared Memory

    =c> (uffer Memory

    Informatica server uses s!ared memory, uffer memory and cac!e memory for session information and to move data et"een sessiot!reads.

    /M S!ared Memory/oad Manager uses ot! process and s!ared memory. T!e /M $eeps t!e information server list of sessions and atc!es, and t!sc!edule ueue in process memory.

    4nce a session starts, t!e /M uses s!ared memory to store session details for t!e duration of t!e session run or session sc!eduT!is s!ared memory appears as t!e configurale parameter =/MS!aredMemory> and t!e server allots ?,, ytes as default.

    T!is allo"s you to sc!edule or run appro-imately 6 sessions at one time.

    DTM (uffer Memory

    T!e DTM process allocates uffer memory to t!e session ased on t!e DTM uffer poll si2e settings, in session properties. (y defauit allocates 6?,, ytes of memory to t!e session.

    DTM divides memory into uffer loc$s as configured in t!e uffer loc$ si2e settings. =Default: J, ytes per loc$>

    +unning a 7ession

    T!e follo"ing tas$s are eing done during a session

    6. /M loc$s t!e session and read session properties

    ?. /M reads parameter file

    E. /M e-pands serversession variales and parameters

    J. /M verifies permission and privileges

    . /M validates source and target code page

    . /M creates session log file

    K. /M creates DTM process

    P. DTM process allocates DTM process memory

    Q. DTM initiali2es t!e session and fetc!es mapping

    6. DTM e-ecutes pre0session commands and procedures

    66. DTM creates reader, "riter, transformation t!reads for eac! pipeline

    6?. DTM e-ecutes post0session commands and procedures

    6E. DTM "rites !istorical incremental aggregationloo$up to repository

    6J. /M sends post0session emails

    INTERNAL

    EE

  • 8/10/2019 Informatica Ray

    34/79

    7topping and a!orting a session

    - If t!e session you "ant to stop is a part of atc!, you must stop t!e atc!

    - If t!e atc! is part of nested atc!, stop t!e outermost atc!

    - )!en you issue t!e stop command, t!e server stops reading data. It continues processing and "riting data and committing dato targets

    - If t!e server cannot finis! processing and committing data, you can issue t!e A(4RT command. It is similar to stop commane-cept it !as a second timeout. If t!e server cannot finis! processing and committing data "it!in seconds, it $ills tDTM process and terminates t!e session.

    Recovery:

    - After a session eing stoppedaorted, t!e session results can e recovered. )!en t!e recovery is performed, t!e sessicontinues from t!e point at "!ic! it stopped.

    - If you do not recover t!e session, t!e server runs t!e entire session t!e ne-t time.

    - 5ence, after stoppingaorting, you may need to manually delete targets efore t!e session runs again.

    B4T#:

    A(4RT command and A(4RT function, ot! are different.

    When can a 7ession ;ail

    - Server cannot allocate enoug! system resources

    - Session e-ceeds t!e ma-imum no of sessions t!e server can run concurrently

    - Server cannot otain an e-ecute loc$ for t!e session =t!e session is already loc$ed>

    - Server unale to e-ecute post0session s!ell commands or post0load stored procedures

    - Server encounters dataase errors

    - Server encounter Transformation ro" errors =#-: B// value in non0null fields>

    - Bet"or$ related errors

    )!en

  • 8/10/2019 Informatica Ray

    35/79

    4ptimi2ing Target Dataases:

    - Drop inde-es constraints

    - Increase c!ec$point intervals.

    - se ul$ loading e-ternal loading.

    - Turn off recovery.

    - Increase dataase net"or$ pac$et si2e.

    Source lev

    - 4ptimi2e t!e uery =using group y, group y>.

    - se conditional filters.

    - Connect to RD(MS using I /4AD manager process: 0 starts a session

    creates DTM process, "!ic! creates t!e session.

    => DTM process: 0 creates t!reads to initiali2e t!e session

    0 read, "rite and transform data.

    0 !andle prepost session opertions.

    /oad manager processes:

    - manages sessionatc! sc!eduling.

    - /oc$s session.

    - Reads parameter file.

    - #-pands serversession variales, parameters .

    - %erifies permissionsprivileges.

    - Creates session log file.

    DTM process:

    T!e primary purpose of t!e DTM is to create and manage t!reads t!at carry out t!e session tas$s.

    INTERNAL

    E

  • 8/10/2019 Informatica Ray

    36/79

    T!e DTM allocates process memory for t!e session and divides it into uffers. T!is is $no"n as uffer memory. T!e defamemory allocation is 6?,, ytes .it creates t!e main t!read, "!ic! is called master t!read .t!is manages all ot!er t!reads

    %arious t!reads functions

    Master t!read0 !andles stop and aort reuests from load manager.

    Mapping t!read0 one t!read for eac! session.

    etc!es session and mapping information.

    Compiles mapping.

    Cleans up after e-ecution.Reader t!read0 one t!read for eac! partition.

    Relational sources uses relational t!reads and

    lat files use file t!reads.

    )riter t!read0 one t!read for eac! partition "rites to target.

    Transformation t!read0 4ne or more transformation for eac! partition.

    Bote:

    )!en you run a session, t!e t!reads for a partitioned source e-ecute concurrently. T!e t!reads use uffers movetransform data.

    6. $%plain a!out your proects

    0 Arc!itecture0 Dimension and act tales0 Sources and Targets0 Transformations used0 reuency of populating data0 Dataase si2e

    2. What is dimension modeling?nli$e #R model t!e dimensional model is very asymmetric"it! one large central tale called as fact tale connected to multipledimension tales .It is also called star sc!ema.

    3. What are mapplets?Mapplets are reusale oects t!at represents collection of transformationsTransformations not to e included in mapplets are

    Cool source definitionsLoiner transformationsBormali2er TransformationsBon0reusale seuence generator transformations

  • 8/10/2019 Informatica Ray

    37/79

    6. #-pressions?. /oo$upE. Stored procedureJ. #-ternal procedure. Seuence generator. 3M/ Source ualifier

    #. What is a loo)up transformation?

    sed to loo$ up data in a relational tale, vie"s, or synonym, T!e

    informatica server ueries t!e loo$up tale ased on t!e loo$up ports in t!etransformation. It compares loo$up transformation port values to loo$uptale column values ased on t!e loo$up condition. T!e result is passed toot!er transformations and t!e target.

    sed to :et related value

  • 8/10/2019 Informatica Ray

    38/79

    only.8erformance issues ?T!e Informatica server performs calculations as it reads and storesnecessary data group and ro" data in an aggregate cac!e.Create Sorted input ports and pass t!e input records to aggregator insorted forms y groups t!en y port

    Incremental aggregation?In t!e Session property tag t!ere is an option forperforming incremental aggregation. )!en t!e Informatica server performsincremental aggregation , it passes ne" source data t!roug! t!e mapping and

    uses !istorical cac!e =inde- and data cac!e> data to perform ne" aggregationcalculations incrementally.

    What are the uses of inde% and data cache?T!e group data is stored in inde- files and Ro" data storedin data files.

    *. $%plain update strategy?pdate strategy defines t!e sources to e flagged for insert, update,delete, and reect at t!e targets.)!at are update strategy constantsFDD9IBS#RT, DD9+eect rows in /apping?

    ,. $%plain the e%pression transformation ?#-pression transformation is used to calculate values in a single ro" efore"riting to t!e target.

    )!at are t!e default values for varialesF5ints: Straing G Bull, Bumer G , Date G 666KE

    1-. ifference !etween +outer and filter transformation?In filter transformation t!e records are filtered ased on t!e condition andreected ro"s are discarded. In Router t!e multiple conditions are placedand t!e reected ro"s can e assigned to a port.

    ow many ways you can filter the records?6. Source *ualifier?. ilter transformationE. Router transformationJ. Ran$er. pdate strategy.

    11. ow do you call stored procedure and e%ternal proceduretransformation ?#-ternal

  • 8/10/2019 Informatica Ray

    39/79

    T"o flat files in different file systems.T"o different 4D(C sourcesIn one transformation !o" many sources can e coupledFT"o sources can e couples. If more t!an t"o is to e couples add anot!erLoiner in t!e !ierarc!y.)!at are oin optionsFBormal =Default>Master 4uterDetail 4uterull 4uter

    13. $%plain NormaliEer transformation?T!e normaliser transformation normalises records from C4(4/ and relationalsources, allo"ing you to organise t!e data according to your o"n needs. ABormaliser transformation can appear any"!ere in a data flo" "!en younormali2e a relational source. se a Bormaliser transformation instead oft!e Source *ualifier transformation "!en you normali2e C4(4/ source. )!enyou drag a C4(4/ source into t!e Mapping Designer )or$space, t!e Bormalisertransformation appears, creating input and output ports for every columns int!e source.

    14. What is 7ource &ualifier transformation?)!en you add relational or flat file source definition to a mapping , youneed to connect to a source *ualifier transformation. T!e source ualifierrepresents t!e records t!at t!e informatica server reads "!en it runs asession.Loin Data originating from t!e same source dataase.ilter records "!en t!e Informatica server reads t!e source data.Specify an outer oin rat!er t!an t!e default inner oin.Specify sorted portsSelect only distinct values from t!e sourceCreate a custom uery to issue a special S#/#CT statement for t!eInformatica server to read t!e source data.

    15. What is +an)er transformation?ilters t!e reuired numer of records from t!e top or from t!e ottom.

    6. )!at is target load optionF

    It defines t!e order in "!ic! informatica server loads t!e data into t!etargets.T!is is to avoid integrity constraint violations

    1(. ow do you identify the !ottlenec)s in /appings?(ottlenec$s can occur in6. Targets T!e most common performance ottlenec$ occurs "!en t!einformatica server "rites to a target

    dataase. 1ou can identify target ottlenec$ yconfiguring t!e session to "rite to a flat file target.

    If t!e session performance increases significantly "!enyou "rite to a flat file, you !ave a target

    ottlenec$.

    Solution :Drop or Disale inde- or constraints

    Increase commit interval =Recovery is compromised> Tune t!e dataase for R(S, Dynamic #-tension etc.,

    ?. Sources Set a filter transformation after eac! S* and see t!erecords are not t!roug!. If t!e time ta$en is same t!en t!ere is a prolem. 1ou can also identify t!e Source prolem y Read Test Session 0 "!ere "e copy t!e mapping "it!sources, S* and remove all transformations and connect to file target. If t!e performance is same

    INTERNAL

    EQ

  • 8/10/2019 Informatica Ray

    40/79

    t!en t!ere is a Source ottlenec$. sing dataase uery 0 Copy t!e read uery directly fromt!e log. #-ecute t!e uery against t!e

    source dataase "it! a uery tool. If t!e time it ta$esto e-ecute t!e uery and t!e time to fetc! t!e first ro" are significantly different, t!en t!e uerycan e modified using optimi2er !ints. Solutions: 4ptimi2e *ueries using !ints. se inde-es "!erever possile.

    E. MappingIf ot! Source and target are 4; t!en prolem could e

    in mapping. Add a filter transformation efore target and if t!etime is t!e same t!en t!ere is a prolem. =4R> /oo$ for t!e performance monitor in t!e Sessionsproperty s!eet and vie" t!e counters.Solutions:

    If 5ig! error ro"s and ro"s in loo$up cac!e indicate amapping ottlenec$. 4ptimi2e Single

  • 8/10/2019 Informatica Ray

    41/79

    ?. T!e numer of cac!ed value property determinest!e numer of values t!e informatica

    server cac!es at one time. 4ptimi2e #-pression transformation: 6. actoring out common logic ?. Minimi2e aggregate function calls. E. Replace common su0e-pressions "it! localvariales. J. se operators instead of functions.

    J. Sessions

    If you do not !ave a source, target, or mappingottlenec$, you may !ave a session ottlenec$. 1ou can identify a session ottlenec$ y using t!eperformance details. T!e informatica server

    creates performance details "!en you enale Collect

  • 8/10/2019 Informatica Ray

    42/79

    additional initiali2ation information, names of inde- and data files usedand detailed transformation statistics.%erose Data.In addition to %erose init, It records ro" level logs.

    2-. What is 7lowly changing dimensions?Slo"ly c!anging dimensions are dimension tales t!at !aveslo"ly increasing data as "ell as updates to e-isting data.21. What are mapping parameters and 'aria!les?A mapping parameter is a user definale constant t!at ta$es up a valueefore running a session. It can e used in S* e-pressions, #-pression

    transformation etc.Steps:Define t!e parameter in t!e mapping designer 0 parameter & variales .se t!e parameter in t!e #-pressions.Define t!e values for t!e parameter in t!e parameter file.

    A mapping variale is also defined similar to t!e parameter e-cept t!at t!evalue of t!e variale is suected to c!ange.It pic$s up t!e value in t!e follo"ing order.6. rom t!e Session parameter file?. As stored in t!e repository oect in t!e previous run.E. As defined in t!e initial values in t!e designer.J. Default values

    INTERNAL

    J?

  • 8/10/2019 Informatica Ray

    43/79

    Fracle Data Definition /anguage =DD/> T!e DD/ statements define and maintain oects and drop oects.

    > Data Manipulation /anguage =DM/> T!e DM/ statements manipulate dataase data.

    c> Transaction Control Statements Manage c!ange y DM/

    d> Session Control 0sed to control t!e properties of current session enaling and disaling roles and c!anging. #.g. AlterStatements, Set Role

    e> System Control Statements0C!ange #medded Sl0 Incorporate DD/, DM/ and TCS in to all columns of ( in t!e oin condition.or all ro"s in A t!at !ave no matc!ing ro"s in (, 4racle returns null for any select list e-pressions containing columns of (.4uter oin ueries are suect to t!e follo"ing rules and restrictions: T!e => operator can appear only in t!e )5#R# clause or, in t!e conte-t of left correlation =t!at is, "!en specifying t!e TA(/# claus

    in t!e R4M clause, and can e applied only to a column of a tale or vie".

    If A and ( are oined y multiple oin conditions, you must use t!e => operator in all of t!ese conditions. If you do not, 4racle "ill retuonly t!e ro"s resulting from a simple oin, ut "it!out a "arning or error to advise you t!at you do not !ave t!e results of an outer oin

    T!e => operator can e applied only to a column, not to an aritrary e-pression. 5o"ever, an aritrary e-pression can contain a

    column mar$ed "it! t!e => operator. A condition containing t!e => operator cannot e comined "it! anot!er condition using t!e 4R logical operator.

    A condition cannot use t!e IB comparison operator to compare a column mar$ed "it! t!e => operator "it! an e-pression.

    A condition cannot compare any column mar$ed "it! t!e => operator "it! a suuery.

    If t!e )5#R# clause contains a condition t!at compares a column from tale ( "it! a constant, t!e => operator must e applied to t!ecolumn so t!at 4racle returns t!e ro"s from tale A for "!ic! it !as generated B//s for t!is column. 4t!er"ise 4racle "ill return only t!results of a simple oin.In a uery t!at performs outer oins of more t!an t"o pairs of tales, a single tale can e t!e null0generated tale for only one ot!er taleor t!is reason, you cannot apply t!e => operator to columns of ( in t!e oin condition for A and ( and t!e oin condition for ( and C.

    INTERNAL

    JE

  • 8/10/2019 Informatica Ray

    44/79

    7et FperatorsC NIFN MA00 IN"$+7$" /IN7Set operators comine t!e results of t"o component ueries into a single result. *ueries containing set operators are called compoundueries.T!e numer and datatypes of t!e columns selected y eac! component uery must e t!e same, ut t!e column lengt!s can e different

    If you comine more t!an t"o ueries "it! set operators, 4racle evaluates adacent ueries from left to rig!t. 1ou can use parent!eses tospecify a different order of evaluation.

    Restrictions: T!ese set operators are not valid on columns of type (/4(, C/4(, (I/#, varray, or nested tale.

    T!e BI4B, IBT#RS#CT, and MIBS operators are not valid on /4B columns. To reference a column, you must use an alias to name t!e column.

    1ou cannot also specify t!e for9update9clause "it! t!ese set operators.

    1ou cannot specify t!e order9y9clause in t!e suuery of t!ese operators.

    All set operators !ave eual precedence. If a S*/ statement contains multiple set operators, 4racle evaluates t!em from t!e left to rig!t ino parent!eses e-plicitly specify anot!er order.

    T!e corresponding e-pressions in t!e select lists of t!e component ueries of a compound uery must matc! in numer and datatype. Ifcomponent ueries select c!aracter data, t!e datatype of t!e return values are determined as follo"s: If ot! ueries select values of datatype C5AR, t!e returned values !ave datatype C5AR.

    If eit!er or ot! of t!e ueries select values of datatype %ARC5AR?, t!e returned values !ave datatype %ARC5AR?.

    , t!e 4RD#R (1 clause must usepositions, rat!er t!an e-plicit e-pressions. Also, t!e 4RD#R (1 clause can appear only in t!e last component uery. T!e 4RD#R (1clause orders all ro"s returned y t!e entire compound uery.

    +oll!ac): A transaction t!at retracts any of t!e c!anges resulting from S*/ statements in Transaction.c> 7a'e8oint: or long transactions t!at contain many S*/ statements, intermediate mar$ers or savepoints are declared. Savepoints cane used to divide a transaction into smaller points.

    INTERNAL

    JJ

  • 8/10/2019 Informatica Ray

    45/79

    )e can declare intermediate mar$ers called savepoints "it!in t!e conte-t of a transaction. Savepoints divide a long transaction intosmaller parts. sing savepoints, "e can aritrarily mar$ our "or$ at any point "it!in a long transaction. )e t!en !ave t!e option later ofrolling ac$ "or$ performed efore t!e current point in t!e transaction ut after a declared savepoint "it!in t!e transaction.or e-ample, "e can use savepoints t!roug!out a long comple- series of updates so t!at if "e ma$e an error, "e do not need to resumievery statement.

    d> +olling ;orward: 7ystem lo!al Area B7AD: T!e SA is a s!ared memory region allocated y t!e 4racle t!at contains Data and control information fo

    one 4racle Instance. It consists of Dataase (uffer Cac!e and Redo log (uffer. =; 8rogram lo!al Area B8AD: T!e ata!ase Guffer ache: Dataase (uffer of SA stores t!e most recently used loc$s of dataase data. T!e set of dataase uffers an instance is called Dataase (uffer Cac!e.!> +edo log Guffer: Redo log (uffer of SA stores all t!e redo log entries.i> +edo 0og ;iles: Redo log files are set of files t!at protect altered dataase data in memory t!at !as not een "ritten to Data iles. T!eare asically used for ac$up "!en a dataase cras!es.> 8rocess: A Isolated : T!e Master can e deleted "!en t!e c!ild is e-istingc> Cascading : T!e c!ild gets deleted "!en t!e Master is deleted.

    Deferred "it! Bo Auto *uery0 T!e operator must navigate to t!e detail loc$ and e-plicitly e-ecute a uery

    4ptimi2er9!int: set9item9property =\Dept(loc$\,4^Select irst9Ro"s Deptno,Dname,/oc,Ro"id from dept "!ere =Deptno O ?>

    c> 4ptimi2e9Sl: (y setting t!e 4ptimi2e9Sl G Bo, 4racle orms assigns a single cursor for all S*/ statements. T!is slo" do"nt!e processing ecause for every time t!e S*/ must e parsed "!enever t!ey are e-ecuted.fJrun module G my9firstform userid G scotttiger optimi2e9sl G Bo

    INTERNAL

    J

  • 8/10/2019 Informatica Ray

    46/79

    d> 4ptimi2e9Tp:(y setting t!e 4ptimi2e9TpG Bo, 4racle orms assigns seperate cursor only for eac! uery S#/#CT statement. All ot!er S*/

    statements reuse t!e cursor.fJrun module G my9firstform userid G scotttiger optimi2e9Tp G Bo

  • 8/10/2019 Informatica Ray

    47/79

    T!e finest level of granularity of t!e data ase is t!e data loc$s.ata Gloc) : 4ne Data (loc$ correspond to specific numer of p!ysical dataase space$%tent : #-tent is t!e numer of specific numer of contiguous data loc$s.7egments : Set of #-tents allocated for #-tents. T!ere are t!ree types of Segments.

    a> Data Segment: Bon Clustered Tale !as data segment data of every tale is stored in cluster data segment> Inde- Segment: #ac! Inde- !as inde- segment t!at stores datac> Roll (ac$ Segment: Temporarily store \undo\ information

    from emp g "!ere a.empnoG.empno>

  • 8/10/2019 Informatica Ray

    48/79

  • 8/10/2019 Informatica Ray

    49/79

    ^

    spool off

    #ssentially you are loo$ing to see t!at t!ey $no" to include a command =in t!is case DR4< S#R...CASCAD#^> and t!at you need toconcatenate using t!e U__' t!e values selected from t!e dataase.

    from emp - "!ere -.emp9no G e.emp9no>^

    In t!e situation "!ere multiple columns ma$e up t!e proposed $ey, t!ey must all e used in t!e "!ere clause.

  • 8/10/2019 Informatica Ray

    50/79

  • 8/10/2019 Informatica Ray

    51/79

    . (ecause a vie" is ased on ot!er oects, a vie" reuires no storage ot!er t!anstorage for t!e definition of t!e vie" =t!e stored uery> in t!e data dictionary.

    incremental =fast refres!> or> complete

    or materiali2ed vie"s t!at use t!e fast refres! met!od, a materiali2ed vie" log or direct loader log $eeps a record of c!anges to t!emaster tales.

    Materiali2ed vie"s can e refres!ed eit!er on demand or at regular time intervals.Alternatively, materiali2ed vie"s in t!e same dataase as t!eir master tales can e refres!ed "!enever a transaction commits its c!angto t!e master tales.

  • 8/10/2019 Informatica Ray

    52/79

    A synonym is an alias for any tale, vie", snaps!ot, seuence, procedure, function, or pac$age. (ecause a synonym is simply an alias, itreuires no storage ot!er t!an its definition in t!e data dictionary.

  • 8/10/2019 Informatica Ray

    53/79

  • 8/10/2019 Informatica Ray

    54/79

    > Si2es of range partitions "ould differ uite sustantiallyc> .

  • 8/10/2019 Informatica Ray

    55/79

    . rant and revo$e privileges and roles =RABT, R#%4;#>. Turn auditing options on and off =ADIT, B4ADIT>K. Add a comment to t!e data dictionary =C4MM#BT>

    accessed y t!e S*/ statement.. As part of dataase recovery from ainstance or media failure, 4racle applies t!e appropriate c!anges in t!e dataase's redo log to t!e datafiles, "!ic! updates dataase datato t!e instant t!at t!e failure occurred.A dataase's redo log can consist of t"o parts: t!e online redo log and t!e arc!ived redo log.

  • 8/10/2019 Informatica Ray

    56/79

    sers currently connected to an 4racle server s!are t!e data in t!e system gloal area. or optimal performance, t!e entire system gloaarea s!ould e as large as possile ="!ile still fitting in real memory> to store as muc! data in memory as possile and minimi2e dis$ I4.

    T!e information stored "it!in t!e system gloal area is divided into several types of memory structures, including t!e dataase uffers,redo log uffer, and t!e s!ared pool. T!ese areas !ave fi-ed si2es and are created during instance startup.

  • 8/10/2019 Informatica Ray

    57/79

    sc!ema oectsbDefault values for columnsbIntegrity constraint informationbT!e names of 4racle usersb.

    Nulls

    A nll is t!e asence of a value in a column of a ro". Bulls indicate missing,un$no"n, or inapplicale data. A null s!ould not e used to imply any ot!er value,suc! as 2ero. A column allo"s nulls unless a B4T B// or

  • 8/10/2019 Informatica Ray

    58/79

    6. )!at is pragmaF?. Can you "rite commit in triggersFE. Can you call user defined functions in select statementsJ. Can you call insertupdatedelete in select statements. If yes !o"F If no "!at is t!e ot!er "ayF. After update !o" do you $no", !o" many records got updated. Select statement does not retrieve any records. )!at e-ception is raisedF

    Inter'iew

  • 8/10/2019 Informatica Ray

    59/79

    aggregated data suc! as t!e sum of sales. Materiali2ed vie"s in t!ese environmentsare typically referred to as summaries, ecause t!ey store summari2ed data. T!eycan also e used to precompute oins "it! or "it!out aggregations. A materiali2edvie" eliminates t!e over!ead associated "it! e-pensive oins or aggregations for alarge or important class of ueries.

    "he Need for /aterialiEed :iewsMateriali2ed vie"s are used in data "are!ouses to increase t!e speed of ueries onvery large dataases. *ueries to large dataases often involve oins et"een talesor aggregations suc! as SM, or ot!. T!ese operations are very e-pensive in termsof time and processing po"er.

    5o" does M%'s "or$FT!e uery optimi2er can use materiali2ed vie"s yautomatically recogni2ing "!en an e-isting materiali2ed vie" can and s!ould eused to satisfy a reuest. It t!en transparently re"rites t!e reuest to use t!emateriali2ed vie". *ueries are t!en directed to t!e materiali2ed vie" and not to t!eunderlying detail tales. In general, re"riting ueries to use materiali2ed vie"srat!er t!an detail tales results in a significant performance gain.

    If a materiali2ed vie" is to e used y uery re"rite, it must e stored in t!e samedataase as its fact or detail tales. A materiali2ed vie" can e partitioned, and youcan define a materiali2ed vie" on a partitioned tale and one or more inde-es ont!e materiali2ed vie".

    T!e types of materiali2ed vie"s are:bMateriali2ed %ie"s "it! Loins and AggregatesbSingle0Tale Aggregate Materiali2ed %ie"sbMateriali2ed %ie"s Containing 4nly Loins

    Some seful system tales:user9ta9partitionsuser9ta9columns

    oc3

    +epository related

  • 8/10/2019 Informatica Ray

    60/79

    c> Designer eatures and #n!ancements

    e!ug mapplets.1ou can deug a mapplet "it!in a mapping in t!e Mapping Designer. 1ou can set rea$points in

    transformations in t!e mapplet.

    7upport for slash character B>D in ta!le and field names. 1ou can use t!e Designer to import source and target definitions "it!

    tale and field names containing t!e slas! c!aracter =>. T!is allo"s you to import SA< () source definitions y connectingdirectly to t!e underlying dataase tales.

    d> Server Manager eatures and #n!ancements

    ontinuous sessions. 1ou can sc!edule a session to run continuously. A continuous session starts automatically "!en t!e /oa

    Manager starts. )!en t!e session stops, it restarts immediately "it!out resc!eduling. se continuous sessions "!en reading retime sources, suc! as I(M M*Series.

    8artition sessions with sorted aggregators.1ou can partition sessions "it! sorted aggregators in a mapping.

    +egister multiple ser'ers against a local repository. 1ou can register multiple

  • 8/10/2019 Informatica Ray

    61/79

    , flat files, 3M/ files, or Cool files t!at provide source data. ore-ample, a source definition mig!t e t!e complete structure of t!e #M

  • 8/10/2019 Informatica Ray

    62/79

    What )ind of standards do you need to enforce in your data marts?Creating a DDS is an important tec!niue in enforcing

    standards. If data marts depend on t!e DDS for information, you can provide t!at data in t!e range and format you "ant everyonto use. or e-ample, if you "ant all data marts to include t!e same information on customers, you can put all t!e data needed fort!is standard customer profile in t!e DDS. Any data mart t!at reads customer data from t!e DDS s!ould include all t!e informatioin t!is profile.

    ow often do you update the contents of the 7?If you plan to freuently update data in data marts, you need to update t!

    contents of t!e DDS at least as often as you update t!e individual data marts t!at t!e DDS feeds. 1ou may find it easier to readdata directly from source dataases and flat file systems if it ecomes urdensome to update t!e DDS fast enoug! to $eep up"it! t!e needs of individual data marts. 4r, if particular data marts need updates significantly faster t!an ot!ers, you can ypasst!e DDS for t!ese fast update data marts.

    Is the data in the 7 simply a copy of data from source systems or do you plan to reformat this information !eforestoring it in the 7?4ne advantage of t!e dynamic data store is t!at, if you plan on reformatting information in t!e samefas!ion for several data marts, you only need to format it once for t!e dynamic data store.

  • 8/10/2019 Informatica Ray

    63/79

  • 8/10/2019 Informatica Ray

    64/79

    7ource AnalyEer. se to import or create source definitions for flat file, 3M/, Cool, #R

    a> Aggregator transformationCT!e Aggregator transformation allo"s you to perform aggregate calculations, suc! as averages and sumT!e Aggregator transformation is unli$e t!e #-pression transformation, in t!at you can use t!e Aggregator transformation to performcalculations on groups. T!e #-pression transformation permits you to perform calculations on a ro"0y0ro" asis only. =Mascot>

    D $%pression transformationC1ou can use t!e #-pression transformations to calculate values in a single ro" efore you "rite to t!etarget. or e-ample, you mig!t need to adust employee salaries, concatenate first and last names, or convert strings to numers. 1ou cause t!e #-pression transformation to perform any non0aggregate calculations. 1ou can also use t!e #-pression transformation to testconditional statements efore you output t!e results to target tales or ot!er transformations.

    c> ;ilter transformationCT!e ilter transformation provides t!e means for filtering ro"s in a mapping. 1ou pass all t!e ro"s from a sourctransformation t!roug! t!e ilter transformation, and t!en enter a filter condition for t!e transformation. All ports in a ilter transformationare inputoutput, and only ro"s t!at meet t!e condition pass t!roug! t!e ilter transformation.

    d> =oiner transformationC)!ile a Source *ualifier transformation can oin data originating from a common source dataase, t!e Loinertransformation oins t"o related !eterogeneous sources residing in different locations or file systems.

    e> 0oo)up transformationCse a /oo$up transformation in your mapping to loo$ up data in a relational tale, vie", or synonym. Import aloo$up definition from any relational dataase to "!ic! ot! t!e Informatica Client and Server can connect. 1ou can use multiple /oo$up

    transformations in a mapping.

    T!e Informatica Server ueries t!e loo$up tale ased on t!e loo$up ports in t!e transformation. It compares /oo$up transformation portvalues to loo$up tale column values ased on t!e loo$up condition. se t!e result of t!e loo$up to pass to ot!er transformations and t!etarget.

    , or use instructions coded into t!e session mapping to flag records for differentdataase operations.

    Within a mapping.)it!in a mapping, you use t!e pdate Strategy transformation to flag records for insert, delete, update, or

    reect.

    INTERNAL

    J

  • 8/10/2019 Informatica Ray

    65/79

  • 8/10/2019 Informatica Ray

    66/79

  • 8/10/2019 Informatica Ray

    67/79

    Informatica 7er'er

    Add timestamp to wor)flow logs.1ou can configure t!e Informatica Server to add a timestamp to messages "ritten to t!e"or$flo" log.

    #-panded pmcmd capaility. 1ou can use pmcmd to issue a numer of commands to t!e Informatica Server. 1ou can use pmcmin eit!er an interactive or command line mode. T!e interactive mode prompts you to enter information "!en you omit parametersor enter invalid commands. In ot! modes, you can enter a command follo"ed y its command options in any order. In addition tcommands for starting and stopping "or$flo"s and tas$s, pmcmd no" !as ne" commands for "or$ing in t!e interactive modeand getting details on servers, sessions, and "or$flo"s.

    $rror handling.T!e Informatica Server !andles t!e aort command li$e t!e stop command, e-cept it !as a timeout period. 1oucan specify "!en and !o" you "ant t!e Informatica Server to stop or aort a "or$flo" y using t!e Control tas$ in t!e "or$flo".

    After you start a "or$flo", you can stop or aort it t!roug! t!e )or$flo" Monitor orpmcmd. $%port session log to e%ternal li!rary.1ou can configure t!e Informatica Server to "rite t!e sess