Timesten cache group aging 功能的实现

Timesten 数据过期策略有两种,一种是 基于LRU策略,一种是基于日期时间。以下记录两个例子,time_based 经过本人测试,LRU 还木有测试过,摘录官网原文,方便查阅。

LRU aging

CREATE ASYNCHRONOUS WRITETHROUGH CACHE GROUP new_customers
FROM oratt.customer
 (cust_num NUMBER(6) NOT NULL,
  region   VARCHAR2(10),
  name     VARCHAR2(50),
  address  VARCHAR2(100),
  PRIMARY KEY(cust_num))
AGING LRU ON;

调用内置函数 ttAgingLRUConfig 开启 LRU 属性。
The following built-in procedure call specifies that the aging process checks every 5 minutes to see if the TimesTen database's permanent partition space
 usage is above 95 percent. If it is, the least recently used data is automatically aged out or deleted until the space usage is at or below 75 percent.

CALL ttAgingLRUConfig(.75, .95, 5);

Time-based aging

---建基表
CREATE TABLE orders
(ord_num      NUMBER(10) NOT NULL PRIMARY KEY,
 cust_num     NUMBER(6) NOT NULL,
 when_placed  DATE NOT NULL,
 when_shipped DATE NOT NULL
);


---插入测试数据
insert into orders values(1,10,to_date('2014-06-13 20:10:00','yyyy-mm-dd hh24:mi:ss'),sysdate);
insert into orders values(2,20,to_date('2014-06-13 20:20:00','yyyy-mm-dd hh24:mi:ss'),sysdate);
insert into orders values(3,30,to_date('2014-06-13 21:10:00','yyyy-mm-dd hh24:mi:ss'),sysdate);
commit ;

-----创建一个AWT 类型或 read cache group 类型的cache group 数据自动aging 

CREATE ASYNCHRONOUS WRITETHROUGH CACHE GROUP cache_ordered_1
FROM ytord.orders
 (ord_num      NUMBER(10) NOT NULL,
  cust_num     NUMBER(6) NOT NULL,
  when_placed  DATE NOT NULL,
  when_shipped DATE NOT NULL,
  PRIMARY KEY(ord_num))
AGING USE when_placed LIFETIME 5 MINUTES CYCLE 1 MINUTES ON ;

---创建一个 read cache group
CREATE READONLY CACHE GROUP cache_ordered_3
AUTOREFRESH MODE INCREMENTAL INTERVAL 1 MINUTES
FROM ytord.orders3
 (ord_num      NUMBER(10) NOT NULL,
  cust_num     NUMBER(6) NOT NULL,
  when_placed  DATE NOT NULL,
  when_shipped DATE NOT NULL,
  PRIMARY KEY(ord_num))
AGING USE when_placed LIFETIME 5 MINUTES CYCLE 1 MINUTES ON;



关于aging 还有一些用法上的细节,后面进行补充。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值