博客
关于我
Oracle数据泵导出使用并行参数,单个表能否真正的并行?
阅读量:447 次
发布时间:2019-03-06

本文共 621 字,大约阅读时间需要 2 分钟。

对于Oracle Data Pump工具expdp的并行参数,确实可以在特定情况下真正起到并行处理的作用,但其效果取决于表的大小和结构。以下是详细的分析和测试结果:

  • 单个小表的并行测试

    • 当设置parallel=2时,expdp命令并未实际分成两个进程来处理数据。直接路径导出不支持并行,且由于表的大小不足以触发外部表的并行处理,实际上只有一个进程在工作。
    • 这意味着对于小型数据,设置并行参数并不会带来性能提升,反而可能增加资源消耗。
  • 大型非分区表的并行测试

    • 对于非分区表,设置高并行参数如parallel=10时,实际上只有四个进程在工作(一个主进程和三个PX进程)。这表明,表的大小和结构不足以支持更多的PX进程,导致并行效果不明显。
    • 尽管并行参数设置较高,但由于表的数据量和估算大小,PX进程的数量没有达到预期的并行效果。
  • 大型分区表的并行测试

    • 当分区表中的每个分区大小超过250MB时,设置parallel=10会启动十个主进程,每个进程分别处理一个分区。这样,每个分区的数据可以同时被导出,显著提高了总体的导出速度。
    • 这表明,在分区表中,合理的分区大小和并行参数设置可以有效地分配PX进程,从而实现真正的并行处理。
  • 结论

    • 对于单个小型表,或者非分区的大型表,设置并行参数并不会带来显著的性能提升。
    • 对于大型分区表,合理的分区设计和高并行参数设置可以有效提升导出速度。每个分区应超过250MB,以确保足够的PX进程被创建和使用。

    转载地址:http://xxlyz.baihongyu.com/

    你可能感兴趣的文章
    Objective-C实现随机数生成器(附完整源码)
    查看>>
    Objective-C实现隐藏任务栏(附完整源码)
    查看>>
    Objective-C实现雪花算法(附完整源码)
    查看>>
    Objective-C实现高斯消元法(附完整源码)
    查看>>
    Objective-C实现高斯消除算法(附完整源码)
    查看>>
    Objective-C实现高斯滤波GaussianBlur函数用法(附完整源码)
    查看>>
    Objective-C实现鸡兔同笼问题(附完整源码)
    查看>>
    Objective-C语法之代码块(block)的使用
    查看>>
    Objenesis创建类的实例
    查看>>
    OBObjective-c 多线程(锁机制) 解决资源抢夺问题
    查看>>
    OBS studio最新版配置鉴权推流
    查看>>
    Obsidian的使用-ChatGPT4o作答
    查看>>
    ObsoleteAttribute 可适用于除程序集、模块、参数或返回值以外的所有程序元素。 将元素标记为过时可以通知用户:该元素在产品的未来版本中将被移除。...
    查看>>
    OC Xcode快捷键
    查看>>
    oc 中的.m和.mm文件区别
    查看>>
    OC 内存管理黄金法则
    查看>>
    oc57--Category 分类
    查看>>
    occi库在oracle官网的下载针对vs2008
    查看>>
    OceanBase 安装使用详细说明
    查看>>
    OceanBase详解及如何通过MySQL的lib库进行连接
    查看>>