First we try, then we trust

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

关于小议数据库主键选取策略(原创)的测试结果一直没有放上来,现在不知道算不算晚。在这个测试中做了一个主从表,主表中的每个记录都与从表的10条记录相对应,这样,在执行插入测试时,计算主键键值的时间影响被限制到了1/10以内。同时又分别做了排序与不排序的连接查询(每次都重新建立一遍数据库,并插入数据)。所有的SQL脚本可以从这里下载。现在把结果贴上来:

测试表及关联关系(见CreatTestTable.sql)



向每个主表插入1000条记录,每个从表插入10000条记录,时间记录如下(InputData.sql):

int类型为主键的表插入开始时间:07 19 2004  9:21PM
int类型为主键的表插入结束时间:07 19 2004  9:22PM
int类型为主键的表插入共用时间:21293毫秒 
 
GUID(聚簇索引)类型为主键的表插入开始时间:07 19 2004  9:22PM
GUID类型(聚簇索引)为主键的表插入结束时间:07 19 2004  9:22PM
GUID类型(聚簇索引)为主键的表插入共用时间:26076毫秒 
 
GUID(非聚簇索引)类型为主键的表插入开始时间:07 19 2004  9:22PM
GUID类型(非聚簇索引)为主键的表插入结束时间:07 19 2004  9:22PM
GUID类型(非聚簇索引)为主键的表插入共用时间:26096毫秒 
 
COMB类型为主键的表插入开始时间:07 19 2004  9:22PM
COMB类型为主键的表插入结束时间:07 19 2004  9:23PM
COMB类型为主键的表插入共用时间:23553毫秒

分别执行不排序的连接检索(SelectWithoutOrder.sql):

int类型不排序连接检索开始时间:07 19 2004  9:50PM
int类型不排序连接检索结束时间:07 19 2004  9:50PM
int类型不排序连接检索共用时间:100毫秒
---------------------------------------
GUID(聚簇索引)类型不排序连接检索开始时间:07 19 2004  9:50PM
GUID(聚簇索引)类型不排序连接检索结束时间:07 19 2004  9:50PM
GUID(聚簇索引)类型不排序连接检索共用时间:140毫秒
---------------------------------------
GUID(非聚簇索引)类型不排序连接检索开始时间:07 19 2004  9:50PM
GUID(非聚簇索引)类型不排序连接检索结束时间:07 19 2004  9:50PM
GUID(非聚簇索引)类型不排序连接检索共用时间:153毫秒
---------------------------------------
COMB类型不排序连接检索开始时间:07 19 2004  9:50PM
COMB类型不排序连接检索结束时间:07 19 2004  9:50PM
COMB类型不排序连接检索共用时间:150毫秒

执行排序的连接检索(SelectWithOrder.sql):

int类型排序连接检索开始时间:07 19 2004  9:49PM
int类型排序连接检索结束时间:07 19 2004  9:49PM
int类型排序连接检索共用时间:110毫秒
---------------------------------------
GUID(聚簇索引)类型排序连接检索开始时间:07 19 2004  9:49PM
GUID(聚簇索引)类型排序连接检索结束时间:07 19 2004  9:49PM
GUID(聚簇索引)类型排序连接检索共用时间:160毫秒
---------------------------------------
GUID(非聚簇索引)类型排序连接检索开始时间:07 19 2004  9:49PM
GUID(非聚簇索引)类型排序连接检索结束时间:07 19 2004  9:49PM
GUID(非聚簇索引)类型排序连接检索共用时间:160毫秒
---------------------------------------
COMB类型排序连接检索开始时间:07 19 2004  9:49PM
COMB类型排序连接检索结束时间:07 19 2004  9:49PM
COMB类型排序连接检索共用时间:140毫秒

看来,COMB比GUID快,但仍然比不上INT类型。其实INT占用空间小,IO效率也会高一些。现在我得修正《小议数据库主键选取策略》中的数据了。原文中的数据显得有些太夸张了。

posted on 2004-07-21 18:56  吕震宇  阅读(3932)  评论(8编辑  收藏  举报