Question
Coforge
US
Last activity: 21 Sep 2021 4:20 EDT
NBA strategy performance optimization
Hi,
We are looking to improve performance of NBA strategy batch run which is taking average 10hrs to run daily batch on around 10+ million customers.
When i test run the strategy for 100 records manually to analyze performance, around 50% of the over all time is spent in "Decision Data" shape which is used to get all propositions. We have around 200+ propositions to retrive and evaluate for each customer.
I read from some topics suggesting to limit properties mapped from proposition, so memory footprint is reduced. Is there any other suggested approach to highly improve time taken by "Decision Data" shape ?
In dataflow we get Customer dataset and call NBA strategy, since this "Decision Data" shape is the initial component in NBA strategy, in this design means, for each customer we invoke NBA strategy which inturn calls "Decision Data" retrieve and so time taken by this shape multiples by No of customers ?
Is there design change possible to take "Decision Data" shape outside NBA strategy and place one level up in Dataflow, so this proposition dats is retrieved only once ?