Over-allocation vs Virtualization
orbist 060000HPM5 Comments (3) Visits (3551)
I've been seeing a lot of discussion around the topic of Thin Provisioning vs Storage Virtualization as we know it today. While its true that when compared with other uses of Virtualization, todays storage devices don't pretend to have more space than there is - unless you use Thin Provisioning or the more accurate term 'Over-allocation'. In fact, todays Virtualization devices do almost the inverse, they pretend to be a single virtual disk when there may be many arrays providing the capacity being used. Whatever, the term 'Storage virtualization' is pretty much embedded in our storage culture and I suspect that 'over-allocation' will be seen as another form of Storage virtualization as more vendors provide it across their product ranges.
Over at Hitachi I see that Hu Yoshida is again telling us :
"it must be done in a storage control unit platform"
One thing I'm trying to do in my growing part work is see it from all sides and explain where I see each approach has its benefits and any drawbacks. I'm not saying it has to be done anywhere, just that where you do it does make a difference. The appliance and controller based approaches aren't too dis-similar when comparing what features can be deployed.
One of Hu's main points why virtualization has to be done in the controller, which I have commented on before, is how you do over-allocation in other devices. Lets think about this for a second. In both an appliance and a controller, because you directly re-drive I/O requests, a lookup is performed in the virtualization map to determine the correlation between virtual LUN,LBA and physical LUN,LBA(s). This makes dynamic over-allocation pretty simple (in principal!) The first time you write a new piece of data the virtualization map will be empty (for the given LUN,LBA), so you allocate a free extent, update the mapping table and write the data. Now this is an over-simplified view, and its all the bits around the edges, what happens when you do start to run out of space and the other items BarryB mentions in is various Catch 22 posts.
I just don't like the "it must" type statements, especially when it is not the case.