performance-tuning

SQL Profiler and Tuning Advisor for Reporting Services - what events should be selected?

I've used the SQL Profiler to generate a trace file, and tuning advisor to take that trace file and provide some recommendations on db updates. However, the SQL Profiler doesn't seem to track the queries when running against a Reporting Server, the profiler doesn't seem to be capturing any of the queries. I'm logging the defaults (SQL:...

Improving the Performance of MSChart Toolip in ASP.NET

We are using MSChart on an ASP.net 3.5 web application and noticing significant slowness from enabling tooltips. the performance of drawing a chart is increased by 1,000-2,000ms. The chart output is PNG, and contains in total 108 data points. ...

How to throttle clients in a REST API

I want to limit clients to an upper limit of number of calls to my REST APIs. What should I return to inform clients that they've been throttled ? Amazon S3 is returning HTTP 503 with an error code SlowDown to inform clients. What do you advise ? ...

Data in two databases, eager spool resulting in query

I have two databases in SQL2k5: one that holds a large amount of static data (SQL Database 1) (never updated but frequently inserted into) and one that holds relational data (SQL Database 2) related to the static data. They're separated mainly because of corporate guidelines and business requirements: assume for the following problem th...

Optimizing landing pages

In my current project (Rails 2.3) we have a collection of 1.2 million keywords, and each of them is associated with a landing page, which is effectively a search results page for a given keywords. Each of those pages is pretty complicated, so it can take a long time to generate (up to 2 seconds with a moderate load, even longer during tr...

SQL query: how to translate IN() into a JOIN?

I have a lot of SQL queries like this: SELECT o.Id, o.attrib1, o.attrib2 FROM table1 o WHERE o.Id IN ( SELECT DISTINCT Id FROM table1 , table2 , table3 WHERE ... ) These queries have to run on different database engines (M...

Is it more efficient to always run a delete query, or to check if that information exists first

Is it more efficient to always run a DELETE query by default whether an entry exists or not, for example to delete a user name after a certain period of time (DELETE * from table WHERE username='user'), or should you first check if the rows to be deleted exist using a SELECT query and checking mysql_num_rows. What uses more processor r...

Small performance test on a web service

Hi, I'm trying to develop a small application that test how many requests per second can my service support but I think I'm doing something wrong. The service is in an early development stage, but I'd like to have this test handy in order to check in time to time I'm not doing something that decrease the performance. The problem is that...

What does the C++ output of the HipHop PHP compiler look like?

Is it clean enough that you can discard the PHP and hand-optimize the C++ code? ...

Tuning MySQL to take advantage of a 4GB VPS

Hello, We're running a large site at the moment which has a dedicated VPS for it's database server which is running MySQL and nothing else. At the moment all four CPU cores are running at close to 100% all of the time but the memory usage sticks at around 268MB out of an available 4096MB. I'm wondering what we can do to better utilise t...

perfomance checking of system by using FreshDiagnose tool

I installed a FreshDiagnose software in my machine.I can see all information about my machine.But i need to check system perfomance and to show in a graph view.Means i need to show how an application running in my machine means how fast it is like that ...

How optimize queries with fully qualified names in t-sql?

When I call: select * from Database.dbo.Table where NAME = 'cat' It takes: 200 ms And when I change database to Database in Management Studio and call it without fully qualified name it's much faster: select * from Table where NAME = 'cat' It takes: 17 ms Is there any way to make fully qualified queries faster without changing ...

Scalable way of doing self join with many to many table

I have a table structure like the following: user id name profile_stat id name profile_stat_value id name user_profile user_id profile_stat_id profile_stat_value_id My question is: How do I evaluate a query where I want to find all users with profile_stat_id and profile_stat_value_id for many stats? I've tried ...

Query performance difference pl/sql forall insert and plain SQL insert

We have been using temporary table to store intermediate results in pl/sql Stored procedure. Could anyone tell if there is a performance difference between doing bulk collect insert through pl/sql and a plain SQL insert. Insert into [Table name] [Select query Returning huge amount of data] or Cursor for [Select query returning huge am...

Oracle intermediate join table size

When we join more than 2 tables, oracle or for that matter any database decides to join 2 tables and use the result to join with subsequent tables. Is there a way to identify the intermediate join size. I am particularly interested in oracle. One solution I know is to use Autotrace in sqldeveloper which has the column LAST_OUTPUT_ROWS. B...

Performance tune my sql query removing OR statements

I need to performance tune following SQL query by removing "OR" statements Please help ... SELECT a.id, a.fileType, a.uploadTime, a.filename, a.userId, a.CID, ui.username, company.name companyName, a.screenName FROM TM_transactionLog a, TM_userInfo ui, TM_company company, TM_airlineCompany ac WHERE ( a.CID = 3049 )...

Oracle: Difference in execution plans between databases

Hello, I am comparing queries my development and production database. They are both Oracle 9i, but almost every single query has a completely different execution plan depending on the database. All tables/indexes are the same, but the dev database has about 1/10th the rows for each table. On production, the query execution plan it pi...

Approximate timings for various operations on a "typical desktop PC" anno 2010

In the article "Teach Yourself Programming in Ten Years" Peter Norvig (Director of Research, Google) gives the following approximate timings for various operations on a typical 1GHz PC back in 2001: execute single instruction = 1 nanosec = (1/1,000,000,000) sec fetch word from L1 cache memory = 2 nanosec fetch word from main memory = 1...

Having all Views in the Shared folder - works but is throwing "caught exceptions". Performance concern??

Hi everyone, I have a simple but heavily used app done in VS2010/MVC2. I didn't like having separate folders for each view/controller and so have all the views in the Shared folder. It's working fine but while debugging in VS, I noticed that it's throwing IO "caught exceptions" since it seems to be looking in the [FolderName]/[ViewNam...

Resultset comparison utilities

Is there any good tool which can compare the resultset for 2 queries and highlight the difference. This could be particularly useful when the queries are re-written for performance tuning and we want to be sure that the query produces same result. I was using Quest SQL optimizer to compare original and re-written queries but the tool sto...