http://www.oracle.com/technetwork/server-storage/solaris10/documentation/wp-oraclezfsconfig-0510-ds-ac2-163550.pdf
Monitor disk space and memory resources.
Keep 20% free space in your Oracle Solaris ZFS storage pools.
The following command gives the current memory size in bytes that is used as Oracle
Solaris ZFS cache:
# kstat zfs::arcstats:size
Monitor Oracle Solaris ZFS cache sizes with the above command and readjust the
zfs_arc_max parameter when needed. If the vmstat command shows always
large free memory, you can also increase the value of zfs_arc_max.
2. Use Oracle Solaris ZFS quotas and reservations to keep free space in storage
pools.
Oracle Solaris ZFS writing strategies change when the storage volume used goes over
80% of the storage pool capacity. This change can impact the performance of rewriting
data files as Oracle's main activity. Keep more than 20% of free space is suggested for
an OLTP database. Consider setting quotas on the main pool's file systems to guarantee
that 20% free space is available at all time.
For a data warehouse database, keep 20% free space in the storage pool as a general
rule. Periodically copying data files reorganizes the file location on disk and gives better
full scan response time. For a large data warehouse database, we can have a specific rule
for read-only table spaces. When the data loading phase is ended, the table space is set
to read only. We can then copy the data files of the table space in a storage pool dedicated to read-only table spaces, and for this type of usage, we can use more than
80% of the storage pool's capacity.