Mule 4 | Batch Processing | Part 1 | Detailed Concepts | Different Phases | Aggregation

Поділитися
Вставка
  • Опубліковано 30 вер 2024

КОМЕНТАРІ • 19

  • @anupamsarkar54
    @anupamsarkar54 3 роки тому +3

    Really good article to understand Mule Batchjob concept... thanks for creating such content ..really appreciate it...

  • @rahul-virani
    @rahul-virani 3 роки тому +2

    Hi, Good explanation. I have one doubt about Batch Block Size. From Mule's documentation (docs.mulesoft.com/mule-runtime/4.3/batch-filters-and-batch-aggregator) what I understand is that Batch Block Size means total no of records available in memory at a time for a single thread. For example if you have 10000 records to process with Batch Block Size as 100 and total max concurrency as 16 (assume we have 8 cors), that means 1600 records will go in memory but from your explanation what I understood is Batch Block Size mean that it represents no of records will be taken out in memory from then those will be processed by all threads. Please explain if possible, Thanks.

    • @Vishwasp13
      @Vishwasp13  3 роки тому +1

      Your understanding is correct, the thread is per block and that is exactly why one should not set the block size to less than 100 as it will assign only a single thread to that block of 100 records and make the processing sequential. I tried to go through a general approach to explain but maybe that caused confusion. Thanks for asking this doubt, others might find this helpful.

    • @rahul-virani
      @rahul-virani 3 роки тому

      @@Vishwasp13 Thanks for the clarification. So I believe the life span of a particular block for that single thread, would be completion of processing phase i.e. all batch steps. So if we have given some positive no to the failed record count; a condition might occur such as some blocks processed with all steps and others were only able to finish step-1 and failed records count limit has been breached !! Plz give your thoughts.

    • @luismesquita6528
      @luismesquita6528 7 місяців тому

      @@Vishwasp13 I also found it a bit confusing becasue of the "batch job working in brief section" as there you explain one record can go ahead of the other by being assigned to a different thread each . In this case it makes sense ifor a block size of 1.
      Like said in Mule documentation:
      "Within the Batch Step component, processing takes place in parallel at the block level, but records within each block process sequentially by default."
      "After processing records in a block, the Batch Step sends the records back to the stepping queue where the records wait for the next Batch Step component."

  • @Rama906556
    @Rama906556 3 роки тому +2

    @Vishwas - AMazing as always. Wish you had added these 2 points.
    1) Advance tab - Batch history - When and what is the use of it.
    2) Scenario - when you should streaming vs when you should aggregator - When we use database - Bulk Update - Use Aggregator - When writing to file in S3 bucket use streaming.

    • @ramesharoor6081
      @ramesharoor6081 3 роки тому

      streaming provides one-read forward-only iteration of records whereas the aggregation permits gives you random and/or sequential access to records

    • @Vishwasp13
      @Vishwasp13  3 роки тому

      Thanks for the inputs, I thought of adding these points but the Batch History tab is not used much so thought of skipping it.

  • @madhuramadhura3534
    @madhuramadhura3534 3 роки тому

    Nice vidoe...have one doubt on job instance id... If say it's hardcoded, while executing it's stopped in midway, while restarting the batch job, y it will try to create new batch job instance, eventually fails since having duplicate instance id, rather it should continue the execution by taking job instance id in object store...pls help me here...

  • @ramesharoor6081
    @ramesharoor6081 3 роки тому +1

    awesome explanation.

  • @mayuria2447
    @mayuria2447 3 роки тому

    Sir if we are writing files to some external system in the batch processing what happens if that external system is down for time what happens to output data from batch processing how do we handle it do we need to create a objectstore there to store the data until external system up and them pass It on object store data in to external system which is the output of the batch processing

  • @beautifulu9295
    @beautifulu9295 3 роки тому

    This is very helpful video 🤟

  • @ravichandra1498
    @ravichandra1498 3 роки тому

    Highly appreciated

  • @tunedivya
    @tunedivya 3 роки тому

    Very well explained

  • @rithulkumar1387
    @rithulkumar1387 3 роки тому

    Great Video

  • @VikasKumar-nc4bo
    @VikasKumar-nc4bo 3 роки тому

    Nice work👍

  • @mayuria2447
    @mayuria2447 3 роки тому

    Brilliant

  • @sivabalansethu8300
    @sivabalansethu8300 3 роки тому

    Great. Good presentation.

    • @Vishwasp13
      @Vishwasp13  3 роки тому

      Thanks for the appreciation.