公司在开发一个新系统来代替旧系统,数据要从旧系统的oracle数据库迁移到新系统的postgresql数据库里。为了减少迁移数据量,决定备份一下旧数据库,然后把三年前的数据都从数据库里删掉。要删除的有三十多张表,总共几十亿条数据,只有周六一天时间,时间紧任务重。为了顺利完成任务,和DBA一起制定了删除计划。
为了提高删除速度,主要采取了以下方针。
1,oracle设定为非归档模式·(noarchivelog)
2,对于只需要保留少量数据的表,采用下面的方式。

  1. 新建一个临时表,把要保留的数据插入到临时表里
  2. truncate 旧表
  3. insert into 旧表 select * from 临时表
  4. drop 临时表

3,对于分区表,如果有些分区是全部删除的,就TRUNCATE PARTITION。
  例:ALTER TABLE xxx TRUNCATE PARTITION yyy UPDATE GLOBAL INDEXES;
 如果有些分区只需要保留少量数据,采用跟第2条一样的临时表方法。
4,一条delete语句删除的数据条数太多的话,修改删除条件,分成几次删。
5,对于删除逻辑比较复杂的数据,新建中间表,提前用select语句把删除对象筛选出来插到中间表里,简化删除逻辑。

删除当天,虽然出现了一些意外状况,好在有惊无险,最终在预想时间内完成了任务。
顺便分享下删除大量数据的delete语句的实际处理时间。
从3.5亿条数据的表里删除1.1亿数据:26分钟
从5000万条数据的表里删除1400万数据:2分钟
从1.1亿条数据的表里删除7000万数据:10分钟
从9000万条数据的表里删除3000万数据:8分钟

oracle上亿数据的删除相关推荐

  1. 【转贴】Oracle查询重复数据与删除重复记录方法

    Oracle查询重复数据与删除重复记录方法 比如现在有一人员表 (表名:peosons) 若想将姓名.身份证号.住址这三个字段完全相同的记录查询出来 select p1.* from persons ...

  2. 耗时3天,上亿数据如何做到秒级查询?

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源:sohu.gg/jIp59N 最近在忙着优化集团公司的一个报 ...

  3. 查询a表有但是b表没有的数据_牛逼!一个上亿数据的报表竟然能做到秒查~

    数据背景 首先项目是西门子中国在我司实施部署的MES项目,由于项目是在产线上运作(3 years+),数据累积很大.在项目的数据库中,大概上亿条数据的表有5个以上,千万级数据的表10个以上,百万级数据 ...

  4. 耗时 3 天,上亿数据如何做到秒级查询?

    最近在忙着优化集团公司的一个报表.优化完成后,报表查询速度由从半小时以上(甚至查不出)到秒查的质变.从修改 SQL 查询语句逻辑到决定创建存储过程实现,花了我 3 天多的时间,在此总结一下,希望对朋友 ...

  5. 实战上亿数据,如何实现秒查!

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:硬刚一周,3W字总结,一年的经验告诉你如何准备校招! 个人原创100W+访问量博客:点击前往,查看更多 作者:J ...

  6. 前端如何展示一个有上亿数据的树结构

    需求描述 数据上亿,有数千个从属于根节点的一级子节点: 每个一级子节点有数个到数万个二级子节点: 二级子节点可能有三级子节点: 子节点的最多层深不定(即,也许可能有 10 层): 需求分析 当面临一个 ...

  7. 上亿数据怎么玩深度分页?兼容MySQL + ES + MongoDB

    面试题 & 真实经历 面试题:在数据量很大的情况下,怎么实现深度分页? 大家在面试时,或者准备面试中可能会遇到上述的问题,大多的回答基本上是分库分表建索引,这是一种很标准的正确回答,但现实总是 ...

  8. 实战:上亿数据如何秒查

    作者:blog.csdn.net/chenleixing/article/details/44994571 最近在忙着优化集团公司的一个报表.优化完成后,报表查询速度有从半小时以上(甚至查不出)到秒查 ...

  9. 高效率批量插入上亿数据

    转至 : https://blog.csdn.net/xiyang_1990/article/details/78771962 这里提供一种方法,使用 APPEND 提示,使得十分钟内插入上亿数据成为 ...

最新文章

  1. Single Page Application概览
  2. Linux Kernel系列一:开篇和Kernel启动概要
  3. WebClient UI删除搜索条件的后台处理,以及max hit的处理逻辑
  4. GitLab 在多分支中的一个push
  5. Ubuntu安装搭建Clion环境
  6. 1900页Python系列PPT分享四:字符串与正则表达式(109页)
  7. 易语言修改虚拟机硬盘id_易语言本地虚拟机源码
  8. 计算机c盘如何扩容,C盘满想换SSD遇涨价?教你C盘扩容技巧
  9. c语言队列ADT 学习总结
  10. 汉王考勤机管理系统服务器,汉王考勤管理系统7
  11. 头文件stdafx.h
  12. 一文读懂PID控制算法(抛弃公式,从原理上真正理解PID控制)
  13. UE4材质(六):不透明度Opacity——玻璃
  14. 华为od机考真题-平安果
  15. ArchSummit 北京 2016之lookalike主题
  16. Hi3519V101运行MPP业务
  17. 2022年第四届河南省CCPC大学生程序设计竞赛代码+简单思路(退役战了算是,还好金了)
  18. 我的微信被限制使用了!
  19. Android Studio模拟器报错:Could not initialize DirectSoundCapture
  20. 海盐、低钠岩盐、腌制盐……这么多盐到底有什么不同啊?

热门文章

  1. Charles抓手机包
  2. 项目管理的20条锦囊妙计
  3. JavaScript: 世界上最被误解的语言|Douglas Crockford
  4. IObit Unlocker删除/解锁占用的文件
  5. Windows 7 的系统文件修复:sfc /scannow
  6. 大头儿子小头爸爸计算机音乐,幼儿园大班音乐教案:《大头儿子小头爸爸》插曲...
  7. 大中型企业敏捷转型策略路线图-案例解析
  8. N1 小钢炮docker安装迅雷方法
  9. 前后端分离单点登录SSO实现方案 淘宝、京东跨域获取Cookie、OAuth2、QQ客户端多种模式
  10. 可以买到 Linux 电脑的 10 个地方