Forum Discussion

dbeavon3's avatar
dbeavon3
Memorable Member
1 year ago
Solved

Poor parallel processing problem in pipelines (aka P5)

When Microsoft was building ADF parallel pipelines, they made the decision to use static partitioning.  The workloads that are going to a parallel loop is prepared in advance and they are not adjuste...
  • dbeavon3's avatar
    dbeavon3
    1 year ago

    Hi v-kpoloju-msft 

    The update is from Microsoft:
    https://learn.microsoft.com/en-us/azure/data-factory/pipeline-trigger-troubleshoot-guide#degree-of-parallelism--increase-doesnt-result-in-higher-throughput


    The problem is that this is an obvious bug and they choose not to fix it, despite the fact that customers have struggled for years:

     

     

     

    Any concurrent or threaded programming language nowadays will allow tasks to be re-balanced while processing is underway.   Customers of ADF will expect it to perform the dynamic load-balancing, especially given the excessive cost of the underlying compute and the underlying network components.

     

    The workarounds can often be complex, and involve predicting how long something will take to run, before you run it.  This prediction is not always accurate, and working on that prediction can take even more programming effort than the work that is done inside the loop.