nolog使用insert append和parallel
Posted yueers
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nolog使用insert append和parallel相关的知识,希望对你有一定的参考价值。
logging或者nologging属性可以在表空间级别、表级别指定。表级别指定的属性会覆盖表空间级别的属性。
在非归档模式下:
1、在logging和nologging模式下,使用普通insert插入数据,会产生标准量的redo。
2、在logging和nologging模式下,使用inert/*+ append */插入数据,产生的redo大量减少。
3、综上:logging和nologging模式几乎没有区别。
在归档模式下:
1、在logging模式下,使用普通insert插入数据,会产生标准量的redo;而使用inert/*+ append */插入数据,产生的redo不会明显减少。
2、在nologging模式下,使用普通insert插入数据,会产生标准量的redo;而使用inert/*+ append */插入数据,产生的redo大量减少。
总结:
可见使用inert /*+ append */ 提高数据插入速度有2点原因:
1、append会在高水位线以上插入数据,不会检查高水位线之下的空闲块。
2、配合nologging属性,减少redo的产生。
3、减少undo的产生。
结论:
最快的插入方法:
使用append insert方法:
alter table t nologging;
insert /*+ append */ into test.t select * from test.t2;
commit;
direct insert,时间最短效率最好。
insert /*+ append parallel(t 4) */ into t select * from t2; 不如 direct insert
insert /*+ append */ into test.t select /*+parallel(4)*/ * from test.t2; 不如 direct insert
以上是关于nolog使用insert append和parallel的主要内容,如果未能解决你的问题,请参考以下文章