A couple of questions around FAST VP.
First, I understand that PRC affects how much capacity FAST is allowed to move data into a given pool. Will the PRC affect how data is moved out of a given pool? In other words, if I have a thin pool that is 75% utilized and I change the PRC from 10% to 50%, will this cause FAST to move 25% data out of the pool? Or will this only cause FAST to not move any more data into the pool until the utilization drops below 50%?
I was under the impression that the PRC would cause data to be evacuated if the pool utilized percentage exceeded the PRC. So secondly, if I have a PRC of 10%, and the bound pool is oversubscribed and at 90% utilized, if I start writing data to a device in that pool will anything stop the pool from running out of space? Other than Allocate by FAST policy which I am aware of. Similar to my first question, is there a mechanism built into FAST to evacuate data in order to stay below the PRC?
Finally, for the placement of data by FAST - will existing hot tracks be demoted to make room for hotter tracks? Or is it required that the existing tracks become cold in order for them to be demoted and make room?
If the pool utilisation is above the PRC threshold, FAST cannot move data into that pool. Since the current state of the environment is not FAST compliant, FAST will take action to rectify this and make it compliant.
The PRC value is only used by FAST (not host allocations). Host allocations can continue right up until the pool is full... not recommended 🙂 Make sure sure you monitor and avoid this. The array is not responsible for allocations greater than the available capacity trying to be used by hosts. If you are at risk of exhausting capacity you can do a volume migration to another pool with sufficient capacity.
For placement of data by FAST, device stats are kept by FAST to determine movements. The older the data, the less value it has when FAST considers the moves.
Thanks guys, that is helpful. I am reading through the FAST VP Theory and Best Practices from Sean's post and it has a lot of good information in it.
Near the top of this whitepaper as it described PRC, it seems to indicate that PRC only controls FAST VP moving data into a pool. It does not have anything to do with moving data out of a pool. However later on in the migration section, it seems to contradict this:
Increasing the PRC makes less space available in the pool for use by FAST VP. As a result, if the PRC of a pool is increased to a level greater than the percent of free space in the pool, FAST VP actively starts moving data out of the pool in order to bring the percent of free space in line with the new PRC value.
For example, if a pool is 200 TB in size and has a PRC of 10 percent defined, 180 TB is available for use by FAST VP. Increasing the PRC to 20 percent means that only 160 TB is available to FAST VP. If the pool was 170 TB allocated to devices managed by FAST VP prior to the increase in PRC, FAST VP would attempt to relocate 10 TB worth of data to decrease the allocation level to 160 TB.
This paragraph makes me feel like in my first two scenarios, FAST VP would be actively moving data out of the tiers in order to make space. However I'm not sure that's what really happens.
With my 3rd scenario, I'm still in the dark on this as well. The whitepaper indicates that all extents are "scored" and then tiered based on score.
Then FAST VP places those extent groups with the highest performance score onto the higher-performing tiers within the associated policy
If the EFD tier is currently full of extent groups that score high enough to warrant them being in the EFD tier, but one or more extent groups in the FC tier score higher than some of the EFD extents, what happens? Will FAST VP start swapping the lowest scores from the EFD tier with the higher ones in the FC tier? Or does it wait until the EFD extents become cold to demote them?
Thanks for any clarification.
Fast MOVES extents. By definition a move will put data into a tier AND take data from a tier. It is not a copy operation.
Fast moves occur in both directions. it can be a PROMOTION to higher tier or DEMOTION to lower tier. This is done based on the scores.
Regarding the scoring, FAST keeps stats on extent usage and places the the highest scored extents in the EFD tier. It is a rolling scoring process, so if FAST scores an extent in the FC tier higher than the lowest scored EFD extents, then it becomes a candidate for promotion and the lower scored EFD extent becomes a candidate for demotion.
In reference to PRC, the PRC description you have in blue is exactly how it works. That is to say that FAST monitors compliance. If there is more data in a pool than the PRC value, FAST will attempt to make the pool allocation compliant with the PRC value.