--- title: "Set-VBRJobAdvancedStorageOptions" description: "This cmdlet sets storage options for the selected job. You can enable backup data deduplication and customize data units compression level and size. Read more about job storage settings in Veeam Backup & Replication User Guide." canonical: "https://helpcenter.veeam.com/docs/vbr/powershell/set-vbrjobadvancedstorageoptions.html" breadcrumb: "Veeam PowerShell Reference > Veeam PowerShell Reference > Jobs > Advanced Job Options > Set-VBRJobAdvancedStorageOptions" dateModified: "2026-08-19" --- # Set-VBRJobAdvancedStorageOptions ## Short Description Customizes advanced job storage settings. **Platform**: VMware, Hyper-V **Product Edition**: Standard, Enterprise, Enterprise Plus, Veeam Universal License ## Syntax ``` Set-VBRJobAdvancedStorageOptions -Job [-EnableDeduplication ] [-CompressionLevel ] [-StorageBlockSize ] [-EnableEncryption ] [-EncryptionKey ] [-KMSServer ] [] ``` ## Detailed Description This cmdlet sets storage options for the selected job. You can enable backup data deduplication and customize data units compression level and size. Read more about job storage settings in [Veeam Backup & Replication User Guide](https://helpcenter.veeam.com/docs/vbr/userguide/backup_job_advanced_storage_vm.html?ver=13). ::: note To modify settings, specify new values for the necessary parameters. The cmdlet will overwrite the previous parameters values with new values. The parameters that you omit will remain unchanged. ::: ## Parameters

Parameter

Description

Type

Required

Position

Accept Pipeline Input

CompressionLevel

Specifies the compression level for the created backup:

  • Auto = -1
  • None = 0
  • Dedupe-friendly = 4
  • Optimal = 5
  • High = 6
  • Extreme = 9

Default: Optimal.

Int32

False

Named

False

EnableDeduplication

Defines whether the job will deduplicate.

  • True: the data will be deduplicated during the backup job run (recommended).
  • False: no data will be checked for duplication.

Boolean

False

Named

False

EnableEncryption

Defines whether the job must use encryption. Use the EncryptionKey parameter to specify the encryption key.

Boolean

False

Named

False

EncryptionKey

Used to specify the encryption key for the EnableEncryption parameter.

Accepts the PSCryptoKey object. To create this object, run the Get-VBREncryptionKey cmdlet.

PSCryptoKey

False

Named

False

Job

Specifies the array of jobs. The cmdlet will modify advanced storage options of these jobs.

Accepts the CBackupJob[] object. To create this object, run the Get-VBRJob cmdlet.

CBackupJob[]

True

Named

True (ByPropertyName, ByValue)

KMSServer

Specifies KMS servers added to the Veeam Backup & Replication console. The cmdlet will decrypt data encrypted by this server.

Accepts the VBRKMSServer object. To create this object, run the Get-VBRKMSServer cmdlet.

VBRKMSServer

False

Named

False

StorageBlockSize

Specifies the integer defining the data blocks size. Larger sized blocks provide faster procession but lower deduplication level.

  • KbBlockSize256 (former WAN Target) = 0.
  • KbBlockSize512 (former LAN target) = 1.
  • KbBlockSize1024 (former Local Target) = 3.
  • KbBlockSize2048 = 4.
  • KbBlockSize4096 (former Local Target (large blocks))= 5.
  • KbBlockSize8192 = 6.
  • Automatic (Defines the best block size depending on the target type) = 7.

Default: KbBlockSize1024.

EKbBlockSize

False

Named

False

`` This cmdlet supports Microsoft PowerShell common parameters. For more information on common parameters, see [ Microsoft Docs](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_commonparameters?view=powershell-7). ## Examples ::: example ### Example 1. Editing Advanced Storage Settings for Backup Job [Using Pipeline] This example shows how to edit advanced storage settings for the `Backup Job 01` and `Backup Job 02` backup jobs. - The `EnableDeduplication` parameter is set to enable data deduplication. - The compression level is set to none (`0`). - The storage blocks size is set to `Automatic`. ``` Get-VBRJob -Name "Backup Job 01", "Backup Job 02" | Set-VBRJobAdvancedStorageOptions -EnableDeduplication $True -CompressionLevel 0 -StorageBlockSize 7 ``` Perform the following steps: 1. Run the [`Get-VBRJob`](get-vbrjob.md) cmdlet. Specify the `Name` parameter value. 2. Pipe the cmdlet output to the `Set-VBRJobAdvancedStorageOptions` cmdlet. Specify the following settings: - Provide the `$True` value for the `EnableDeduplication` parameter. - Specify the `CompressionLevel` parameter value. - Specify the `StorageBlockSize` parameter value. ::: ::: example ### Example 2. Applying Optimal Compression Level to all Jobs [Using Pipeline] This example shows how to apply the optimal compression level (=5) to all jobs. ``` Get-VBRJob | Set-VBRJobAdvancedStorageOptions -CompressionLevel 5 ``` Perform the following steps: 1. Run the [`Get-VBRJob`](get-vbrjob.md) cmdlet. 2. Pipe the cmdlet output to the `Set-VBRJobAdvancedStorageOptions` cmdlet. Specify the `CompressionLevel` parameter value. ::: ## Related Commands - [`Get-VBRJob`](get-vbrjob.md) - [`Get-VBREncryptionKey`](get-vbrencryptionkey.md)