Hotspare is a good option, but the hard drive which is used as hot spare ought to be tested every now and again.
Let's consider such a situation - you decide to build your own RAID array and put N disks (including the hot spare disk) to the RAID array.
In this case there exists 1/N probability that the first disk to fail happens to be a hotspare disk.
Then when one of the RAID array member disks fails you are surprised to learn that the hotspare is unable to replace a failed member disk.
To avoid this you need to check a hot spare disk or stick to RAID6E or RAID 5E/EE array levels.