To check the storage overhead, I would suggest to check on DAVG parameter considering the virtual environment. From the esxtop page:
- KAVG
These counters track the latencies due to the ESX Kernel's command.
The KAVG value should be very small in comparison to the DAVG value and should be close to zero. When there is a lot of queuing in ESX, KAVG can be as high, or even higher than DAVG. If this happens, please check the queue statistics, which will be discussed next.
- DAVG
This is the latency seen at the device driver level. It includes the roundtrip time between the HBA and the storage.
DAVG is a good indicator of performance of the backend storage. If IO latencies are suspected to be causing performance problems, DAVG should be examined. Compare IO latencies with corresponding data from the storage array. If they are close, check the array for misconfiguration or faults. If not, compare DAVG with corresponding data from points in between the array and the ESX Server, e.g., FC switches. If this intermediate data also matches DAVG values, it is likely that the storage is under-configured for the application. Adding disk spindles or changing the RAID level may help in such cases.
Also, the settings you are seeing is for entire writes including the kernel's as well as the VMs.
One more tip, when I am working with apps such as DB, try to include the parameters of Read Latency Stats and Write Latency Stats which can be useful. In esxtop, press d>press f>press h > press i and Enter.
1. Is it possible that the data that i see on esxtop is not ture? the numbers are too high ( my appliction seems to work fine)
No, the esxtop is consolidated not only for your VM.
2. Is it a good way to measure the overhead made by the vmkernel? (in terms of storage)
A good place to start http://communities.vmware.com/docs/DOC-9279