Quote:
|
Originally Posted by sundaram
our porduction databases will soon be running in Virtual Machine
|
Generally speaking, it is a very bad idea. There are two things to which DBMSes are very sensitive: memory and disk I/O. Virtualizing both (or either) means that DB2 will not be in control of physical memory or disk access, and all assumptions it makes for query optimization may be wrong at random. For example, DB2 may think that a table scan with a large available (but virtual) bufferpool and efficient prefetch from a (virtual) disk might be the best strategy for a certain query, while the hypervisor decides that it needs to page out half of the DB2 VM virtual memory to make room for another virtual machine, and the DB2 containers share the physical storage with Windows registry database...
In other words, virtualizing database servers might be acceptable in development or functional test environments, but never in production.