Backup or Restore Performance of the SAAS workload like M365 depends on several external factors.
Some of the external factors that may impact backup and restore performance are network bandwidth between the Backup Exec server and the M365 workload data centre, Microsoft 365 API throttling policies etc.
Note: Microsoft enforces throttling to limit the number of concurrent calls to a service. It prevents overuse of resources. When a throttling threshold is exceeded, Microsoft limits any further requests from that client for a period. This way throttling helps maintain optimal performance and reliability of the Microsoft services if an overwhelming number of requests occurs. Different Microsoft API(s) have different throttling limits and behaviour.
Backup Exec attempts to get the optimal performance considering all the above factors and has inbuilt logic embedded in the product.
1. Microsoft 365 restore jobs are multi-stream enabled by default to utilize available network bandwidth effectively. The data is restored in parallel streams.
2. Retry logic in case of failures mainly driven by network or throttling issues.
3. When throttling is detected, Backup Exec automatically reduces the requests to avoid failures due to throttling.
4. Data is uploaded in batches.
Microsoft 365 Restore Job Setting which may impacts restore job performance -
The restore wizard has the setting where ‘Preferred number of parallel streams to use for restore’ can be configured to optimize restore job performance.

The ‘Preferred number of parallel streams to use for restore’ setting indicates the number of streams (device concurrency) to use during restore from the concurrency configured on the deduplication storage. Backup Exec Deduplication storage concurrency can be checked from Backup Exec console > Storage > Backup Exec Deduplication Storage > Details > Concurrent Operations.
The actual number of streams used by the restore will be determined automatically by Backup Exec based on multiple factors as mentioned below -
1. Number of backup sets in the chain (full and incremental backup sets needed to perform the restore).
How many of the these backup sets can be processed in parallel.
2. What is the available network bandwidth.
3. Throttling policies set from on the respective Microsoft 365 workload.
Based on the above factors, Backup Exec will automatically spawn more streams or reduce the number of streams if that can make restore run faster or in a stable manner.