V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ppyzzz
V2EX  ?  数据库

oracle explain 分析 SQL 时, buffer sort 耗时将近 16K 大概是怎么回事呢?

  •  
  •   ppyzzz · 2019-05-24 16:07:30 +08:00 · 1558 次点击
    这是一个创建于 1812 天前的主题,其中的信息可能已经有所发展或是发生改变。

    腾讯云最新优惠活动来了:云产品限时1折,云服务器低至88元/年 ,点击这里立即抢购:9i0i.cn/qcloud,更有2860元代金券免费领取,付款直接抵现金用,点击这里立即领取:9i0i.cn/qcloudquan

    (福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

    如题,今天碰到一个这样的问题,执行一条只有 4000 条数据的 SQL 时,意外耗时 12 分钟,特意去 explain 了一下 发现有 16K 左右的时间花在了 buffer sort 上,请问这是个什么情况?

    6 条回复  ?  2019-05-25 08:16:25 +08:00
    ppyzzz
        1
    ppyzzz  
    OP
       2019-05-24 16:10:04 +08:00
    [图片]
    ppyzzz
        2
    ppyzzz  
    OP
       2019-05-24 16:10:46 +08:00
    不能发图片,我很忧伤
    ppyzzz
        3
    ppyzzz  
    OP
       2019-05-24 16:14:05 +08:00
    老哥们,问题是这样的,我 explain 的时候总耗时是 41K 左右,往下面排查的时候我发现有一个 merge join outer,这个耗时在 16K,而 merge join outer 里面又有一个 buffer sort,这个 buffer sort 几乎占据了 16K 的 99%,所以我想问的是 buffer sort 是什么,啥时候会触发,oracle 的版本是 11.2.0.4.0
    sunziren
        4
    sunziren  
       2019-05-24 17:30:26 +08:00
    萌新帮顶
    snappyone
        5
    snappyone  
       2019-05-24 18:02:48 +08:00 via Android
    order by 没索引?
    raftPaxos
        6
    raftPaxos  
       2019-05-25 08:16:25 +08:00 via Android
    IO 负载是不是很高?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5852 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 06:39 · PVG 14:39 · LAX 23:39 · JFK 02:39
    Developed with CodeLauncher
    ? Do have faith in what you're doing.


    http://www.vxiaotou.com