博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
12c ILM数据生命周期管理
阅读量:2433 次
发布时间:2019-05-10

本文共 4817 字,大约阅读时间需要 16 分钟。

首先,需要打开heat map,用来跟踪数据的访问情况
SQL> alter system set heat_map = on;
System altered.
测试数据
drop table p purge;
create table p (id int, name varchar2(150)) partition by range (id) (partition p1 values less than (100), partition p2 values less than (200)) tablespace t1;
insert into p values(20, 'ulooiuk');
insert into p values(80, 'vf sfdsafgaf');
insert into p values(90, 'AXSAXSD');
insert into p values(120, 'ulooiuk');
insert into p values(180, 'vf sfdsafgaf');
insert into p values(190, 'AXSAXSD');
create index i_p_id on p(id) local;
create index i_p_name on p(name) global;
commit;
SQL> select partition_name, (select name from v$datafile where file# = file_id) name, extent_id, block_id, blocks from dba_extents e where segment_name = 'P';
PARTITION_NAME       NAME                                                EXTENT_ID   BLOCK_ID     BLOCKS
-------------------- -------------------------------------------------- ---------- ---------- ----------
P1                   /u01/oradata/orcl/t1.dbf                                    0       1280       1024
P2                   /u01/oradata/orcl/t1.dbf                                    0        128       1024
设置策略
简单测试一个数据的压缩和旧迁移至其它表空间。
SQL> ALTER TABLE p
  2    ILM ADD POLICY COMPRESS SEGMENT
  3    AFTER 1 DAYS OF NO MODIFICATION;
Table altered.
SQL> ALTER TABLE p
  2    ILM ADD POLICY
  3    TIER TO ts2;
Table altered.
但是12c的heat map新特性对CDB无效。
官方文档有说明(Limitations and Restrictions With ADO and Heat Map: ADO and Heat Map are not supported with a multitenant container database (CDB).)
不过提示信息很不友好,只是说heat map没有启用。
SQL> alter table p ilm add policy compress for archive high segment after 1 days of no modification;
alter table p ilm add policy compress for archive high segment after 1 days of no modification
*
ERROR at line 1:
ORA-38342: heat map not enabled
查看已定义的策略
SQL> select SUBSTR(policy_name,1,24), POLICY_TYPE, TABLESPACE, enabled from user_ilmpolicies;
SUBSTR(POLICY_NAME,1,24) POLICY_TYPE   TABLESPACE                     ENABLED
------------------------ ------------- ------------------------------ -------
P1                       DATA MOVEMENT                                YES
P2                       DATA MOVEMENT                                YES
SQL> select * from USER_ILMDATAMOVEMENTPOLICIES;
POLICY_NAM ACTION_TYPE SCOPE   COMPRESSION_LEVEL              TIER_TABLE TIER_STAT CONDITION_TYPE         CONDITION_DAYS CUSTOM_FUNCTION
---------- ----------- ------- ------------------------------ ---------- --------- ---------------------- -------------- ------------------------------
P1         COMPRESSION SEGMENT ARCHIVE HIGH                                        LAST MODIFICATION TIME              1
P2         STORAGE     SEGMENT                                TS2                                                       0
执行后,数据段就被压缩了
SQL> select table_name, partition_name, compression from user_tab_partitions;
TABLE_NAME PARTITION_NAME            COMPRESS
---------- ------------------------------ --------
P        P2                      ENABLED
P        P1                      ENABLED
数据段都换了一个地方进行压缩
SQL> select partition_name, (select name from v$datafile where file# = file_id) name, extent_id, block_id, blocks from dba_extents e where segment_name = 'P';
PARTITION_NAME                 NAME                                 EXTENT_ID   BLOCK_ID     BLOCKS
------------------------------ -------------------------------------------------- ---------- ---------- ----------
P1                      /u01/oradata/orcl/t1.dbf                        0        5120       1024
P2                      /u01/oradata/orcl/t1.dbf                        0        6144       1024
索引都有效
SQL> select index_name, status from user_indexes where table_name = 'P';
INDEX_NAME                               STATUS
-------------------------------------- --------
I_P_NAME                               VALID
I_P_ID                                 N/A
SQL> select partition_name, status from user_ind_partitions where index_name = 'I_P_ID';
PARTITION_NAME           STATUS
------------------------ --------
P1             USABLE
P2             USABLE
ILM参数
SQL> select * from dba_ilmparameters;
NAME                                               VALUE
-------------------------------------------------- ----------------------------------------
ENABLED                                            1   是否允许
RETENTION TIME                                     30  ILM job历史保留时间(天)
JOB LIMIT                                          2   同时能有多少ILM job运行。计算方法是“JOB LIMIT参数值*实例数*每个实例的CPU数”
EXECUTION MODE                                     2   online还是offline
EXECUTION INTERVAL                                 15  执行间隔,单位分钟。
TBS PERCENT USED                                   85  当表空间使用率达到这个值,ILM认为它要满了,会尽可能把数据移走。使它的空闲空间达到“TBS PERCENT FREE”
TBS PERCENT FREE                                   25  
POLICY TIME                                        0   
8 rows selected.
修改参数
begin
dbms_ilm_admin.customize_ilm(dbms_ilm_admin.tbs_percent_used, 85);
dbms_ilm_admin.customize_ilm(dbms_ilm_admin.tbs_percent_free, 25);
end;
/
也可以手工执行ILM任务
set serverout on
declare
    tid number;
begin
    dbms_ilm.execute_ilm(tid);
    dbms_output.put_line(tid);
end;
/
然后查看执行结果
col job_name for a30
col comments for a30
col COMPLETION_TIME for a30
col STATISTICS for a30
SQL> select * from USER_ILMRESULTS where task_id = 3;
   TASK_ID JOB_NAME       JOB_STATE           START_TIME         COMPLETION_TIME        COMMENTS
---------- ------------------------------ ----------------------------------- ------------------------------ ------------------------------ ------------------------------
STATISTICS
------------------------------
   3 ILMJOB132        COMPLETED SUCCESSFULLY        09-MAR-15 10.10.21.314846 AM   09-MAR-15 10.11.27.596074 AM
   3 ILMJOB134        COMPLETED SUCCESSFULLY        09-MAR-15 10.10.21.319984 AM   09-MAR-15 10.11.24.671375 AM
禁用、删除ILM策略
alter table p ilm disable policy p1;
alter table p ilm delete policy p1;

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

转载于:http://blog.itpub.net/26239116/viewspace-1476292/

你可能感兴趣的文章
看完这份参会指南,Get 2017 OSC 年终盛典正确参会姿势!
查看>>
盛食厉兵 中科天玑挖掘大数据价值助力行业数字化转型
查看>>
白鹭引擎正式支持微信小游戏开发
查看>>
2018年,你所不知道的Jira!
查看>>
2017年,阿里巴巴开源的那些事
查看>>
推动边缘计算的七项核心技术
查看>>
边缘计算精华问答 | 边缘计算需要IaaS、PaaS、SaaS等服务能力吗?
查看>>
Spark精华问答 | Spark 会替代Hadoop 吗?
查看>>
豆瓣已玩烂,来爬点有逼格的 ——IMDB 电影提升你的品位
查看>>
一部刷爆朋友圈的5G短片,看完才知道5G多暖多重要!
查看>>
SDN精华问答 | SDN可以做什么?
查看>>
云评测 | 开发者最有用的开源云监控工具有哪些呢? 这7款神器总有一款适合你!...
查看>>
小团队的微服务之路
查看>>
K8S精华问答 | Kubernetes集群不能正常工作,难道是防火墙问题?
查看>>
5G精华问答 | 什么是5G?5G与LTE有什么关系?
查看>>
虎牙直播在微服务改造方面的实践和总结
查看>>
微服务精华问答 | 在使用微服务架构时,您面临哪些挑战?
查看>>
Kubernetes 调度器实现初探
查看>>
边缘计算精华问答 | 边缘计算有哪些应用场景?
查看>>
数据中台精华问答 | 数据中台和传统数仓的区别是什么?
查看>>