索引的填充因子

创建索引时,可以指定一个填充因子,以便在索引的每个叶级页上留出额外的间隙和保留一定百分比的空间,供将来表的数据存储容量进行扩充和减少页拆分的可能性。填充因子的值是从   0   到   100   的百分比数值,指定在创建索引后对数据页的填充比例。值为   100   时表示页将填满,所留出的存储空间量最小。只有当不会对数据进行更改时(例如,在只读表中)才会使用此设置。值越小则数据页上的空闲空间越大,这样可以减少在索引增长过程中对数据页进行拆分的需要,但需要更多的存储空间。当表中数据会发生更改时,这种设置更为适当。

填充因子越大,意味着一个索引页包含的索引记录越多,空闲空间越小.一般来说查询的效率越高,因为这样查询的时候,可以减少读取索引页的工作量和减少内存使用   
  但这样导致的结果是数据变动导致的索引维护的工作量增加,因为索引页的空闲空间小,如果不能在本页内完成索引调整,就会引起调整其他索引页   
  所以一般的选择是,数据基本不变化的(例如OLAP的场景,数据只用来分析的),将填充因子设置到足够大,数据经常变化的(例如OLTP的场景),将填充因子设置为足够小


转自:http://www.cnblogs.com/chenxizhang/archive/2008/08/17/1269682.html

你可能感兴趣的:(mysql,填充因子)