March 15, 2012 at 10:00 am
Hi,
I was wondering if there's a way to measure the data-transfer rate in SQL server 2008 for all tables.
Thanks
March 15, 2012 at 11:34 am
Can you clarify what you mean by "for all tables"?
Did you mean data throughput as in the amount of data read or written per second, or are you talking about rows/second, or something else?
You can measure pure data throughput at the physical disk level using PerfMon counters like "Disk Bytes/Sec", "Disk Write Bytes/Sec" and "Disk Read Bytes/Sec". Provided there are only SQL Server databases running on a given disk that should give you an idea.
There are no special teachers of virtue, because virtue is taught by the whole community.
--Plato
March 15, 2012 at 11:51 am
yes thru PerfMon we can get "Disk Bytes/Sec", "Disk Write Bytes/Sec" and "Disk Read Bytes/Sec" and we do have just one database on that server but PerfMon will give us the total disk read and write and not break it down at the table level.
suppose i have 100 tables i need to know how much data was written bytes/sec for each table.
March 15, 2012 at 12:02 pm
I do not know of a way to easily measure throughout at the table-level.
One way that comes to mind, albeit an extremely labor-intensive way, would be to move a table into a new filegroup, and then put the data files for the new filegroup onto its own different disk so you can use the PerfMon counters I mentioned.
My thoughts are that, at best, your mileage will vary wildly when trying to measure throughout at the table-level. The writing of data to disk does not always happen at the time the command to write the data to the table occurs. The buffer pool, well, buffers all of that for us to make it more efficient.
I'll step aside and see if others will come forward with alternatives.
There are no special teachers of virtue, because virtue is taught by the whole community.
--Plato
Viewing 4 posts - 1 through 3 (of 3 total)
You must be logged in to reply to this topic. Login to reply