Results 1 to 3 of 3
  1. #1
    Join Date
    Sep 2012
    Posts
    9

    Unanswered: Why can't tables with clustered index have forwarded records

    Is there any reason why only heaps can have forwarded records while tables with clustered index have to resort to page split when a page becomes saturated with data due to an update or insertion? Both have drawbacks, forwarded records add another level of indirection, leading to increased I/O overhead, while page split may cause further split in the parent pages which can cascade even further. May be that the cascading is a one-time only cost to be incurred, while the indirection overhead repeats everytime there is a query. Then why not go for page split in heap also? The additional overhead to be had for adding another pointer to the IAM page is also one-time.

  2. #2
    Join Date
    Dec 2002
    Location
    Préverenges, Switzerland
    Posts
    3,740
    the "clustered index" IS the data itself, all of it - there is no data anywhere outside the clustered index to forward to. a clustered index is not pointing to a table, it IS the table.

    why not page-split a heap? precisely because its a heap! the data in the pages have no order, new records just pile up on top of the heap. how could a page split help to keep heap records in order when heap records inherently have no order?

    izy
    currently using SS 2008R2

  3. #3
    Join Date
    Sep 2012
    Posts
    9
    Right. Thanks.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •