explain.depesz.com

PostgreSQL's explain analyze made readable

Result: dNwF

Settings
# exclusive inclusive rows x rows loops node
1. 580.863 5,259.305 ↑ 1.6 961,836 1

GroupAggregate (cost=255,062.52..317,494.28 rows=1,560,794 width=42) (actual time=4,342.901..5,259.305 rows=961,836 loops=1)

  • Output: al.callerid, al.callerkind, al.calleeid, al.calleekind, al.projectid, al.projectkind, CASE WHEN (ao.prototypename IS NOT NULL) THEN 1 ELSE 0 END, kdat.acctyplo, kdat.acctyphi, min(CASE WHEN (ail.ignorable = 1) THEN 1 ELSE 0 END), ao.prototypename
  • Buffers: shared hit=4, local hit=2 read=9296 written=1478, temp read=10179 written=10179
2. 3,643.914 4,678.442 ↑ 1.0 1,558,310 1

Sort (cost=255,062.52..258,964.50 rows=1,560,794 width=42) (actual time=4,342.892..4,678.442 rows=1,558,310 loops=1)

  • Output: al.callerid, al.callerkind, al.calleeid, al.calleekind, al.projectid, al.projectkind, kdat.acctyplo, kdat.acctyphi, ao.prototypename, ail.ignorable
  • Sort Key: al.callerid, al.callerkind, al.calleeid, al.calleekind, al.projectid, al.projectkind, kdat.acctyplo, kdat.acctyphi, ao.prototypename
  • Sort Method: external merge Disk: 81400kB
  • Buffers: shared hit=4, local hit=2 read=9296 written=1478, temp read=10179 written=10179
3. 243.262 1,034.528 ↑ 1.0 1,558,310 1

Hash Join (cost=6,710.20..60,209.82 rows=1,560,794 width=42) (actual time=57.112..1,034.528 rows=1,558,310 loops=1)

  • Output: al.callerid, al.callerkind, al.calleeid, al.calleekind, al.projectid, al.projectkind, kdat.acctyplo, kdat.acctyphi, ao.prototypename, ail.ignorable
  • Hash Cond: (al.linktypeid = kdat.linktypeid)
  • Buffers: shared hit=4, local hit=2 read=9296 written=1478
4. 275.386 791.205 ↑ 1.0 594,475 1

Hash Left Join (cost=6,701.48..40,134.59 rows=594,475 width=38) (actual time=57.044..791.205 rows=594,475 loops=1)

  • Output: al.callerid, al.callerkind, al.calleeid, al.calleekind, al.projectid, al.projectkind, al.linktypeid, ao.prototypename, ail.ignorable
  • Hash Cond: (al.linkid = ail.linkid)
  • Buffers: local hit=2 read=9296 written=1478
5. 369.775 512.510 ↑ 1.0 594,475 1

Hash Left Join (cost=6,484.44..32,406.16 rows=594,475 width=38) (actual time=53.719..512.510 rows=594,475 loops=1)

  • Output: al.callerid, al.callerkind, al.calleeid, al.calleekind, al.projectid, al.projectkind, al.linktypeid, al.linkid, ao.prototypename
  • Hash Cond: (al.calleeid = ao.objectid)
  • Join Filter: (al.calleekind = 'S'::bpchar)
  • Buffers: local hit=2 read=9260 written=1448
6. 89.053 89.053 ↑ 1.0 594,475 1

Seq Scan on pg_temp_11.amt_links al (cost=0.00..10,316.75 rows=594,475 width=26) (actual time=0.004..89.053 rows=594,475 loops=1)

  • Output: al.linkid, al.callerid, al.callerkind, al.calleeid, al.calleekind, al.projectid, al.projectkind, al.linktypeid
  • Buffers: local hit=1 read=4371 written=253
7. 10.429 53.682 ↑ 1.0 69,702 1

Hash (cost=5,598.64..5,598.64 rows=70,864 width=16) (actual time=53.682..53.682 rows=69,702 loops=1)

  • Output: ao.prototypename, ao.objectid
  • Buckets: 8192 Batches: 1 Memory Usage: 2475kB
  • Buffers: local hit=1 read=4889 written=1195
8. 43.253 43.253 ↑ 1.0 69,702 1

Seq Scan on pg_temp_11.amt_objects ao (cost=0.00..5,598.64 rows=70,864 width=16) (actual time=0.002..43.253 rows=69,702 loops=1)

  • Output: ao.prototypename, ao.objectid
  • Buffers: local hit=1 read=4889 written=1195
9. 1.716 3.309 ↑ 1.0 8,046 1

Hash (cost=116.46..116.46 rows=8,046 width=8) (actual time=3.309..3.309 rows=8,046 loops=1)

  • Output: ail.ignorable, ail.linkid
  • Buckets: 1024 Batches: 1 Memory Usage: 315kB
  • Buffers: local read=36 written=30
10. 1.593 1.593 ↑ 1.0 8,046 1

Seq Scan on pg_temp_11.amt_ignorablelinks ail (cost=0.00..116.46 rows=8,046 width=8) (actual time=0.017..1.593 rows=8,046 loops=1)

  • Output: ail.ignorable, ail.linkid
  • Buffers: local read=36 written=30
11. 0.022 0.061 ↑ 1.0 210 1

Hash (cost=6.10..6.10 rows=210 width=12) (actual time=0.061..0.061 rows=210 loops=1)

  • Output: kdat.acctyplo, kdat.acctyphi, kdat.linktypeid
  • Buckets: 1024 Batches: 1 Memory Usage: 10kB
  • Buffers: shared hit=4
12. 0.039 0.039 ↑ 1.0 210 1

Seq Scan on diwmuse_local.kb_decodeacctyp kdat (cost=0.00..6.10 rows=210 width=12) (actual time=0.017..0.039 rows=210 loops=1)

  • Output: kdat.acctyplo, kdat.acctyphi, kdat.linktypeid
  • Buffers: shared hit=4