美文网首页
Oracle 表分区处理海量历史数据方案

Oracle 表分区处理海量历史数据方案

作者: 龙啊子工作室 | 来源:发表于2020-09-11 10:38 被阅读0次

前言

在实际项目中,随着项目的运行,数据量会越来越大,势必会影响到现有项目的性能以及体验。数据库的压力也随之增大。同时历史数据又不能轻易删除,需要保留一段时间。所以我们就需要有一种方案来解决这个问题。


解决方案

  1. 创建与现有数据库表结构相同的历史分区表。按照最后更新时间创建分区。
 CREATE TABLE CUSTOMER 
 ( 
     CUSTOMER_ID NUMBER NOT NULL PRIMARY KEY, 
     FIRST_NAME  VARCHAR2(30) NOT NULL, 
     LAST_NAME   VARCHAR2(30) NOT NULL, 
     PHONE        VARCHAR2(15) NOT NULL, 
     EMAIL        VARCHAR2(80), 
     STATUS       CHAR(1),
     LAST_UDT     DATE
 ) 
 --按用户ID分区
 PARTITION BY RANGE (CUSTOMER_ID) 
 ( 
     PARTITION CUS_PART1 VALUES LESS THAN (100000) TABLESPACE CUS_TS01, 
     PARTITION CUS_PART2 VALUES LESS THAN (200000) TABLESPACE CUS_TS02 
 )
  1. 创建定时任务
    1. 定时执行sql新增分区。如果分区已存在则不创建。
    2. 定时执行对原数据表中的数据做数据迁移到分区表中。并删除原数据表中已迁移的数据。
    3. 如有需要还可定时执行删除历史数据表中已超过最大保存时效 的数据分区。

相关文章

  • Oracle 表分区处理海量历史数据方案

    前言 在实际项目中,随着项目的运行,数据量会越来越大,势必会影响到现有项目的性能以及体验。数据库的压力也随之增大。...

  • oracle与db2分区的区别

    ORACLE和DB2都引入了partition的概念.但是区别还是相当大的. ORACLE的分区是表的分区,每张表...

  • Oracle大表处理方案

    新建历史表用于大表数据的迁移 编写存储过程,定期迁移符合条件的订单到历史表(条件如:一个月前、已归档的订单) 新建...

  • Oracle表分区

    Oracle 10g使用比较多的两种分区类型: (1)范围分区(range); (2)哈希分区(hash)。 (1...

  • ORACLE表分区

    一.表分区策略 1.识别大表 采用ANALYZE TABLE语句进行分析,然后查询数据字典获得相应的数据量。 ...

  • oracle表分区和索引分区

    ㈠ 分区表技术概述 ㈡ 分区索引技术概述 ⑴ 本地前缀分区索引 适用场景:如果历史数据整理非常频繁、而且不能承受全...

  • oracle分区表

    一、分区表理论知识 oracle的分区表可以包括多个分区,每个分区都是一个独立的段,存放到不同的表空间中,查询时可...

  • pg inherit

    借助表的继承特性PostgreSQL实现了分区表功能,虽然相比Oracle、MySQL的分区表来说其实现过程比较麻...

  • Oracle表分区操作

    搜索分区下的数据: 创建表分区 注意事项: partition by 分区类型(分区键) 范围分区:range可以...

  • Oracle分区表

    1.分区表概念当系统内数据量比较大的时候,访问性能就会急剧下降,直接影响到系统的性能问题。那么这个时候就要考虑使用...

网友评论

      本文标题:Oracle 表分区处理海量历史数据方案

      本文链接:https://www.haomeiwen.com/subject/rnuvektx.html