Take the 2-minute tour ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

I have the task to improve the performance of a SQL Server 2012 database (one of 4 in an instance) by 60% confirmed by corresponding statistics.

So, I need to measure "performance" of the RDBMS database before performance tuning and optimization and after.

Which metrics are better suited for this?

Trying to answer the obvious questions ahead ...

I/O (hardware) bottlenecks are absent since the SQL Server runs on a virtual rack having plenty of physical resources under it.

The database is used by approx. 60 users (mostly 8 hours a day) with widely varying load (per sec).

This is a company management task, so the results of this task should be easy to grasp.

UPDATE:
the corresponding my question was answered in StackOverflow.com by @Martin von Wittich and, then, deleted by moderator/community:

Run different kinds of queries (INSERT, UPDATE, DELETE) in a loop (e.g. 1000 times), then divide the runtime by the amount of loop iterations. Now you now how long a single query of that type takes.

Then do whatever you want to do to improve the performance, and compare the results.

Quite good for me. Also I do not see why it was deleted in SO with the reason: "This question does not appear to be about programming" and closed in this site with: "There are either too many possible answers, or good answers would be too long for this format."

share|improve this question
    
How do you know there are no hardware bottlenecks if you haven't measured the performance yet? –  Jon Seigel Sep 15 '13 at 12:55
    
How have you decided that I had not measured the performance yet? I've measured a lot of metrics, the question is about one simple and illustrative one for non-specialists –  Fulproof Sep 15 '13 at 14:35
    
What aspects of database performance matter to the business? Is there a business-critical application currently suffering from poor response times from the database? If so, monitoring the response times the application gets from the database using whatever instrumentation is available for the app's programming language or framework might be useful. As is, I don't think there is enough information in the question for anyone here to assess what should be monitored. –  James Sep 15 '13 at 15:47
    
@Fulproof you say you have measured "a lot of metrics", so what is it that you want to measure, as outlined in your question. –  StanleyJohns Sep 15 '13 at 21:21
    
What indications dictate the need for a "task to improve the performance of a SQL Server 2012 database". If you provide this information the question would provide a more narrow answer. There are baseline metrics that you can capture for overall health, but if you have specific performance issue then it narrows down the amount of information needed for your metrics. –  Shawn Melton Sep 16 '13 at 1:39
show 1 more comment

closed as too broad by Kin, Mat, Mark Storey-Smith, Jon Seigel, ypercube Sep 15 '13 at 20:35

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.

1 Answer

up vote 2 down vote accepted

I/O (hardware) bottlenecks are absent since the SQL Server runs on a virtual rack having plenty of physical resources under it.

Let's get this straight:

  • Most virtualization is pathetic - not even low, pathetic - on the IO side.
  • "having plenty" means nothing unless you qantify there is no IO problem.

At the end, come up with the metcis you need to measure, and find the bottlenexks. But starting with "virtual rack has no IO issues" will give you smiles from most people using virtualization.

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.