Question

Multiple DDB Partitions or Single DDB Partition

  • 23 February 2021
  • 4 replies
  • 58 views

Badge +4

Hi Team,

I have a query . If a storage library has 8 mount paths , all configured from different media agents and shared with each other . 

Should we create DDB partition on all 8 media agents or only on 1 media agent ?

What will help to increase performance of backup jobs  , DDB is hosted only on 1 media agent or distributed across multiple media agents ? I am thinking that if DDB is hosted only on 1 MA backup job has to look only on 1 MA everytime for duplicate blocks and signatures , if the DDB is distributed wouldn't it make the backup job slower as the backup job will check for duplicate blocks and signatures across multiple configured DDB partitions .

Let me know if my understanding is incorrect ?


4 replies

Badge +1

DDB look is same for both 1 partition vs multiple partitions. Lookup of a given signature of a block always happens on one partition based on mod value of it with number of partitions.

You will get better performance and resiliency with multiple partitions spread across multiple MAs. I would suggest to use 4 partition DDB with Horizontal scaling of DDBs feature enabled so that you can distribute partitions from all DDBs across all available MAs.

Badge +1

Have a look at sizing guide. Main factor should be backend data size that DDB will handle. 

Badge +4

DDB look is same for both 1 partition vs multiple partitions. Lookup of a given signature of a block always happens on one partition based on mod value of it with number of partitions.

You will get better performance and resiliency with multiple partitions spread across multiple MAs. I would suggest to use 4 partition DDB with Horizontal scaling of DDBs feature enabled so that you can distribute partitions from all DDBs across all available MAs.

Hi Prasad,

Thanks for the reply. What do you mean by Mod value? How it is determined? 

Badge +1

DDB look is same for both 1 partition vs multiple partitions. Lookup of a given signature of a block always happens on one partition based on mod value of it with number of partitions.

You will get better performance and resiliency with multiple partitions spread across multiple MAs. I would suggest to use 4 partition DDB with Horizontal scaling of DDBs feature enabled so that you can distribute partitions from all DDBs across all available MAs.

Hi Prasad,

Thanks for the reply. What do you mean by Mod value? How it is determined? 


Partition is a subset of DDB. Signatures are routed to appropriate partition using mathematical modulo operation. For a 2 partition DDB, we use the mod of 2 on the signature and possible return values will be either 0 or 1. if 0 then signature goes to partition 1 else partition 2. This way lookup happens on the particular partition.

Reply