Member Login
  • Products
    • Qure Suite
    • Qure Analyzer
    • Qure Optimizer
  • Downloads
    • Qure Analyzer (Free)
    • Qure Optimizer (Free Trial)
  • Support
    • Contact Support
    • Frequently Asked Questions
    • Limitations and Known Issues
  • Resources
    • Qure Optimizer Resources
    • Qure Analyzer Resources
    • Whitepapers
    • Videos and Tutorials
    • eBooks
    • Attend an Online Demo
    • inTune eMagazine
    • SQL Server Tuning Blog
  • Learn More
    • About Workload Tuning
    • SQL Server Tuning
    • SQL Server Performance
    • SQL Server Performance Tuning
    • Tips
    • SQL Server Articles
  • Company
    • About DBSophic
    • Management
    • Partners
    • News
    • Success Stories
    • Customer Testimonials
    • Selected Customers
  • Contact Us
Subscribe to blog

SQL Server Tuning Blog

By SQL Server MVP Ami Levin

Subscribe to feed Viewing entries tagged Performance

Variable Size Data Types and Memory Grants

Posted by Ami Levin
Ami Levin
Ami has not set their biography yet
User is currently offline
on Tuesday, 08 May 2012
in SQL Server Tuning

Yesterday, at our 118th Israeli SQL Server User Group Meeting, Adi Cohn delivered a session on common performance pitfalls. One of the issues he mentioned is something every DBA and database designer should be aware of. Many applications use overly large size limit for their variable data types. The reasoning in many cases is simply "Why not?" If you have a variable size column and you made the choice to use one of the VAR data types anyway, why limit the size? Even if you expect to have up to 300 characters in the 'comments' column for example, what is wrong with defining it as 3,000? it's just metadata, right? Wrong...

Although physically, storage will be exactly the same if you define your VARCHAR as 300 or 3,000, it can still make a huge impact on performance. SQL Server needs to estimate the work space that is required for each query and allocate it before the query begins to execute. For variable type columns, the estimation is that the data size will be 1/2 of the max size defined for the column. So if you have a column that is defined as 300 bytes, the allocation estimation will be 150 but for 3,000 - the estimate will be 1,500. On systems that experience memory pressure, this can make a huge difference in performance as your queries will wait for memory allocations, potentially significantly hurting performance in addition to the fact that needless memory will be allocated that could serve SQL Server for much more useful purposes.

...
Tags: common pitfalls, common pitfalls, data types, Performance
Hits: 940 0 Comments Continue reading

Index rebuilds and statistics updates

Posted by Ami Levin
Ami Levin
My name is Ami Levin, and I've been working with SQL Server for over 15 years. I
User is currently offline
on Wednesday, 25 April 2012
in SQL Server Tuning

An interesting discussion came up lately on the MVP private forums regarding index rebuilds, recompilation and statistics updates. Although the debate spanned too many aspects for me to cover here in this short post, I think that one important point should be emphasized as it might be making you do redundant work or even worse - unknowingly degrade the performance of your workload.

When you rebuild an index, a full scan of all index keys is performed. SQL Server uses this opportunity not only to rebuild the index, but also to update the related statistics. What is unique about this statistics update is the fact that it is equivalent to an update with the full-scan option. The default statistics sampling uses only a small fraction of the keys in order not to load your production server. A statistics based on a full scan of the data has the potential to be more accurate, therefore provide the query optimizer with better information, allowing it in turn to produce better performing execution plans for your workload queries. Also remember that a statistics update flushes all plans that use it from the procedure cache forcing a recompilation of the related queries.

...
Tags: Maintenance, Performance, Statistics
Hits: 1580 0 Comments Continue reading

Latest Posts

  • EZManage SQL vendor and developer announced the acquisition of the fast growing company DBSophic.
    The acquisition will expand the acquiring company's solutions for the applicative environment of MS
    Read More
  • A Month of Joins - T-SQL Tuesday #37
    T-SQL Tuesday is now entering its fourth year! Sebastian Meine, who's hosting this month's T-SQL Tue
    Read More
  • Where did I leave my keys?
    "If you walk into a room full of DBAs or DB developers and you feel like having the same kind o
    Read More

Tag Cloud

RTM Performance MVP data types iPad Qure Analyzer Performance SQL Graphics Announcements TSQL2sDay hardware EZManage sql SSDT Maintenance Statistics installation DBsophic Publications Statistics Articles common pitfalls HA/DR Presentations SQL Server 2012

Blog Calendar

Loading ...
© 2011 DBSophic Ltd. All rights reserved. | Legal