Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

slow running query when update stats hasn't run

Posted on 2011-02-11
11
Medium Priority
?
289 Views
Last Modified: 2012-05-11
     Hi, I have a stor proc that takes normally 2 mins to run, it's loading data into a Type 2 dimension so its doing compares.  The data is about half a million rows a day.  It seems to take 2 mins to run after I have run update stats.  When I haven't ran update stats for the day, it takes 3 hours to run.  This stor proc is part of an etl process, so I don't want to put the update stats in the middle of the package, but I do need it to take its normal time to run (2 min) .  Any suggestions how I can get this to work effciently?
--------------------------------------------------------------------------------
0
Comment
Question by:elucero
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
  • 2
  • +2
11 Comments
 
LVL 13

Expert Comment

by:dwkor
ID: 34874981
Compare the plans in both cases and try to tune query with the hints and/or plan guide.
0
 
LVL 15

Expert Comment

by:MohammedU
ID: 34876204
Is Auto Update Stats is on/enabled? If not enable it and see if it improves.

You can run the updatestats as different step before etl runs...
0
 
LVL 25

Expert Comment

by:TempDBA
ID: 34878423
Elucero,
      Did you try for auto update option as Mohammed suggested? Try it out. This must help solve your problem.
0
Back Up Your Microsoft Windows Server®

Back up all your Microsoft Windows Server – on-premises, in remote locations, in private and hybrid clouds. Your entire Windows Server will be backed up in one easy step with patented, block-level disk imaging. We achieve RTOs (recovery time objectives) as low as 15 seconds.

 

Author Comment

by:elucero
ID: 34880194
Its already turned on.  I can see its really slow when I'm doing an insert into the tbl that has a lot of data, we load about half a million rows a day.  This tbl also has an index on it which is why I'm having this issue.  I'm going to drop the index on the tbl and load it.  Then I'm going to make a working tbl with the index on it and load the daily data into that so I can push it to the mart.  Which would be faster for the working tbl, loading the data with the index already there or dropping and recreating the index when loading?  
0
 

Author Comment

by:elucero
ID: 34880202
Isn't there a way I can run a partial updates stats?  Can I run it on just one tbl?
0
 
LVL 75

Accepted Solution

by:
Anthony Perkins earned 2000 total points
ID: 34880284
>>Can I run it on just one tbl?<<
Of course. You can do it this way:
UPDATE STATISTICS YourTableNameGoesHere
0
 
LVL 25

Expert Comment

by:TempDBA
ID: 34894310
And about index thing, if there are lots of inserts happening daily, you can setup a reorganize\rebuild index job to be run daily during off hours.
0
 

Author Comment

by:elucero
ID: 34897387
I got it to work, I took the index off the main tbl the data is inserted into daily (so of course it loads fast again).  I then made a working tbl with the index and loaded just the day data into it to load the dim.  Before I load the working tbl I truncate it and run an update stats against it.  I got the process down to 30 secs.  What is more efficient, running an update stats against the tbl or rebuilding the index?  And why do I need to do either or?  Why does this happen?
0
 
LVL 75

Expert Comment

by:Anthony Perkins
ID: 34903322
It sounds like the query is not getting the appropriate plan.  But without knowing any more details
I can only guess.
0
 

Author Comment

by:elucero
ID: 35002967
what do you mean by appropriate plan?
0
 
LVL 75

Expert Comment

by:Anthony Perkins
ID: 35038804
>>what do you mean by appropriate plan? <<
The SQL plan that the QO uses in order to optimize the query.
0

Featured Post

What Is Blockchain Technology?

Blockchain is a technology that underpins the success of Bitcoin and other digital currencies, but it has uses far beyond finance. Learn how blockchain works and why it is proving disruptive to other areas of IT.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Naughty Me. While I was changing the database name from DB1 to DB_PROD1 (yep it's not real database name ^v^), I changed the database name and notified my application fellows that I did it. They turn on the application, and everything is working. A …
Hi, I have heard from my friends that it’s not possible to create Label Printing report using SSRS. I am amazed after hearing this words not possible in SSRS. I googled lot and found that it is possible to some of people know about the Report Bui…
Do you want to know how to make a graph with Microsoft Access? First, create a query with the data for the chart. Then make a blank form and add a chart control. This video also shows how to change what data is displayed on the graph as well as form…
In this video, Percona Director of Solution Engineering Jon Tobin discusses the function and features of Percona Server for MongoDB. How Percona can help Percona can help you determine if Percona Server for MongoDB is the right solution for …

688 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question