SQL Server 不是将表作为一个单位缓存在内存中,而是以存储表的数据页面为单位缓存在内存中。这些页面都具有唯一的标示(数据库 ID.文件 ID.页面 ID),SQL Server 通过这些标示来检索页面,从而检索表。具体的说,SQL SERVER 使用散列算法组织内存缓冲区中的页面——散列算法会构造一个映射到内存页的散列数组(相当于内存页的索引),当通过唯一标示访问数据页面时,散列算法会将唯一标示转换为散列数组的下标,通过这个下标可以在散列数组中定位一个数组值,这个值便是指向需要访问的内存页的指针。这样只需要几次内存读取便可以获得需要访问的内存页。
UP CAT果然是只强大的猫,PF
SQLServer以8K的页为基本存储单位。大的表可能有很多个页。如果表上有聚集索引,则页以B树(平衡树)的方式组织;如果表上没有聚集索引,则页以heap(堆)的方式组织。详见《SQL Server 2005技术内幕:存储引擎》。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货