博客
关于我
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/

    你可能感兴趣的文章
    php paypal rest api,PayPal REST API指定网络配置文件PHP
    查看>>
    php pcntl 多进程学习
    查看>>
    PHP pcntl_fork不能在web服务器中使用的变通方法
    查看>>
    php private ,public protected三者的区别
    查看>>
    php PSR规范
    查看>>
    php rand() 重复,array_rand()函数从另外一个数组中随机取得的一定数量的数组的元素是否会重复?...
    查看>>
    php redis pub/sub(Publish/Subscribe,发布/订阅的信息系统)之基本使用
    查看>>
    php redis 集群扩展类文件
    查看>>
    php redis(2)
    查看>>
    PHP Redis分布式锁
    查看>>
    php redis的应用
    查看>>
    php rss,如何用PHP编写RSS
    查看>>
    php session超时时间_php怎么设置session超时时间
    查看>>
    PHP SOAP模块的使用方法:NON-WSDL模式
    查看>>
    PHP Socket实现websocket(三)Stream函数
    查看>>
    php Socket通信
    查看>>
    PHP SPL标准库-迭代器
    查看>>
    php static 变量
    查看>>
    PHP Static延迟静态绑定
    查看>>
    php str_pad();
    查看>>