02 building simple ab initio graphs

Upload: utkarsh-shrivatava

Post on 03-Jun-2018

226 views

Category:

Documents


5 download

TRANSCRIPT

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    1/31

    Accenture Ab Initio Training 1

    Introduction toAb Initio

    Prepared By : Ashok Chanda

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    2/31

    Accenture Ab Initio Training 2

    Ab initio Session 2Ab initio Session 2

    Building a simple graphBuilding a simple graph

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    3/31

    Accenture Ab Initio Training 3

    Graphical DevelopmentEnvironment GDE

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    4/31

    Accenture Ab Initio Training 4

    The Graph ModelThe Graph Model

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    5/31

    Accenture Ab Initio Training 5

    The Graph Model: Naming theThe Graph Model: Naming thePiecesPieces

    Dataset DatasetsComponents

    Flows

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    6/31

    Accenture Ab Initio Training 6

    ComponentsComponents

    Components may run on any computerComponents may run on any computerrunning the Co>Operating System.running the Co>Operating System.

    Diferent components do diferent jobs.Diferent components do diferent jobs. The particular work a component The particular work a componentaccomplishes depends upon its parameteraccomplishes depends upon its parametersettings.settings.Some parameters are data trans ormations!Some parameters are data trans ormations!that is business rules to be applied to anthat is business rules to be applied to aninput"s# to produce a re$uired output.input"s# to produce a re$uired output.

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    7/31

    Accenture Ab Initio Training 7

    Categories of

    ComponentsCompress ComponentsContinuous ComponentsDatabase Components

    Dataset ComponentsDepartition Components%T& Components'iscellaneous Components&artition ComponentsSort Components

    Trans orm Components Translate Components(alidate Components

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    8/31

    Accenture Ab Initio Training 8

    atasetsatasets

    ) dataset is a source or destination o) dataset is a source or destination odata. *t can be a simple +le! a databasedata. *t can be a simple +le! a databasetable! a S)S dataset! ...table! a S)S dataset! ...Datasets may reside on any machineDatasets may reside on any machinerunning the Co>Operating System.running the Co>Operating System.Datasets may reside on other machines iDatasets may reside on other machines i

    connected by %T& or database middleware.connected by %T& or database middleware.Data is always described by record ormatData is always described by record ormatmetadata "termed ,dml-#.metadata "termed ,dml-#.

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    9/31

    Accenture Ab Initio Training 9

    !ocating "iles #ith $%!s!ocating "iles #ith $%!s)b *nitio so tware uses ni/ersal 0esource)b *nitio so tware uses ni/ersal 0esource1ocator" 01s# to locate +les.2ou enter 01s or1ocator" 01s# to locate +les.2ou enter 01s ordatasets!record ormats!input and output +les!anddatasets!record ormats!input and output +les!and

    so on in component3s properties dialog.4nter +lesso on in component3s properties dialog.4nter +lesand multi+les on the description tab!trans orms onand multi+les on the description tab!trans orms onthe parameters tab!and the D'1 record ormatsthe parameters tab!and the D'1 record ormatson the ports tab.The )b *nitio 01 omat is5on the ports tab.The )b *nitio 01 omat is5

    6+le76+le7m+le8599hostname9directory:9directory;

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    10/31

    Accenture Ab Initio Training 10

    More on $%!sMore on $%!s

    )rgument )nd Description)rgument )nd Description%ile5Speci+es a serial +le.%ile5Speci+es a serial +le.'+le5Speci+es a multi+le.'+le5Speci+es a multi+le.=ostname5Speci+es the name o the=ostname5Speci+es the name o thecomputer containing the +le you want.computer containing the +le you want.

    Directory:

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    11/31

    Accenture Ab Initio Training 11

    &'amples on $%!s&'amples on $%!s

    This +le speci+es a +le named This +le speci+es a +le namedinput.dat!located in the tmp directory oninput.dat!located in the tmp directory onthe computer named re/kalt.abinito.com5the computer named re/kalt.abinito.com5

    +le599re/kalt.abinito.com9tmp9input.dat+le599re/kalt.abinito.com9tmp9input.dat This e ample speci+es a multi+le named This e ample speci+es a multi+le namedcustomer.dat!located in the tmp9m scustomer.dat!located in the tmp9m ssubdirectory on a computer namedsubdirectory on a computer named

    mycomputer5mycomputer5m+le599mycomputer.abinito.com9tmp9m s9cusm+le599mycomputer.abinito.com9tmp9m s9customer.dattomer.dat

    http://smb//revkalt.abinito.com/tmp/input.dathttp://smb//revkalt.abinito.com/tmp/input.dathttp://smb//revkalt.abinito.com/tmp/input.dat
  • 8/12/2019 02 Building Simple Ab Initio Graphs

    12/31

    Accenture Ab Initio Training 12

    recorddecimal()* c+st,id-string (./* last,name-string (.)* 0rst,name-string (2)* street,addr-

    string (2* state-decimal (1* ip-string (.* gender-decimal (3* income-ne#line (.* string-

    end

    4hat is a %ecord "ormat

    *n what ormat will the source data be read rom the source data set orwritten to a target data set

    ata Type

    !ength

    Name ofthe "ield

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    13/31

    Accenture Ab Initio Training 13

    Abo+t %ecord "ormats :Abo+t %ecord "ormats :

    ) record ormat is a description o data.) record ormat is a description o data.%or e ample! you might ha/e a database o employees%or e ample! you might ha/e a database o employeeswhere each record contains our +elds5 Si characters orwhere each record contains our +elds5 Si characters orthe employee?s +rst name! ollowed by ten characters orthe employee?s +rst name! ollowed by ten characters orthe employee?s last name! ollowed by three characters orthe employee?s last name! ollowed by three characters orthe employee?s age! and si characters or the employee?sthe employee?s age! and si characters or the employee?sdate o hire.date o hire.One employee?s record might look like this "where eachOne employee?s record might look like this "where eachs$uare represents one character! or byte in the record#5s$uare represents one character! or byte in the record#5

    2ou can enter or edit a record ormat using the 0ecord 2ou can enter or edit a record ormat using the 0ecord%ormat 4ditor.%ormat 4ditor.

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    14/31

    Accenture Ab Initio Training 14

    Te't %ecord "ormatTe't %ecord "ormat%epresentation:%epresentation:

    recordrecord decimal"@# idAdecimal"@# idA string" # +rst nameAstring" # +rst nameA string" # last nameAstring" # last nameA

    date" 2222EDDE'' # new+eldAdate" 2222EDDE'' # new+eldAendAendA

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    15/31

    Accenture Ab Initio Training 15

    Specifying the %ecordSpecifying the %ecord

    "ormat of a Port"ormat of a Port 0ecord %ormat 4ditor0ecord %ormat 4ditor

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    16/31

    Accenture Ab Initio Training 16

    Specifying the %ecordSpecifying the %ecord

    "ormat of a Port"ormat of a Port 2ou can assign a record ormat to a dataset component or 2ou can assign a record ormat to a dataset component orprogram component by /iewing the component?s propertiesprogram component by /iewing the component?s propertiesdialog! and speci ying the record ormat on the &orts tab.dialog! and speci ying the record ormat on the &orts tab.

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    17/31

    Accenture Ab Initio Training 17

    Specifying the %ecordSpecifying the %ecord

    "ormat of a Port"ormat of a PortOn this tab! you speci y the record ormat o a componentOn this tab! you speci y the record ormat o a componentport using one o the ollowing5port using one o the ollowing5) record type speci+er.) record type speci+er.) re erence to a +le containing a collection o type) re erence to a +le containing a collection o typespeci+ers.speci+ers.sing a type speci+er other thansing a type speci+er other than recordrecord . )lthough this is. )lthough this isnot commonly done! it is per ectly legal. %or e ample! thenot commonly done! it is per ectly legal. %or e ample! theollowing type speci+er indicates that the record ormat isollowing type speci+er indicates that the record ormat issimply a +/eEcharacter string5 string "G#simply a +/eEcharacter string5 string "G#0ecord ormats are usually comprised o multiple +elds0ecord ormats are usually comprised o multiple +elds"called"called columnscolumns in a database table#. 2ou de+ne a +eld byin a database table#. 2ou de+ne a +eld byusing a keyword that represents a D'1 base or compoundusing a keyword that represents a D'1 base or compoundtype! ollowed by additional in ormation that the D'1 typetype! ollowed by additional in ormation that the D'1 typeneeds "such as the siHe o the +eld#! and9or by optionalneeds "such as the siHe o the +eld#! and9or by optionalin ormation.in ormation.

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    18/31

    Accenture Ab Initio Training 18

    5ntrod+ction to M!5ntrod+ction to M!

    D'1 is an acronym or Data 'anipulationD'1 is an acronym or Data 'anipulation1anguage. *t is the )b *nitio1anguage. *t is the )b *nitio

    programming language you can use toprogramming language you can use tode+ne record ormats! e pressions!de+ne record ormats! e pressions!trans orm unctions! and key speci+ers.trans orm unctions! and key speci+ers.Components in the )b *nitioComponents in the )b *nitioCo>Operating System use D'1 toCo>Operating System use D'1 todescribe! interpret! and manipulate data.describe! interpret! and manipulate data.

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    19/31

    Accenture Ab Initio Training 19

    4hat ata Can Be escribed64hat ata Can Be escribed6

    There are both + edEsiHe and /ariableElength There are both + edEsiHe and /ariableElengthtypes.types.)SC**! 4BCD*C! I*COD4 character sets are)SC**! 4BCD*C! I*COD4 character sets are

    supported.supported.Supported types can represent strings!Supported types can represent strings!numbers! binary numbers! packed decimals!numbers! binary numbers! packed decimals!dates

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    20/31

    Accenture Ab Initio Training 20

    Abo+t %ecordsAbo+t %ecords

    *n general! a record is one complete entry*n general! a record is one complete entryin a +le or in a database table. ) recordin a +le or in a database table. ) recordabout a customer might contain indi/idualabout a customer might contain indi/idual+elds or account number! account type!+elds or account number! account type!name! address! and telephone number.name! address! and telephone number.*n )b *nitio products! a*n )b *nitio products! a recordrecord is a D'1is a D'1object that contains a se$uence o namedobject that contains a se$uence o named

    +elds "called+elds "calledcolumnscolumns

    in a database table#!in a database table#!each o which can be a diferent D'1 baseeach o which can be a diferent D'1 baseor compound type. 'ost record types areor compound type. 'ost record types areairly simple! containing only data +elds.airly simple! containing only data +elds.

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    21/31

    Accenture Ab Initio Training 21

    To o C+esTo o C+es

    Jhen you create a graph! you will see yellow highlights in certain areas.Jhen you create a graph! you will see yellow highlights in certain areas. These ToEdo cues prompt you or additional in ormation the KD4 needs These ToEdo cues prompt you or additional in ormation the KD4 needsbe ore it can run the graph! as ollows5be ore it can run the graph! as ollows5LLLL 5Jhen a layout indicator is colored yellow!5Jhen a layout indicator is colored yellow! the component has nothe component has no

    layout. %or program components! layout is set either by propagation orlayout. %or program components! layout is set either by propagation ormanually. DoubleEclick the layout indicator and select the desired layout.manually. DoubleEclick the layout indicator and select the desired layout.

    Jhen a component has a s$uare yellow bo ! its re$uired parameters lackJhen a component has a s$uare yellow bo ! its re$uired parameters lack/alues. DoubleEclick the s$uare bo and +ll in the missing parameters./alues. DoubleEclick the s$uare bo and +ll in the missing parameters.

    outMoutM 5Jhen the name o a port is accented with yellow! the record ormat5Jhen the name o a port is accented with yellow! the record ormat

    or the port is not set. 0ecord ormats are usually propagated! but areor the port is not set. 0ecord ormats are usually propagated! but aresometimes set manually. Connect the port to another port with knownsometimes set manually. Connect the port to another port with knownrecord ormat! or doubleEclick the port and add the new record ormat.record ormat! or doubleEclick the port and add the new record ormat.

    Jhen a port is highlighted with yellow! the port needs at least one Now.Jhen a port is highlighted with yellow! the port needs at least one Now.Connect one or more Nows to the port.Connect one or more Nows to the port.

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    22/31

    Accenture Ab Initio Training 22

    More To o C+esMore To o C+es

    ToEdo cues are yellow highlighted ToEdo cues are yellow highlightedareas that re$uire action.areas that re$uire action.

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    23/31

    Accenture Ab Initio Training 23

    &liminating&liminating To o C+esTo o C+es

    Double click a component with toEdoDouble click a component with toEdocues to reach the &roperties dialogcues to reach the &roperties dialogor that component.or that component.

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    24/31

    Accenture Ab Initio Training 24

    !& stat+s indicators!& stat+s indicators

    %or $uick diagnosis o the pass9 ail%or $uick diagnosis o the pass9 ailstate o components and graphs! thestate o components and graphs! theKD4 displays status indicators whenKD4 displays status indicators whenyou run an graph. The status isyou run an graph. The status isdepicted with colored 14Ds! asdepicted with colored 14Ds! as

    ollows5ollows5

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    25/31

    Accenture Ab Initio Training 25

    More on !& stat+sMore on !& stat+s

    indicatorsindicators%iles normally start in an nopened state!%iles normally start in an nopened state!progress to Open! and end in a Closed state.progress to Open! and end in a Closed state.Components! Nows! and graphs normally begin inComponents! Nows! and graphs normally begin in

    an nstarted state! progress to 0un! and end in aan nstarted state! progress to 0un! and end in aDone state. Jhen abnormal e/ents occur!Done state. Jhen abnormal e/ents occur!components change to an 4rror or %ailed state.components change to an 4rror or %ailed state.* you let your mouse pointer ho/er o/er a red* you let your mouse pointer ho/er o/er a redstatus indicator! the KD4 displays the errorstatus indicator! the KD4 displays the errormessage associated with the ailure. * youmessage associated with the ailure. * youdoubleEclick the red status indicator! thedoubleEclick the red status indicator! the)pplication ob Output Jindow opens with the)pplication ob Output Jindow opens with thecomplete error message in it.complete error message in it.

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    26/31

    Accenture Ab Initio Training 26

    "ilter by &'pression"ilter by &'pression

    %ilter by 4 pression +lters data%ilter by 4 pression +lters datarecords according to a D'1records according to a D'1e pression.e pression.

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    27/31

    Accenture Ab Initio Training 27

    The "ilter by &'pressionThe "ilter by &'pressionComponentComponent

    %or each record on the input port the Pselect e pr3%or each record on the input port the Pselect e pr3parameter is e/aluated. * Pselect e pr3 e/aluatesparameter is e/aluated. * Pselect e pr3 e/aluatestrue "nonEHero#! the input record is written to thetrue "nonEHero#! the input record is written to the

    Pout3 port e actly as the input was read.Pout3 port e actly as the input was read.* the Pselect e pr3 e/aluates alse "Hero#! the* the Pselect e pr3 e/aluates alse "Hero#! therecord is written to the Pdeselect3 port.record is written to the Pdeselect3 port.

    The Pout3 port must be connected downstream! The Pout3 port must be connected downstream!

    those records meeting the Pselect e pr3 criteriathose records meeting the Pselect e pr3 criteria The Pdeselect3 output may be optionally used The Pdeselect3 output may be optionally used

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    28/31

    Accenture Ab Initio Training 28

    "ilter ata"ilter ata

    1. Push Run button.

    2. !ie" #onitoring in$or#ation. 3. !ie" out%ut &ata.

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    29/31

    Accenture Ab Initio Training 29

    &'pression Parameter&'pression Parameter

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    30/31

    Accenture Ab Initio Training 30

    'aterials presented in the =elp'aterials presented in the =elp

    SystemSystemComponents in theComponents in the ComponentComponentReferenceReference

    D'1 in theD'1 in the Data ManipulationData ManipulationLanguage ReferenceLanguage ReferenceKraph programming in theKraph programming in the ShellShellDevelopment EnviornmentDevelopment EnviornmentUsers GuideUsers Guide

  • 8/12/2019 02 Building Simple Ab Initio Graphs

    31/31

    AccentureAccenture Ab Initio TrainingAb Initio Training 3131

    Thank 7o+Thank 7o+

    &nd of Session 2&nd of Session 2