I have a Dell R320 server with a PERC H710 controller and 4x1TB disks (+4 empty drive bays).
During initial install a while back it was decided to configure it as a RAID6 because the usable space was enough at first, but future expansion was intended. The H710 can do online capacity expansion (OCE), so in theory adding some disks to grow the RAID should be a snap.
Well, the time has come to add some disks, and 1TB are super cheap now so I went ahead and got 4 more of them to fill up the remaining bays. No doubt the expanded array will have about 3x as much usable space, so that's nice. But my concerns are how this affects performance. Not the performance during the expansion, I know that will be degraded, but rather before vs. after expansion.
Does the OCE simply reprovision the space on the disks in such a way that the existing data segments remain where they were on the original disks? Or does it actually re-distribute all of the existing data & parity across all disks so that the end result is much like what one would have if the array had the 8 disks initially? Again, not newly written data after the OCE, which clearly will span all, but specifically the original data.
I would hope for the latter, as that would improve performance by spreading the I/O load across more spindles, but perhaps the OCE process was optimized for execution time instead, by minimizing the amount of data relocation?
I cannot find any sort of technical documentation that even hints one way or another, and I am considering just doing a backup-destroy-create-restore process just to ensure that the data is fully spread across the disks. However this is a much more involved process, both in time and effort, and also incurs a hefty downtime penalty.