At work, we have a system that relies on what I can equate to a flat file database. It does what appears to be liner scans of each database file. Naturally, our limit here is going to be file I/O. This applications database table pages reside in the same directory. While some tables are read frequently, others are barely touched over the normal course of business.
We are in the process of creating a shared storage setup (early stages, not sure the vendor or setup yet).
My question here is, would performance be better to expose a disk over the shared storage (like an VMDK stored on an ISCSI target or NFS share) or to connect to the shared storage inside the guest.
My assumption (based on my limited knowledge) is the latter, since the storage server could potentially cache the more frequently used files only, and not the whole disk, whereas the former would need to cache the whole disk, potentially taking up more cache and maybe more cache swaps based on cache size.