So, let’s say the DBA (or insert some other discipline) wants to do some testing for a new product (known to happen occasionally) â€“ and the way he would really like to test is to create 20 test cases, which requires 20 copies of the main database. He would then automate the test and therefore get results very quickly.
He approaches the storage admin with the problem, only to be told this isn’t possible since there isn’t enough space on the array. The DBA goes back to his cube frustrated, and figures out some ghetto way of creating at least 1 copy of the database, which creates the following problems:
- He has to figure out a way to do it (takes time)
- He can only test 1 case at a time (time)
- He cannot easily compare what-if scenarios between test cases (lack of flexibility)
- His ghetto way of doing it may involve single 1TB disks in a workstation (lack of reliability, time)
Ultimately, the testing takes longer, is error-prone, and the DBA’s productivity level goes way down.
What if the storage admin could, instead, tell the DBA that he can even take hundreds of copies of the DB, there’s no issue doing that?
What would happen to the DBA’s productivity?Â Â Â Â
What new ideas would he be able to come up with?
How would that affect the quality of the product?
How would that affect the company’s bottom line? Being able to go to market with improved quality and quicker than the competition?
You see, intelligent storage â€“ intelligently deployed â€“ can solve many more problems than just “give me some space” or “give me more performance”.
There aren’t many technologies out there that can comfortably do this, which is probably why most storage people aren’t aware of this. But an array that can create space- and performance-efficient application-consistent DB clones is the ticket. Being able to create full copies and/or virtual space-efficient copies that end up being unusably slow doesn’t countâ€¦ 🙂
The only vendor I know of that can pull this off (properly) is NetApp with their FlexClone technology. One can even use it to deploy thousands of identical VMsâ€¦ there are some use cases for that, too 🙂
Activision (the company that makes the famous Guitar Hero game) is a good example of using this technology to rapidly accelerate development â€“ and ended up making the Christmas deadline, which resulted in several more millions in sales. See here.
Oracle is another small company that uses this technology pervasively.
If anyone else knows of more vendors that can do this (properly) please chime in.