All Forums Database
G_Smith 2 posts Joined 04/12
10 Jan 2013
Responsibility – Definition FREESPACE

 
 
Hi.
For a good operation of a Teradata environment, setting parameter FREESPACE in CREATE TABLE is very important.
Through experience you usually work this definition of value for the FREESPACE each table is a responsibility of the DBA? Or is an activity that should be the responsibility of the staff responsible for the development (eg physical modeling phase of a project)?
 
 
Thanks in Advance
 

dnoeth 4628 posts Joined 11/04
13 Jan 2013

I wouldn't say it's very important, most environments don't change it at all (they keep the default of 0 from the dbscontrol setting).
Only in rare cases for specific types of loading there might be a reason to change the freespace for large tables.
Dieter

Dieter

G_Smith 2 posts Joined 04/12
15 Jan 2013

 
Dieter, thank you for your attention.
In many environments that I worked really were not set up tables with parameter FREESPACE, but I always think of it as a failure.
Should represent a highly complex configuration of all tables, but a good definition and maintenance of FREESPACE may not represent a good saving of I / O (reduction in the level of cylinder migrate, cylinder split and occurrences of mini-cylpack)?
 
Thanks

dnoeth 4628 posts Joined 11/04
15 Jan 2013

Of course it might avoid cylinder migrates/splits, but only for large tables which are:
- non-partitioned and you insert/delete a small percentage of the data regularly
- initially loaded (then you should also set a smaller datablocksize initially and then change back to max to avoid block splits, too)
- PACKDISKed regularly, which indicates that you're running out of perm space
And in TD13.10 there's the background activity of AutoCylPack which should replace those manual PACKDISKs.
Dieter

Dieter

You must sign in to leave a comment.