ITPub博客

首页 > Linux操作系统 > Linux操作系统 > BUFFER CACHE之七:将常用表固定到cache中

BUFFER CACHE之七:将常用表固定到cache中

原创 Linux操作系统 作者:LRU2010 时间:2010-10-04 00:15:35 0 删除 编辑

【将常用表cache到keep池中】
全表扫描(FTS,full table scans)的表会被放在LRU列表的LRU端,下次就用不上了,所以造成了资源的没有合理利用,特别是一些经常用的小表,完全可以固定在cache中。
Note:着不同于Library Cache里面的pin一些对象,如果小表长时间不被访问还是会被age out!
方法:使用关键字cache即可。
SQL> CREATE TABLE phone_list
  2  (employee_id number,
  3  phone_number varchar2(11),
  4  extension    varchar2(4))
  5  TABLESPACE users
  6  STORAGE (INITIAL 50k NEXT 50K PCTINCREASE 0)
  7  CACHE;

Table created.
SQL> alter table hr.students cache/nocache;

Table altered.

SQL> SELECT /*+CACHE*/ ID,NAME,IDCARD     #使用hint提高查找效率    
  2  FROM hr.students;

        ID NAME      IDCARD
---------- ----- ----------
         1 gwan
         2 wade
         3 jane

不使用ASSM, 手动的用free list来管理。
一个segment里面可能只有一个free list,
Assm, free LIST 是老技术了,不用考虑了
异步io更有效,linux上要安装相关包
不支持异步io,就配置多个奴隶进程,模拟一个异步,
现在OS支持越来越好了,不要考虑模拟的了

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

请登录后发表评论 登录
全部评论

注册时间:2010-08-19

  • 博文量
    24
  • 访问量
    30989