I have done some limited testing in a simulated environment.
Please refer to https://www.netapp.com/us/media/tr-4571.pdf
There is a link in this doc referring to KB
https://kb.netapp.com/Advice_and_Troubleshooting/Data_Storage_Software/ONTAP_OS/How_to_run_ndmpcopy_in_Clustered_Data_ONTAP
I setup an ONTAP 9.7 cluster. I created a FlexVol with 5000+ files (1K or less for testing) in many directories.
I was able to run this command:
system node run -node cluster1-01 -command ndmpcopy -sa ndmpuser:1tUMETJJN9sIyCJw -da ndmpuser:1tUMETJJN9sIyCJw 192.168.0.200:/nas/vol01 192.168.0.200:/nas/fg01
Which copied a flexvol to a flexgroup at the top level.
I also tried:
system node run -node cluster1-01 -command ndmpcopy -sa ndmpuser:1tUMETJJN9sIyCJw -da ndmpuser:1tUMETJJN9sIyCJw 192.168.0.200:/nas/vol01/d1/s1 192.168.0.200:/nas/fg01/D1/s1
which copied a couple of directories down (not even qtrees, regular directories).
Now, It did not 100% evenly distribute, but it still did a pretty good job.
/vol/fg01__0001/ 1200 408401 0% /fg01 nas
/vol/fg01__0002/ 1600 408001 0% --- nas
/vol/fg01__0003/ 1603 407998 0% --- nas
/vol/fg01__0004/ 1203 408398 0% --- nas
/vol/vol01/ 5308 158522 3% /vol01 nas