USABLE_FILE_MB
indicates the amount of free space, adjusted for mirroring, that is available for new files to restore redundancy after a disk failure
External Redundancy : Total_MB 1000 mb USABLE MB 1000 MB
NORMAL REDUNDANCY : TOTAL_MB :1000 MB USABLE_MB : (free_mb – required_mirror_free_mb) / 2
HIGH REDUNDANCY : TOTAL MB :1000 MB USABLE_MB: (free_mb – required_mirror_free_mb) / 3
Looks simple but there are factors which influence the required_mirror_free_mb
Let see the below setup now
The Test Diskgroup has two failure groups (FG1 and FG2) each contains 3 disk with capacity of 5GB each
USABLE_MB=(free_mb – required_mirror_free_mb) / 2
Now the Required_mirror_free_mb=5119MB
Thats the size of a single asm disk( Disk with max size is considered), In Normal redundancy we can tolerate single disk failure
USABLE_MB=(30600-5119)/2 =12740
Now lets see a different setup :
Lets create a Diskgroup with 3 failgroups (FG1,FG2,F3) with 2 disks each 5 GB
Now the surprise here is the Required_Mirror_MB has been changed from 5119 to 10238,
The reason being that even we loose a the third failure group FG3 we still can maintain a normal redundancy with 2 existing failure groups, Hence the required_mirror_free_mb will change from a single disk to a single failure group
Note that 3 FG in normal redundancy is different from 3FG with high redundancy
You can see the REQUIRED_MIRROR_FREE_MB is same for the both config(NORMAL 3FG and HIGH 3FG) but the USABLE_FILE_MB=6770
USABLE_MB: (free_mb – required_mirror_free_mb) / 3
USABLE_MB:(30549-10238)/3=6770
Now lets try High redundancy with 4 FG
Now the Required_mirror_mb has been increased from 10238 to 15357
The current setup can tolerate FG4 failure and can still operate in High Redundancy with default 2 disk failure , so that makes 3 disks total in this setup
5119*3=15357
USABLE_MB: (30549 – 15357) / 3=5064 MB