Yes, you are good to go for SDRS. It will solve your problem not only from space balancing but also from IO balancing.
Also, as per current design, when you enable SDRS on datastore cluster, it enables SIOC (storage IO control) as well on all the datastores in datastore cluster. With SIOC, you can set shares on each VMDK in a VM in terms of IOPS and whenever there is IO resource contention, SIOC will distribute IOPS from a datastore to all the VMS resided on that datastore as per the shares set on VMDKs@VMs.
SDRS offers you below sub-features:
1. Initial placement of the VMs those are getting newly created or cloned or migrated from other datstores: SDRS considers IO & Space load while placing the VM on appropriate datastore inside the datastore cluster.
2. Space IO balancing based on space threshold you set (in %)
3. IO load balancing on IO threshold (in ms)
4. You can set affinity & anti-affinity rules .
5. Datastore maintenance mode: If you want to keep one datastore in maintenance mode, VMS on that datastore will be automatically migrated to other datastores in the cluster.
Please note that Storage IO Control != Storage DRS IO Load Balancing
Refer:Death to false myths: Storage IO Control = SDRS IO load balancing
Please refer in and out of SDRS: An introduction to Storage DRS
Let me know if you need more details on configuration. or for any doubt you may have
Thin VMDKs on Thick
One of the very nice things about this appraoch is that, through the use of Storage DRS, when one datastore in a datastore cluster starts to run out of space, possibly as a result of thinly provisioned VMs growing in size, SDRS can use Storage vMotion to move VMs around the remaining datastores in the datastore cluster and avoid a datastore filling up completely. The other advantage is that there are no dead-space accumulation/reclamation concerns as the storage on the back-end is thickly provisioned. One factor to keep in mind though is that Thin provisioned VMDKs have slightly less performance than thick VMDKs as the new blocks allocated to the VMDK were zeroed out before the I/O in the Guest OS is commited to disk.
Refer: Thin Provisioning - What's the scoop? | VMware vSphere Blog - VMware Blogs