Question Rpb & Cluster Size For An Index Area

Hi All,
We are planning to migrate our application from version 9.1E to 11.6. I am currently working on modifying the ST file from Type I to Type II storage area. We are good with the data area (applied the rough calculation provided by Tom & Adam).

On Index Area, I see 1 RPB, 64 RPB and 256 RPB for different Index Areas. From the guidelines provided by progress on the below article it says its better to give '8 blocks per cluster for index areas with 1 record per block' or 'Increase the index cluster size to 64 from 8, still 1 record per block' for fast growing tables.

What should be my RPB and cluster size in Type II for the index area that has currently 64 RPB and 256 RPB on Type I?

Only thing I noticed is these indexes have 5 to 8 components on each of them. Does this make a difference in RPB of Index Area?

Regards,
Saravanakumar B
 

TomBascom

Curmudgeon
Rows per block has no impact on indexes. Number of fields in an index has no impact on any of this.

For rows per block of an index area: One approach is to use "1" as a way of saying that the area is not intended for data. The downside of that is that if a table somehow accidentally ends up in that area then the area will probably grow quite rapidly because RPB = 1 generally leads to a lot of wasted space (unless your records are very large or the table is very small).

Another approach is to use 64 or 128 or 256 as a "one size fits all" value that will not waste space and result in rapid growth if a mistake is made.

I've done it both ways and made mistakes both ways. The second approach is more resilient and I am more likely to that these days.

Blocks per cluster depends on how large you expect the index to grow.

8 is the minimum -- anything less means that you have a type 1 area. All data, indexes and LOBs should always be in type 2 areas therefore blocks per cluster must always be at least 8 (and no user data should ever be in the schema area because the schema area is a type 1 area).

512 is for anything that might be more than a handful of clusters.

64 seems pointless to me. If an index can be bigger than 8 blocks then I don't see any advantage to parcelling it out 64 blocks at a time rather than 512.

So -- for very small indexes of small (or empty) tables 8 blocks per cluster. 512 for everything else. IMHO.
 
Top