<海量数据库解决方案>2011022201

【摘抄】

【From数据的存储结构和特征】

1、关键访问路径(Critical Access Path)

文中没有细致说明此名词,根据语义分析出,应该和图论的关键路径类似。

概要说明:此表在关键访问路径上,意味着操作或查询路径中总以此表作为关键表来频繁访问!!即:此表的查询和更新操作频率很高

2、大型表可以分为:
A、单纯的存储型表-常见的日志类型的表,此类表不会被经常用到,也不会有多样化的读取要求。
B、像顾客表这样虽然存储着大量的数据,但主要是以随机读取为主,并不存在多样化的读取类型的表。
C、像销售表这样的表不进数据急速大量增加,而且具有多样化的数据读取类型。

文中描述影响读取效率的因素,其中分了表的大小。

个人认为:大型、中型、小型表的划分,在实际的应用中没有过多的细分!反而大型表的划分更有指导意义!

建议:设计表的时候结合需求按照大型表的划分来思考问题,其次再按照表的容量来思考

3、提高聚簇因子的手段

定期地对表执行重构操作

在文中没有说明如何去做,也许后面的介绍中有此。

记录一个:在mssql2000下,利用重建索引来提高索引利用率;语句参考如下:

1、

/*
重建指定数据库的一个或多个索引
dbreindex ('table_name' [, index_name [, fillfactor ]]) [WITH NO_INFOMSGS]
*/

2、

/*
对表或视图上的索引和非聚集索引进行碎片整理
DBCC INDEXDEFRAG
    ( { database_name | database_id | 0 }
        , { table_name | table_id | 'view_name' | view_id }
        , { index_name | index_id }
    )    [ WITH NO_INFOMSGS ]
*/

3、

DBCC show_statistics

Dbcc show_statistics ("pubs.dbo.authors" ,aunmind);

4、

DBCC showcontig

Use pubs;

DBCC ShowContig (authors) with all_indexes;

参见http://www.cnblogs.com/GoGoagg/archive/2010/08/18/1802192.html

原文地址:https://www.cnblogs.com/GoGoagg/p/1960951.html