I think this phenomenon is more commonly referred to as bouncing. And you are looking to debounce an input. (Switches bounce, and relays chatter)
It may be worth looking into libinput for debounce parameters/tweaking. They may be hard coded.
It’s not something I’ve messed around with on a PC. It’s common issue when reading the raw state of a button, as an input on a microcontroller.
If your keyboard has configurable firmware, it could be an approach too.
You better off enabling compression on a dataset.
Dedupe, even with the recent improvements, has huge overheads and will generally degrade in performance as the dataset increases in size, as it needs to keep track of the ‘routing’ table in RAM to redirect the request deduplicated blocks to the actual stored data. Apparently the latest openZFS release reduces the speeds loses over larger datasets, but it’s still subpar compared to compressed data
Video files are already heavily compressed, you’d be better off transcoding it to a more efficient media codec, like X265 or AV1, to save space on video files