大数据量表 create table
来源:互联网 发布:金磐网络科技园 编辑:程序博客网 时间:2024/04/26 23:05
table1(col01 varchar2(11), col02 number)
table2(col01 varchar2(11), col02 number)
两张表的大概都有7,000,000行
现在要把符合条件的内容导入到一张新表,然后用exp导出
条件比较简单,但怎样才能快一点呢?
条件:
50<=table1.col02<=100
10<=table2.col02<=20
table01.col01必须在table02.col01中.
create table temptable
as
select a.col001 from table1 a
left outer join table2 b
on a.col001=b.col001
where a.col002>=50
and a.col002 <=100
and b.col002>=10
and b.col002 <=20
and b.col001 is not null;
我用的是左外联接。
分析如下:(此处没有必要外连接)
1. 使用create table as select ..
因为ddl语句对应的undo 比较少,,对应的就会少产生大量的redo..
2. 如果系统没有standby的限制,,可以考虑create table 的时候指定nologging 进一步降低redo 的生成量..
3. 调整select的sql效率.
1). 这个地方不需要外连接,,直接使用=来进行外连接,, (建议不要使用ansi sql进行处理.
2). 最好考虑使用提示,,让这条sql走hash_join, 对于大表连接,,hash join基本上都是最佳选择..
3). 考虑提高表扫描的效率,,在session 中修改db_file_multiblock_read_count 到合适的值, 对于Aix/Linux系统单个IO的最大值都是1MB.
4). 可以考虑修改系统参数,,适当提高hash_area_size ,对于9i的系统,,几乎可以不用考虑,,auto pga管理已经做的很好..
4. 就是看看效率如何了..
因为ddl语句对应的undo 比较少,,对应的就会少产生大量的redo..
2. 如果系统没有standby的限制,,可以考虑create table 的时候指定nologging 进一步降低redo 的生成量..
3. 调整select的sql效率.
1). 这个地方不需要外连接,,直接使用=来进行外连接,, (建议不要使用ansi sql进行处理.
2). 最好考虑使用提示,,让这条sql走hash_join, 对于大表连接,,hash join基本上都是最佳选择..
3). 考虑提高表扫描的效率,,在session 中修改db_file_multiblock_read_count 到合适的值, 对于Aix/Linux系统单个IO的最大值都是1MB.
4). 可以考虑修改系统参数,,适当提高hash_area_size ,对于9i的系统,,几乎可以不用考虑,,auto pga管理已经做的很好..
4. 就是看看效率如何了..
- 大数据量表 create table
- 大数据量表删除插入
- 大数据量表结构设计案例
- 当create table as select 遇上大数据
- 大数据量表数据导入导出
- ABAP 将大量表数据写入文本
- iq 中大数据量表导出
- Oracle中大数据量表的管理
- 大数据量表的复杂查询
- 针对大数据量表的优化查询
- DB2 删除大数据量表方法
- 针对大数据量表的优化查询
- 在数据大量表中增加一列
- SqlServer为大数据量表建索引
- 针对大数据量表的优化查询
- 大数据量表的优化查询 - 发条
- DB2 删除大数据量表方法
- 大数据量表的优化查询
- webservice优点和缺点
- ASP.NET生成随机密码功能
- 超级DNN管理面板
- XMLHTTP对象及其方法
- C++ 高精度计算程序运行时间的程序
- 大数据量表 create table
- 模拟电子技术39 61-------- 正 负 反馈 介绍 续
- C++赋值的两种形式
- 用VC开发API形式的DLL给VB调用的范例
- GridView 中RowCommand事件用法
- Sql连接查询和联合查询
- C#中的ref out param关键字
- servlet下利用json-lib
- 静态路由之路由器两种转发模式(进程交换转发与快速交换转发)