We will investigate the disk structure of a half rack exadata machine. There are 7 exadata storage servers and each one of the storage servers contains 12 hard disks. So You have total 84 disks on a half rack exadata machine.
For example if you have a diskgroup (DATA) having a size of 453632 MB on those 84 disks. If you query the asm stat of that diskgroup you can see 84 rows of same size disks reserved for that diskgroup.
select TOTAL_MB, NAME from v$asm_disk_stat
where name like 'DATA%';
1 453632 DATA_CD_00_DBCELADM01
2 453632 DATA_CD_00_DBCELADM02
3 453632 DATA_CD_00_DBCELADM03
83 453632 DATA_CD_11_DBCELADM06
84 453632 DATA_CD_11_DBCELADM07
Where does usable_file_mb come from ?
v$asm_diskgroup view gives tons of information and It is also a good start for capacity planning.
reference for that view cab be found at:
For practical use lets explore this view a little bit.
select name, total_mb, free_MB, hot_used_mb + cold_used_mb tot_used, usable_file_mb, required_mirror_free_mb req_mb
where name = 'DATA';
is the name of the asm diskgroup. ( DATA )
total capacity of the diskgroup. ( 453632 * 84 = 38105088 )
HOT_USED_MB & COLD_USED_MB:
total used capacity (0 + 13454272)
remaining MB that is not used ( 38105088 – (0 + 13454272) = 24650816 )
is the disk capacity of one failure group. In exadata one storage cell. ( 12 * 453632 = 5443584 )
It is the left capacity assuming after you lost one failure group and rebalancing the diskgroup so that redundancy is guaranteed.
For a normal redundancy the calculation is follows :
USABLE_FILE_MB=(FREE_MB – REQUIRED_MIRROR_FREE_MB ) / 2 = ( 24650816 – 5443584 ) / 2 = 9603616