Oracle 大数据量去重实验
来源:互联网 发布:网络语香菇是什么意思 编辑:程序博客网 时间:2024/05/22 13:14
- -- 环境:64位11.2G
- -- 一、建立测试表,生成2000万测试数据,其中200万重复
- CREATE TABLE test_t
- (
- id NUMBER (8) NOT NULL PRIMARY KEY,
- name VARCHAR2 (32)
- );
- BEGIN
- FOR i IN 1 .. 18000000
- LOOP
- INSERT INTO test_t (id, name)
- VALUES (i, SYS_GUID ());
- END LOOP;
- COMMIT;
- END;
- /
- INSERT INTO test_t (id, name)
- SELECT 18000000 + (id / 9), name
- FROM test_t
- WHERE MOD (id, 9) = 0;
- COMMIT;
- CREATE INDEX idx_test_anme
- ON test_t (name);
- ANALYZE TABLE test_t COMPUTE STATISTICS FOR TABLE FOR ALL INDEXES FOR ALL INDEXED COLUMNS;
- -- 二、两种去重方案对比执行时间
- -- 方案1:建立中间表,生成辅助对象,删除原表,改表名
- CREATE TABLE temp
- AS
- SELECT *
- FROM test_t a
- WHERE a.ROWID = (SELECT MIN (b.ROWID)
- FROM test_t b
- WHERE a.name = b.name);
- -- 用时:08:14.79
- CREATE INDEX idx
- ON temp (name);
- -- 用时:02:45.73
- ALTER TABLE temp ADD CONSTRAINT temp_pk PRIMARY KEY (id);
- -- 用时:01:15.79
- -- 总用时:12分16秒
- -- 方案2:直接删除原表中的重复数据
- DELETE test_t a
- WHERE a.ROWID > (SELECT MIN (b.ROWID)
- FROM test_t b
- WHERE a.name = b.name);
- -- 用时:2个小时没出来,中断退出。
0 0
- Oracle 大数据量去重实验
- ORACLE解决大数据量导入排重
- C#实现大数据量TXT文本数据快速高效去重
- 大数据去重
- 大数据量高效率去重复数据
- oracle大数据量导入(sqlloader)
- oracle 大数据量分页查询
- Oracle大数据量更新方法
- oracle 处理大数据量问题
- oracle 大数据量数据插入
- ORACLE大数据量数据删除
- Oracle大数据量优化查询
- Oracle insert大数据量经验之谈
- oracle去重整理
- Oracle去重
- oracle数据库去重
- oracle 去重
- 去重oracle
- js中,清空对象(删除对象的属性)
- C++ 异常
- ubuntu text mode启动
- linux常用命令的常用使用方法---ping
- OpenStack网络指南(12)BGP动态路由
- Oracle 大数据量去重实验
- Windbg漏洞分析之CVE-2013-2551
- mysql 主从配置错误归纳
- Cent OS安装jdk(rpm方式)
- hr与lc的对比
- Win7上安装VS2015以后,VS2013崩溃
- UIwindows 提示框动画显示以及隐藏关闭
- 关于SVM一篇比较全介绍的博文(转)
- Tomcat 进程自动退出问题