Deduplication Database (DDB) Recommendation
This document describes how to plan for and measure Input Output Operations per second (IOPs) when commissioning disk storage to store Deduplication Database.
Deduplication database disk volume stores a multi-threaded high performance database that contains block signatures and plays a critical role in deduplication enabled backups and DASH copies. Deduplication database needs to be on a fast disk for optimal backup and DASH copy performance.
The following section explains the use of Iometer which is a widely used industry standard tool for measuring IOPs. Using IOPs rating provides a standard and simplified way to commission storage without having to understand and use proprietary tools.
After configuring storage volumes, run Iometer to confirm the volumes provide recommended IOPs as described in the below table, that is, with 1 worker thread: 320+ IOPs and with 8 worker threads: 1000+ IOPs. As long as the storage volumes can provide rated IOPs, the actual physical configuration behind the volumes is immaterial. Example: If a RAID 6 configured volume consistently provides the same IOPs as a RAID 0 configuration, it is OK to use RAID 6 configured volume.
Note that the IOPs ratings are per DDB volume. If multiple MediaAgents use SAN attached LUNs belonging to the same disk array, make sure to test IOPs ratings concurrently on all MediaAgents by running IoMeter in parallel.
If the physical spindles behind the volume are shared between multiple volumes, it is important to make sure the load on the underlying physical disks remains the same as at the time of IoMeter testing. Increase in load on the shared disks may result in degraded performance.
Deduplication database must be hosted on the volumes that meets the below IOPs requirement.
Node Type |
RAM |
Suggested DDB Volume Size |
IOPs With Single worker thread |
IOPs With 8 Worker Threads |
Estimated Front End Size* |
Estimated Backend Size** |
Example Configurations |
Extra Large | 32-64 GB | 800 GB - 1 TB | IOPs exhibited by SSD or Flash based storage devices No need to run IO Meter to measure IOPs |
Up to 60 TB | Up to 120 TB | Fusion-io ioDrive2 785 GB PCI Express 2.0x4 MLC Solid State
Drive (SSD) (OR) 4x SSDs (using NAND Flash) with 600 GB, 3 RAID 5 and 1 hot spare configuration |
|
Large | 32-64 GB | 800 GB - 1 TB | 320+ | 1000+ | Up to 40 TB | 60-90 TB | 8 Spindles, 15K RPM SAS/FC, 300 + GB each, RAID 10 configuration |
Medium | 24-32 GB | 600 GB | 260+ | 800+ | 20 - 30 TB | 30-60 TB | 6 Spindles, 15 K RPM SAS/FC, 300+ GB each, RAID 10 configuration |
Small | 16-24 GB | 400 GB | 220+ | 600+ | Up to 20 TB | Up to 30 TB | 4 Spindles, 15K RPM SAS/FC, 300+GB each, RAID 10 configuration |
Extra Small | 16 GB | 200 GB | 200+ | 350+ | Up to 10 TB | Up to 15 TB | 2 Spindles, 15K RPM SAS/FC, 300GB each, RAID 1 configuration |
Assuming 30-90 days of retention with weekly full backup cycle.
* - Total size of Application Data backed up in the first full backup.
** - Total data footprint on disk library.
1. | Download and install Iometer on the server (MediaAgent) where storage disks/volumes need to be tested.
Iometer can be downloaded from www.iometer.org. |
|
2. | Ensure to run the Iometer test on the complete raw
disk. If you wish to run the Iometer on a volume which has the data, then make sure to copy the data on a different location before performing the test. This is to avoid the data loss issue. Once the test is complete you can copy back the data to old location. |
|
3. | Stop all the services on the MediaAgent on which the
IOPS need to be tested. Perform the following steps to stop the services:
|
|
4. | Make sure that there is no SIDB.exe process running on
the MediaAgent.
|
|
5. | Copy all the data from the volume that needs to be
tested to a temporary folder. Make sure that permission on the files/folders are also copied. |
|
6. | Delete the volume. |
Worker thread is an entity that runs the test defined under Access Specification Tab of IoMeter UI. Multiple worker threads run the tests in parallel to test concurrent performance.
Use the following steps to run Iometer using single worker thread:
11. | Click the Access Specifications tab. | |
12. | From the Global Access Specifications area, select the Iometer profile that needs to be used for IOPs measurement test. |
![]() |
Recommended Iometer Profile for Testing Deduplication
Database Volumes
4K Block Size, 100% Access, 100% Random, 50% Read and 50% Write This profile closely emulates the way in which disk is accessed by C-tree database lookups. |
![]() |
13. |
Click the Results Display tab. Change Update Frequency slider to 5 seconds. |
![]() |
14. |
Click the Test Setup tab. Set the time Run Time to 30 minutes |
![]() |
15. |
|
![]() |
16. |
Recreate the volume on the disk with the same drive letter or mount path. If required format the volume. |
|
17. | Copy all the data from temporary folder back to the volume. | |
18. |
Start all the Services.
|
Use the following steps to run Iometer with 8 worker thread:
|
![]() |
To test the disk available on linux machine, Iometer requires two components, Iometer UI and Dynamo.
The Iometer UI is run on Windows host. It is possible to load the Dynamo workload generator on another host (linux host). In the following case, the Linux host running Dynamo is the machine under test, and the Windows host running the Iometer UI is just reporting the numbers.
1. | To perform Iometer test on linux machine two hosts are
required:
For installation instructions, refer to Iometer documentation on Iometer website. |
|||
2. | After installation, verify network connectivity between
the two machines, make sure both the machine can ping each other. Run dynamo
on linux MediaAgent with two parameters:
In the figure below, 100.10.100.12 IP address specified by –I parameter is the IP address of Windows host and IP address 100.10.100.23 specified by –m is that of linux host. |
![]() |
||
3. | After running dynamo, run Iometer with administrator privileges
on Windows host. See the following sections:
In this figure, under All Managers, FARGO is the Windows host and flystone69 is the Linux MediaAgent. |
![]() |