02 building simple ab initio graphs
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