Poor Performance temporarily fixed by rebuilding indexes.

  • I'm having to run my maintenance plan to rebuild indexes once or twice a day to keep performance inline.

    Anyone know what things could possibly be causing this?

  • Heap tables or poorly designed clustered indexes is the first thing that comes to my mind.

    If, for example, the clustered index is on an alpha column, and inserts regularly have to re-order the table because of inserting into the middle of the clustered index, rebuilding your indexes frequently would be necessary.

    - Gus "GSquared", RSVP, OODA, MAP, NMVP, FAQ, SAT, SQL, DNA, RNA, UOI, IOU, AM, PM, AD, BC, BCE, USA, UN, CF, ROFL, LOL, ETC
    Property of The Thread

    "Nobody knows the age of the human race, but everyone agrees it's old enough to know better." - Anon

  • Do you have primary keys (clustered index) on guids? (uniqueidentifier default to NewID())

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass
  • Also check the fillfactor on your indexes - could be causing lots of page splits if this is too high. Note: a value of 0 is almost equivalent to 100.

    Jeffrey Williams
    Problems are opportunities brilliantly disguised as insurmountable obstacles.

    How to post questions to get better answers faster
    Managing Transaction Logs

  • Hi there,

    sorry to (slightly)swerve from the question, but isn't a fill factor of 0 exactly the same as 100 and not almost the same as? I thought I read somewhere a couple of months ago that 0 and 100 are treated the same by SQL Server.

    regards

    GermanDBA

    Regards,

    WilliamD

  • GermanDBA (7/3/2008)


    Hi there,

    sorry to (slightly)swerve from the question, but isn't a fill factor of 0 exactly the same as 100 and not almost the same as? I thought I read somewhere a couple of months ago that 0 and 100 are treated the same by SQL Server.

    regards

    GermanDBA

    Per this link in BOL: ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.en/udb9/html/237a577e-b42b-4adb-90cf-aa7fb174f3ab.htm

    Note:

    Fill factor values 0 and 100 are the same in all respects.

    To the OP: are you doing a lot of data modifications? This could change statistics and perhaps a simple update stats would be just as effective. Also, are you sure you aren't suffering from 'parameter sniffing', whereby cached query plans that have a given input value lead to horrible query plans for a different input?

    Best,
    Kevin G. Boles
    SQL Server Consultant
    SQL MVP 2007-2012
    TheSQLGuru on googles mail service

  • Yes you are right - 0 and 100 are exactly the same. I thought I had read where 0 would actually leave a small amount of space, but I guess I was mistaken.

    Jeffrey Williams
    Problems are opportunities brilliantly disguised as insurmountable obstacles.

    How to post questions to get better answers faster
    Managing Transaction Logs

  • Another possibility for you to check

    Microsoft® SQL Server™ 2005 collects statistical information about indexes and column data stored in the database. These statistics are used by the SQL Server query optimizer to choose the most efficient plan for retrieving or updating data.

    You might want to review

    http://www.microsoft.com/technet/prodtechnol/sql/2005/qrystats.mspx#EHKAE

    This may give you a clue to improving performance

    If everything seems to be going well, you have obviously overlooked something.

    Ron

    Please help us, help you -before posting a question please read[/url]
    Before posting a performance problem please read[/url]

Viewing 8 posts - 1 through 7 (of 7 total)

You must be logged in to reply to this topic. Login to reply