You can create a level of redundancy on a zpool by using a mirrored set of VDEVs.
If you have a pool that is using mirrored devices then it can use the "bit-rot" repair feature and recover from most data errors.
This allows ZFS to try to repair damage to data when it finds a checksum that doesn't match the data it is reading.
If each of the disks shown in 'zpool status' output is a single physical disk and not a RAID 1 array, then losing one disk or having corrupted writes will mean all data is lost on the pool. The only recovery method will be to destroy the pool and recover from a backup of the data.
Adding SSD cache for write operation will not prevent data errors or help with redundancy.
If you have a ZFS RAIDZ or RAID10 pool then the filesystem will do automatic repairs during read/write operations so you generally don't need to do anything to repair bit-rot, it's automatic.
However, if you have a pool with no ZFS RAID VDEV's that provide Data Redundancy(common when layering over hardware RAID) then the Storage Pool will be unable to automatically make repairs when the filesystem detects a block with a bad checksum.
Additional detail can be found here: