March 5, 2008 at 3:23 pm
GUys,
Is there any way track tables which have most no of reads and writes from a database of 400 tables.
Thanks
March 5, 2008 at 5:42 pm
You can run a profiler trace for a given period of time. The trace will include reads and writes and this data can be exported to a database. Be careful when running a trace as a high volume database can create hundreds of thousands of records very quickly and can overwhelm your system.
DAB
March 6, 2008 at 1:06 pm
You could use the index DMV's (sys.dm_db_index_usage_stats) to get an idea of how frequently your tables are hit (assuming they're indexed properly), but other than that I'm not sure what other options you have outside of profiler if you are targeting tables vs. databases.
March 6, 2008 at 6:10 pm
This will give you all your i/o since your last SQL restart:
SELECT
DB_NAME(database_id) AS database_name
,FILE_ID
,sample_ms
,num_of_reads
,num_of_bytes_read
,io_stall_read_ms
,num_of_writes
,num_of_bytes_written
,io_stall_write_ms
,io_stall
FROM
sys.dm_io_virtual_file_stats(NULL, NULL)
March 7, 2008 at 1:19 pm
Then from the performance dashboard, you can drill down to what you want.
It makes the DM views much more accessible.
Viewing 5 posts - 1 through 4 (of 4 total)
You must be logged in to reply to this topic. Login to reply