ITPub博客

首页 > 应用开发 > IT综合 > 关于分区生动说明

关于分区生动说明

原创 IT综合 作者:axman 时间:2005-03-31 10:37:08 0 删除 编辑

about partition

[@more@]普通表呢像一个小学生用的新华字典,分区表呢像一套博士们辞海,在同一个漂亮的盒子里面(表名)有若干本辞海分册(每一册就是一个分区了)。
  
如果说检索一张普通表就像查新化字典,检索分区表就像查辞海了。具体而言呢,又这么几种方式:
  
1). 因为你知道你查的内容只会出现在某些分册里面,于是你很快的从辞海盒子里面取出你要的那个册子,不加思索的翻到索引页,根据索引页的指示,你飞快的翻到你的目标页面。取一本本册子呢就叫partition range [inlist] iterator,找索引页当然就是index range scan。如果你不找索引页,准备翻完整本书的找,那就是full table scan了。如果你只找一本册子的,那partition range iterator也就不必了。
  
2). 哦,你不知道你要查的内容在那本册子里? 那你只好辛苦一点,翻阅所有册子了。这时,你做的动作就叫partition range all.  而对于每本册子言,也许你会找索引页(index scan),也许你想翻遍全册(full table scan)。
  
3). 也许你发现一册册的打开索引页找内容太繁重了,你突然想起来对你的辞海做个整改。于是你把每册的索引页全都拆了下来,专门装订成一册。每次你想利用索引页找东西时,你就打开这个索引册。从索引册,你就可以找到你要内容在哪一册哪个地方。这就是global index scan. 相对于1,2,就叫local index scan.
  
4). 你有儿子吗?有一天,你想培训儿子的能力,于是你就找来你儿子给你翻册子,找资料。可是你儿子非得和老子一起找才肯帮你。于是你们父子俩就开始一起检索起辞海来,你查某些册子,他查另一些册子。这就叫partition scan.

  Quote:
2. 如果建立了分区后,在一个查询中又没用到分区时的条件时,他的操作和没用分区时的操作有何不同?  

有不同,成本会高一点。 前者是partition range all, 必须一本册子一本册子查过了, 后者就查一个册子了。但是前者并不定会比后者慢,因为前都可以用partition scan.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25498/viewspace-794478/,如需转载,请注明出处,否则将追究法律责任。

下一篇: sniffer
请登录后发表评论 登录
全部评论

注册时间:2011-09-17

  • 博文量
    28
  • 访问量
    630544