Introduction to Clustered Indexes and Heaps
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Introduction to Clustered Indexes and Heaps

  • 561 views
Uploaded on

It's the age old question, do I put a clustered index on the table or leave it as a heap? While a simple question, this can have serious impacts on the performance of the table in queries. In this......

It's the age old question, do I put a clustered index on the table or leave it as a heap? While a simple question, this can have serious impacts on the performance of the table in queries. In this session, we'll review the basics of both clustered indexes and heaps; identifying key differences and cases where you might choose one over another.

More in: Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
561
On Slideshare
424
From Embeds
137
Number of Embeds
10

Actions

Shares
Downloads
13
Comments
0
Likes
0

Embeds 137

http://www.jasonstrate.com 60
http://feedly.com 37
http://feeds.feedburner.com 14
http://www.sqlservercentral.com 14
http://www.newsblur.com 3
http://feedreader.com 3
http://digg.com 2
http://www.inoreader.com 2
http://inoreader.com 1
http://feeds2.feedburner.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Introduction to Clustered Indexes and Heaps
  • 2. Jason Strate e: jstrate@pragmaticworks.com e: jasonstrate@gmail.com b: www.jasonstrate.com t: StrateSQL Resources jasonstrate.com/go/indexing Introduction MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 3. MAKING BUSINESS INTELLIGENT www.pragmaticworks.com • Industry leaders in Microsoft BI and SQL Server Platform • SQL Server Professionals - PASS Board of Directors, Speakers, Authors and MVP’s • National Sales Team Divided by Microsoft Territories • National System Integrator (NSI) • Gold Certified in Business Intelligence and Data Platform • Platform Modernization/Safe Passage • Premier Partner for PDW SI Partner Program MS PDW Partner of Year FY13 Frontline Partnership Partner of the Year for Big Data Executive sponsor - Andy Mouacdie, WW sales director PDW • Over 7,200 customers worldwide • Over 186,000 people in PW database for demand generation About Pragmatic Works
  • 4. Your Data Is Treasure
  • 5. Store that treasure
  • 6. Navigate to your data
  • 7. Heaps Clustered
  • 8. Agenda Introduction The Heap Clustered Index Index Patterns Summary MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 9. Session Goals • Define differences between heaps and clustered indexes • Explain design considerations • Demonstrate differences between key column choices MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 10. THE HEAP Introduction The Heap Clustered Index Index Patterns Summary MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 11. Heap Structure • Pile of data – Unordered – First in, first out – Scan “happy” • Table Scan Access • Forwarded Records MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 12. Heap MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 13. Heap MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 14. THE HEAP Demo MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 15. CLUSTERED INDEX Introduction The Heap Clustered Index Index Patterns Summary MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 16. Clustered Index • Mechanism for storing data – Logically ordered – Structured – Accessible – Direct path MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 17. Clustered Index MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 18. Clustered Index MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 19. Clustered Index MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 20. Clustered Index Qualities Static Narrow Unique Ever- increasing MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 21. Clustered Index Qualities Static Narrow Unique Ever- increasing MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 22. Static Non-static key columns can reshuffle the rows in the clustered index.
  • 23. Clustered Index Qualities Static Narrow Unique Ever- increasing MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 24. Narrow MAKING BUSINESS INTELLIGENT www.pragmaticworks.com Key columns from clustered indexes are included in all non-clustered indexes. Size Rows 4 8 16 32 64 10,000 0.04 0.08 0.15 0.31 0.61 100,000 0.38 0.76 1.53 3.05 6.10 1,000,000 3.81 7.63 15.26 30.52 61.04 10,000,000 38.15 76.29 152.59 305.18 610.35 100,000,000 381.47 762.94 1,525.88 3,051.76 6,103.52 1,000,000,000 3,814.70 7,629.39 15,258.79 30,517.58 61,035.16
  • 25. Clustered Index Qualities Static Narrow Unique Ever- increasing MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 26. Unique Uniqueifier: Adds a 4-byte integer to rows non- unique clustered indexes to create unique rows. Size Rows 4 8 16 32 64 10,000 0.08 0.11 0.19 0.34 0.65 100,000 0.76 1.14 1.91 3.43 6.48 1,000,000 7.63 11.44 19.07 34.33 64.85 10,000,000 76.29 114.44 190.73 343.32 648.50 100,000,000 762.94 1,144.41 1,907.35 3,433.23 6,484.99 1,000,000,000 7,629.39 11,444.09 19,073.49 34,332.28 64,849.85 MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 27. Clustered Index Qualities Static Narrow Unique Ever- increasing MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 28. Ever-increasing Ever-increasing values allows new values to be added to the end of the index structure without reorganizing rows. 100 200 300 MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 29. 100 200 300 600 Ever-increasing Ever-increasing values allows new values to be added to the end of the index structure without reorganizing rows. MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 30. 100 200 300 400 600 Ever-increasing Ever-increasing values allows new values to be added to the end of the index structure without reorganizing rows. MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 31. 100 200 300 400 500 600 Ever-increasing Ever-increasing values allows new values to be added to the end of the index structure without reorganizing rows. MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 32. CLUSTERED INDEX Demo MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 33. Pro Tip: Default to Clustered Indexes, unless heaps are proven to improve performance
  • 34. INDEX PATTERNS Introduction The Heap Clustered Index Index Patterns Summary MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 35. Heap Patterns MAKING BUSINESS INTELLIGENT www.pragmaticworks.com • Staging tables • Low use data • Temporary tables • Heavy scan data
  • 36. Clustered Index Patterns Identity Column Surrogate Key Foreign Key Multi- Column MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 37. Identity Column • Non-related value that defines each row uniquely • Assigned when data is inserted • Typically uses: – Int or bigint – IDENTITY or SEQUENCE – Uniqueidentifier MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 38. Identity Column Static Narrow Unique Ever-increasing MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 39. Surrogate Key • Unique value is a part of the row • Assigned in the source data • Data type dependent on the data • Value should be unchanging – Employee ID – Social Security Number – Birthdate MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 40. Surrogate Key Static Narrow Unique Ever-increasing MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 41. Foreign Key • One-to-many relationships • Access path in child via parent • Piggy-backs identity pattern – Parent left of child identity value • Common in many applications – Order header to details – Hotels to rooms MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 42. Foreign Key Static Narrow Unique Ever-increasing MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 43. Multi-Column • Similar to foreign key pattern • Many-to-many relationships • Highly dependent on selectivity • NOT a collection of dimension keys MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 44. Multi-Column Static Narrow Unique Ever-increasing MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 45. INDEX PATTERNS Demo MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 46. SUMMARY Introduction The Heap Clustered Index Index Patterns Summary MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 47. These are not unbreakable rules!
  • 48. Summary • Clustered indexes are important • Select clustering keys based on need • Validate clustered indexes over time MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 49. More Information Expert Performance Indexing For SQL Server 2012 Jason Strate Ted Krueger Overview Statistics Maintenance Tools Analysis http://amzn.com/1430237414 MAKING BUSINESS INTELLIGENT www.pragmaticworks.com
  • 50. Services Speed development through training, and rapid development services from Pragmatic Works. Products BI products to covert to a Microsoft BI platform and simplify development on the platform. Foundation Helping those who do not have the means to get into information technology achieve their dreams. For more information… Name: Jason Strate Email: jstrate@pragmaticworks.com Blog: www.jasonstrate.com Resource: jasonstrate.com/go/indexing Need Help? jasonstrate.com/go/vmdba