文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

如何进行CTAS和insert append的测试

2023-06-04 14:01

关注

这篇文章跟大家分析一下“如何进行CTAS和insert append的测试”。内容详细易懂,对“如何进行CTAS和insert append的测试”感兴趣的朋友可以跟着小编的思路慢慢深入来阅读一下,希望阅读后能够对大家有所帮助。下面跟着小编一起深入学习“如何进行CTAS和insert append的测试”的知识吧。

8174上的一个测试,非归档模式:

代码:

SQL> select * from v$version;
BANNER ---------------------------------------------------------------- Oracle8i Enterprise Edition Release 8.1.7.4.1 - Production
PL/SQL Release 8.1.7.4.0 - Production
CORE    8.1.7.2.1       Production
TNS for 32-bit Windows: Version 8.1.7.4.0 - Production
NLSRTL Version 3.4.1.0.0 - Production

SQL> archive log list 数据库日志模式             非存档模式
自动存档             启用
存档终点            D:databaseoracleora817RDBMS
最早的概要信息日志序列     1488
当前日志序列           1491  


SQL> select * from redo_size;

    VALUE ----------
    91848

SQL> create table test nologging as select * from all_objects;
表已创建。

SQL> select * from redo_size;

    VALUE ----------
   147148

SQL> drop table test;
表已丢弃。

SQL> select * from redo_size;

    VALUE ----------
   177584

SQL> create table test as select * from all_objects;
表已创建。

SQL> select * from redo_size;

    VALUE ----------
   232892        

SQL> select (232892 - 177584 ) redo,(147148-91848) redo_nolog from dual;

     REDO REDO_NOLOG ---------- ----------
    55308      55300 '



在归档模式下的情况:

代码:

SQL> shutdown immediate; 数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount
ORACLE 例程已经启动。

Total System Global Area   65648668 bytes
Fixed Size                    75804 bytes
Variable Size              44523520 bytes
Database Buffers           20971520 bytes
Redo Buffers                  77824 bytes
数据库装载完毕。
SQL> alter database archivelog
 2  /
数据库已更改。

SQL> alter database open;
数据库已更改。    

SQL> drop table test;
表已丢弃。

SQL> select * from redo_size;

    VALUE ----------
    30520
     
SQL> create table test as select * from all_objects;
表已创建。

SQL> select * from redo_size;

    VALUE ----------
  2953668

SQL> drop table test;
表已丢弃。

SQL> select * from redo_size;

    VALUE ----------
  3070020

SQL> create table test nologging as select * from all_objects;
表已创建。

SQL> select * from redo_size;

    VALUE ----------
  3125328

SQL> select (2953668-30520) redo,(3125328-3070020) redo_nolog from dual;

     REDO REDO_NOLOG ---------- ----------
  2923148      55308 '



在归档模式下的近一步测试,比较ctas和ctas无数据+ insert append 的redo size:

代码:

SQL> drop table test;
表已丢弃。

SQL> select * from redo_size;

    VALUE ----------
  3155764

SQL> create table test as select * from all_objects where 1=0;
表已创建。

SQL> insert into test select * from all_objects;
已创建25474行。

SQL> commit;
提交完成。

SQL> select * from redo_size;

    VALUE ----------
  6079860
   
SQL> select  (6079860-3155764) logging from dual;

(6079860-3155764)
-----------------
         2924096    

   
SQL> drop table test;
表已丢弃。

SQL> select * from redo_size;

    VALUE ----------
  6110356

SQL> create table test nologging as select * from all_objects where 1=0;
表已创建。

SQL> insert into test select * from all_objects;
已创建25474行。

SQL> commit;
提交完成。

SQL> select * from redo_size;

    VALUE ----------
  6167588
   
SQL> select (6079860-3155764) logging ,(6167588-6110356)nologging from dual;

  LOGGING  NOLOGGING ---------- ----------
  2924096      57232 '



根据这个结果,我们看到:
noarchivelog下的CTAS 的redo=noarchivelog下的CTAS nologging的redo =archivelog下的CTAS nologging的redo
这三种情况下,都对系统产生了较少的redo size
只有在archivelog 下CTAS,才产生了较多的redo size

比较了CTAS和CTAS+insert append后,实际上(archivelog mode):
CTAS nologging redo =CTAS(no data) nologing +insert append redo size;

CTAS redo =CTAS(no data) +insert append redo size;

关于如何进行CTAS和insert append的测试就分享到这里啦,希望上述内容能够让大家有所提升。如果想要学习更多知识,请大家多多留意小编的更新。谢谢大家关注一下编程网网站!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯