日志型数据表-查询优化-分区

tech2023-07-18  91

 

数据库优化-表分区

一般应用系统中的日志表随着时间的推移数据量会越来越大,这种情况无论是查询还是删除,效率将越来越低

  于是采用了表分区的方式来优化,原日志表不修改,新建一个历史表用来作为分区表,按日或者月分区,按一周或者月将日志数据备份到历史表,然后清除日志表。

文章目录


前言

1.历史表的分区

2.分区的其他只是点补充


提示:以下是本篇文章正文内容,下面案例可供参考

一、历史表创建

     CREATE TABLE LOG_HIS ( id INT NOT NULL, DA DATE NOT NULL)

      PARTITION BY RANGE ("DA ") INTERVAL (NUMTODSINTERVAL(1, 'DAY'))       (PARTITION "HIS_DAY"  VALUES LESS THAN (TO_DATE(' 2019-10-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS',              'NLS_CALENDAR=GREGORIAN');

 

PARTITION BY RANGE ("DA ") INTERVAL (NUMTODSINTERVAL(1, 'DAY')) --按天自增分区,插入数据根据新增的分区放入不同分区里面。

二、按月分区

1.按月

代码如下(示例):

PARTITION BY RANGE (CREATE_TIME) INTERVAL (numtoyminterval(1, 'month')) (partition part_t01 values less than(to_date('2018-11-01', 'yyyy-mm-dd')));

2.查询表分区

代码如下(示例):

select table_name,partition_name from user_tab_partitions where table_name='表名称'

查询表有哪些分区


总结

 

最新回复(0)