What is deswizzler or deswizzling
Applies to
- Data ONTAP 7
- Data ONTAP 8 (7-mode and Clustered)
- ONTAP 9
Answer
Note: Deswizzling, deswizzle, and deswizzler are used interchanglably in this article, but all refer to the same type of wafl scan.
- On Data ONTAP 7-mode and ONTAP 9 DP style SnapMirror destination volumes, this scan maps aggregate (physical) block locations to the volume (logical) block location, as the transfer does not include the physical disk block location.
- Example:
- In physical house addresses, you have a "physical" location, like 123 N. Main St, and a "logical" location, like Sunnyvale, California.
- These two properties are tied together with a postal code.
- It is possible for the postal service to reference together the "physical" and "logical" address parts by the postal code.
- Note: Volume move uses the type-DP SnapMirror engine, so the destination volume will have a deswizzler scan.
- Example:
How does this affect performance?
- Deswizzling scans are minimal overhead on CPU and disk singularly.
- Multiple scans might cause CPU or disk contention, but this is rare.
- If a block is read from a user/host and is swizzled (deswizzle scan has not updated this block yet), there is a slight read latency increase and extra overhead.
- The read does a slow path.
- In systems with SSDs this is minimal, but with HDDs, it may add a few milliseconds of latency per operation.
Why is there always a deswizzling scanner running?
- If the volume is a Data ONTAP 7-mode SnapMirror or DP type SnapMirror destination, each completed transfer induces a new snapshot needing a scan.
- Snapshots may be cleared out to let the scan run on the Active File System (AFS).
- Deswizzling scans may never finish due to snapshot creation restarting the scanner with the most recent to least recent snapshot.
- If you are in this situation, please schedule a window to stop all volume snapshots and SnapMirror type jobs.
- For more information, see Deswizzler runs constantly on a SnapMirror Destination Volume.
Does deswizzler run against SnapMirror type-XDP relationship destination volumes?
- No. Deswizzler does not run against SnapMirror type-XDP destination volumes in ONTAP 9 and later.
Can deswizzling be aborted?
- No. This scan is essential for performance should a SnapMirror destination be needed as a Disaster Recovery site being activated.
Does deswizzling take place on offline volumes?
- No, deswizzling can not run on an off line volume.
- If a deswizzling operation is interupted by either the volume being brought offline or during a snapmirror update, the deswizzler will restart at a checkpoint instead of restarting from the beginning when a block level update is completed in the middle of a deswizzling scan.
What if a deswizzler is running on a volume that is not a dedicated SnapMirror destination volume?
- At some point in the volume's history, this volume was a SnapMirror destination, or a volume move destination.
- This could go back many months or even years without observation.
- As mentioned above, a window of no snapshots on this volume is needed to let the scan finish.
- Another possibility is a cascade SnapMirror, where the middle node of a tertiary SnapMirror trio is the source for the end destination.
Can the deswizzling scan be disabled?
- Yes. However, if any blocks are swizzled, there is a slow-path read penalty, which on HDD systems may add a few milliseconds of read latency.
- The command is
options wafl.deswizzle.enable off
at the node shell or 7-mode shell.- For example, here is an example from a ONTAP 9 system:
cluster_CLI::> node run -node node1 "options wafl.deswizzle.enable off"
cluster_CLI::> node run -node node1 "options wafl.deswizzle.enable"
wafl.deswizzle.enable off
How do I check if deswizzler is running?
Administrators might check to see if the scanner is running with the wafl scan status command:
7-Mode: filer> priv set advanced filer*> wafl scan status ONTAP 9: cluster_CLI::> node run -node node_name "priv set advanced;wafl scan status"
Output example: Volume volume1: Scan id Type of scan progress 226328 container block reclamation block 1871 of 24095 (fbn 11220) 226329 volume deswizzling snap 157, inode 2144843 of 2172681. level 1 of normal files. Totals: Normal files: L1:10/4881 L2:0/11336 L3:0/5723 L4:0/0 Inode file: L0:0/0 L1:0/0 L2:0/0 L3:0/0 L4:0/0
Do I need to disable WAFL scanners before modifying swizzle scanners?
- In order to change the behavior of running deswizzling scanners all deswizzling scanners should be first terminated by setting the
wafl.deswizzle.enable
tooff
and waiting for all deswizzling scanners to exit
Additional Information
Related Links: