explain.depesz.com

PostgreSQL's explain analyze made readable

Result: XJ1m

Settings
# exclusive inclusive rows x rows loops node
1. 3.525 71.789 ↑ 12.7 299 1

Hash Full Join (cost=2,300.60..3,029.52 rows=3,791 width=136) (actual time=60.348..71.789 rows=299 loops=1)

  • Hash Cond: (block_seek_pos.bidx = block_seek_pos_1.bidx)
  • Filter: ((block_seek_pos.bidx IS NULL) OR (block_seek_pos_1.bidx IS NULL) OR ((block_seek_pos.block_chksum)::text <> (block_seek_pos_1.block_chksum)::text))
  • Rows Removed by Filter: 6,394
2. 4.289 23.228 ↓ 1.8 6,692 1

Hash Join (cost=832.08..1,491.60 rows=3,792 width=101) (actual time=15.274..23.228 rows=6,692 loops=1)

  • Hash Cond: (block_seek_pos.sbid = "ANY_subquery".max)
3. 3.751 3.751 ↑ 1.1 7,169 1

Seq Scan on block_seek_pos (cost=0.00..597.42 rows=7,585 width=101) (actual time=0.052..3.751 rows=7,169 loops=1)

  • Filter: ((fguid)::text = 'ac15c785776ab44bd58a60f99a240515'::text)
  • Rows Removed by Filter: 6,785
4. 1.147 15.188 ↓ 33.5 6,692 1

Hash (cost=829.58..829.58 rows=200 width=8) (actual time=15.188..15.188 rows=6,692 loops=1)

  • Buckets: 8,192 (originally 1024) Batches: 1 (originally 1) Memory Usage: 326kB
5. 3.384 14.041 ↓ 33.5 6,692 1

HashAggregate (cost=827.58..829.58 rows=200 width=8) (actual time=12.978..14.041 rows=6,692 loops=1)

  • Group Key: "ANY_subquery".max
6. 0.511 10.657 ↓ 1.2 6,692 1

Subquery Scan on ANY_subquery (cost=704.19..813.87 rows=5,484 width=8) (actual time=8.372..10.657 rows=6,692 loops=1)

7. 3.975 10.146 ↓ 1.2 6,692 1

HashAggregate (cost=704.19..759.03 rows=5,484 width=16) (actual time=8.370..10.146 rows=6,692 loops=1)

  • Group Key: block_seek_pos_2.bidx
8. 6.171 6.171 ↑ 1.1 6,872 1

Seq Scan on block_seek_pos block_seek_pos_2 (cost=0.00..667.20 rows=7,399 width=16) (actual time=0.010..6.171 rows=6,872 loops=1)

  • Filter: ((schid <= 3) AND (sbid > 0) AND ((fguid)::text = 'ac15c785776ab44bd58a60f99a240515'::text))
  • Rows Removed by Filter: 7,082
9. 4.742 45.036 ↓ 2.1 6,692 1

Hash (cost=1,428.85..1,428.85 rows=3,174 width=101) (actual time=45.036..45.036 rows=6,692 loops=1)

  • Buckets: 8,192 (originally 4096) Batches: 1 (originally 1) Memory Usage: 960kB
10. 3.875 40.294 ↓ 2.1 6,692 1

Hash Join (cost=779.45..1,428.85 rows=3,174 width=101) (actual time=17.214..40.294 rows=6,692 loops=1)

  • Hash Cond: (block_seek_pos_1.sbid = "ANY_subquery_1".max)
11. 20.715 20.715 ↓ 1.1 6,765 1

Seq Scan on block_seek_pos block_seek_pos_1 (cost=0.00..597.42 rows=6,347 width=101) (actual time=1.490..20.715 rows=6,765 loops=1)

  • Filter: ((fguid)::text = '5303ee30dacdde734dec68ede9346d8f'::text)
  • Rows Removed by Filter: 7,189
12. 1.012 15.704 ↓ 33.5 6,692 1

Hash (cost=776.95..776.95 rows=200 width=8) (actual time=15.704..15.704 rows=6,692 loops=1)

  • Buckets: 8,192 (originally 1024) Batches: 1 (originally 1) Memory Usage: 326kB
13. 4.014 14.692 ↓ 33.5 6,692 1

HashAggregate (cost=774.95..776.95 rows=200 width=8) (actual time=13.739..14.692 rows=6,692 loops=1)

  • Group Key: "ANY_subquery_1".max
14. 0.633 10.678 ↓ 1.4 6,692 1

Subquery Scan on ANY_subquery_1 (cost=663.98..762.62 rows=4,932 width=8) (actual time=8.000..10.678 rows=6,692 loops=1)

15. 5.711 10.045 ↓ 1.4 6,692 1

HashAggregate (cost=663.98..713.30 rows=4,932 width=16) (actual time=7.998..10.045 rows=6,692 loops=1)

  • Group Key: block_seek_pos_3.bidx
16. 4.334 4.334 ↓ 1.1 6,763 1

Seq Scan on block_seek_pos block_seek_pos_3 (cost=0.00..632.31 rows=6,334 width=16) (actual time=1.618..4.334 rows=6,763 loops=1)

  • Filter: ((sbid > 0) AND ((fguid)::text = '5303ee30dacdde734dec68ede9346d8f'::text))
  • Rows Removed by Filter: 7,191
Planning time : 1.456 ms
Execution time : 72.723 ms