We have an array of tiers that we use for managing the tiered storage btree. We should use the tiers based on supported operations rather than naming, array index, etc. That way we can have maximum flexibility with how we may use tiers in the future.
A tier can support some combination of reading, writing (as in individual updates) and flushing (we can copy an object to it).
In the POC the local tier can do reading and writing. The shared tier can do reading and flushing. Other possible tiers, for example, like a merge tier would be reading only, and an archival/glacier tier would be flush only.