keep是存取你要保留时间长的 比如经常访问的索引和小表
recycle是FTS多的大表就是你不希望保留时间长的

解决方案 »

  1.   

    多谢liuyi8903。
    keep区是用LRU规则,recycle区所用规则是不是与keep区相反的规则?
    两者实现机制的差别是什么?两者的共性有哪些?
    我了解的有:他们都可以把表或其他对象放到单独的内存中,当这些单独内存满了的时候会清除 部分对象。希望再给些指导。
      

  2.   

    keep也是使用LRU,但由于缺省情况下,数据块是被缓存到普通的cache中,因此被指定换存到keep区的数据块就不太可能因为执行其他一些操作被其他数据块交换出,即使较长时间没使用了。
    而设置recycle是因为有时会有一些大的又教少使用的表的操作,如果不设置单独的缓存区,那么缺省的缓存区中的数据块就被这些偶尔使用的数据换出。设置recycle后(通常recycle都是比较小的),将大的又较少使用的数据放到recycle中,可以减少缺省缓存区中频繁使用的数据块的换出换入的操作。
    可以这样理解,keep区中的数据是最最频繁使用的,或者属于那些需要最快相应时间操作的数据。recycle是偶尔使用的数据的缓存区。其他数据都被缓存在缺省区。
      

  3.   

    最后问一下:recycle也是LRU吗?