Posts

Showing posts from April, 2025

T) For data parallelism, we can use partition components. For component parallelism, we can use replicate component. Like this which component(s) can we use for pipeline parallelism?

You can use components that does not require any sorted data (explicit or in memory sort) to get pipeline parallelism. Like Reformat,FBE, Redefine components. And Components that needed sorted data like join, roll-up, merge, sort, partition by key and sort breaks the pipeline parallelism.  

T) When to use sort within groups ?

Use Sort within Groups only if records within a group are processed before being sorted on a minor key. i.e. if processing "A" needs records to be sorted on field {"1"} and later in the flow processing "B" needs records to be sorted on field {"1", "2"}. In this case before processing "2" and after processing "1" use sort within groups with major-key as {"1"} and minor key as {"2"}. If records are not grouped to start with, use Sort with a multi-part key. There is no benefit to using Sort within Groups directly after using a Sort component.

S) How to add trailer record at every Third record of a file having 10 records? #scenario

In output index of reformat use logic if next in sequence % 3 == 0 then output add trailer from in1.    you can use normalize generate length as 2 when next in sequence %3 ==0. 

T) what is difference between Kill vs m_kill ?

Kill is for unix process and m_kill for ab initio graph. kill needs process id, and m_kill needs rec file name which is easy to find out, and may be it would be doing something more in backend, like waiting for AB_TIMEOUT

T) When does Abinito creates work directories where it stores the temp files? Does it create when the sort component uses a particular layout for the first time or it has to be created separately?

Which ever path is provided in layout option, will be used to crate intermediate files.