mv is used between different storages, it first copies all files and then unlinks the source.
mv files one by one, so that each file is unlinked after being copied, and the folder structure is preserved?
You could use
rsync for this.
rsync -r --remove-source-files source_dir dest_dir
Files are immediately removed once transferred. Depending on which other information you need to preserve, you might actually prefer
-a) over simple recursiveness (