Start-DedupJob
Start-DedupJob
Starts a data deduplication job.
Syntax
Parameter Set: Start0
Start-DedupJob [-Type] <Type> [[-Volume] <String[]> ] [-AsJob] [-CimSession <CimSession[]> ] [-Full] [-Memory <UInt32> ] [-Preempt] [-Priority <Priority> ] [-ReadOnly] [-StopWhenSystemBusy] [-ThrottleLimit <Int32> ] [-Timestamp <DateTime> ] [-Wait] [ <CommonParameters>]
Detailed Description
The Start-DedupJob starts a new data deduplication job for one or more volumes. The data deduplication job can queue if the server is running another job on the same volume or if the computer does not have sufficient resources to run the job. The server marks the queued jobs that you start with this cmdlet as manual jobs and gives the manual jobs priority over scheduled jobs. The server returns a DeduplicationJob object for each job that you start with this cmdlet.
For multi-volume data deduplication jobs, you can use the Preempt parameter to move a job to the top of the job queue and cancel the current job.
Parameters
-AsJob
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-CimSession<CimSession[]>
Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.
Aliases |
Session |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-Full
If you specify GarbageCollection for the Type parameter:
Indicates that garbage collection jobs free up all deleted or unreferenced data on the volume. If you do not specify this parameter, garbage collection jobs free up space after a system threshold of delete data is exceeded. We recommend that you run garbage collection regularly without specifying this parameter, and then once a month specify this parameter and run garbage collection again.
If you specify Scrubbing for the Type parameter:
Indicates that scrubbing jobs validate the integrity of all data on the volume. If you do not specify this parameter, the scrubbing job validates only critical metadata and data integrity issues that data deduplication previously encountered. We recommend that you run scrubbing regularly without specifying this parameter, and then once a month specify this parameter and run scrubbing again.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-Memory<UInt32>
Specifies the maximum percentage of physical computer memory that the data deduplication job can use.
For optimization jobs, we recommend that you set a range from 15 to 50, and a higher memory consumption for jobs that you schedule to run when you specify the StopWhenSystemBusy parameter. For garbage collection and scrubbing jobs, which you typically schedule to run in off hours, you can set a higher memory consumption, such as 50.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-Preempt
Indicates that the deduplication engine moves the job to the top of the job queue and cancels the current job. After the server cancels the current job, the deduplication engine cannot run the preempting job if the server does not have enough memory to run the job.
This parameter applies to manual data deduplication jobs only and is ignored for scheduled jobs.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-Priority<Priority>
Sets the CPU and I/O priority for the optimization job run that you run by using this cmdlet. For jobs that you run when you specify the StopWhenSystemBusy parameter, we recommend that you set this parameter to High. For typical optimization jobs, we recommend that you set this parameter to Normal.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-ReadOnly
Indicates that the scrubbing job process and report on corruptions that it finds but does not run any repair actions.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-StopWhenSystemBusy
Indicates that the server stops the job when the system is busy and retries later. We recommend that you specify this parameter when you set a low priority for the job.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-ThrottleLimit<Int32>
Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0
is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-Timestamp<DateTime>
Specifies a date and time. This parameter applies only to unoptimization jobs. The deduplication engine unoptimizes only files that it optimized or reoptimized since the DateTime value that you specify.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-Type<Type>
Specifies the type of data deduplication job. The acceptable values for this parameter are:
-- Optimization
-- GarbageCollection
-- Scrubbing
-- Unoptimization
Aliases |
none |
Required? |
true |
Position? |
1 |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-Volume<String[]>
Specifies an array of system volumes for which you want to manually queue data deduplication jobs. Enter one or more volume IDs, drive letters (such as D:), or volume GUID pathnames (using the form \\?\Volume{{GUID}}\
). Separate multiple volumes with a comma.
Aliases |
Path,Name,DeviceId |
Required? |
false |
Position? |
2 |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
-Wait
Indicates that the cmdlet waits for the job to complete and provides progress information to the client.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
<CommonParameters>
This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).
Inputs
The input type is the type of the objects that you can pipe to the cmdlet.
- System.Management.Automation.SwitchParameter
- System.String[]
- System.UInt32
- Microsoft.PowerShell.Cmdletization.GeneratedTypes.DedupJob.Priority
- Microsoft.PowerShell.Cmdletization.GeneratedTypes.DedupJob.Type
Outputs
The output type is the type of the objects that the cmdlet emits.
Microsoft.Management.Infrastructure.CimInstance#
The
Microsoft.Management.Infrastructure.CimInstance
object is a wrapper class that displays Windows Management Instrumentation (WMI) objects. The path after the pound sign (#
) provides the namespace and class name for the underlying WMI object.
Examples
Example 1:
PS C:\>