explain.depesz.com

PostgreSQL's explain analyze made readable

Result: Ejfg

Settings
# exclusive inclusive rows x rows loops node
1. 1,205.526 20,416.208 ↓ 1.6 1,559,307 1

Gather (cost=738,680.08..945,734.65 rows=991,936 width=486) (actual time=18,223.766..20,416.208 rows=1,559,307 loops=1)

  • Workers Planned: 2
  • Workers Launched: 2
  • Buffers: shared hit=7,627,940 read=96,610, temp read=208,540 written=214,552
2. 1,476.034 19,210.682 ↓ 1.3 519,769 3 / 3

Hash Join (cost=737,680.08..845,541.05 rows=413,307 width=486) (actual time=18,208.432..19,210.682 rows=519,769 loops=3)

  • Buffers: shared hit=7,627,940 read=96,610, temp read=208,540 written=214,552
3. 210.881 210.881 ↑ 1.7 382,690 3 / 3

Seq Scan on address a (cost=0..51,573.53 rows=664,353 width=199) (actual time=0.036..210.881 rows=382,690 loops=3)

  • Buffers: shared read=44,930
4. 2,085.873 17,523.767 ↓ 1.3 519,769 3 / 3

Hash (cost=716,771.74..716,771.74 rows=413,307 width=287) (actual time=17,523.767..17,523.767 rows=519,769 loops=3)

  • Buffers: shared hit=7,627,874 read=51,680, temp read=127,337 written=187,512
5. 3,248.319 15,437.894 ↓ 1.3 519,769 3 / 3

Hash Join (cost=616,702.92..716,771.74 rows=413,307 width=287) (actual time=13,049.525..15,437.894 rows=519,769 loops=3)

  • Buffers: shared hit=7,627,874 read=51,680, temp read=88,619 written=91,896
6. 1,578.136 2,432.339 ↑ 1.5 383,207 3 / 3

Hash Join (cost=42,824.95..79,780.39 rows=574,588 width=141) (actual time=1,288.19..2,432.339 rows=383,207 loops=3)

  • Buffers: shared hit=8 read=35,895, temp read=21,608 written=22,244
7. 313.046 313.046 ↑ 1.2 557,116 3 / 3

Seq Scan on valuation_record_parcel_link vpl (cost=0..20,919.87 rows=694,687 width=14) (actual time=0.021..313.046 rows=557,116 loops=3)

  • Buffers: shared hit=3 read=13,970
8. 255.585 541.157 ↑ 1.3 319,575 3 / 3

Hash (cost=30,396.79..30,396.79 rows=400,173 width=127) (actual time=541.156..541.157 rows=319,575 loops=3)

  • Buffers: shared hit=5 read=21,925, temp written=14,512
9. 285.572 285.572 ↑ 1.3 319,575 3 / 3

Seq Scan on valuation_record vr (cost=0..30,396.79 rows=400,173 width=127) (actual time=0.029..285.572 rows=319,575 loops=3)

  • Filter: (((vr.creation_status)::text = 'A'::text) AND ((vr.effective_to IS NULL) OR (vr.effective_to >= CURRENT_TIMESTAMP)))
  • Buffers: shared hit=5 read=21,925
10. 1,474.609 9,757.236 ↑ 1.8 631,362 3 / 3

Hash (cost=532,389.1..532,389.1 rows=1,154,470 width=162) (actual time=9,757.236..9,757.236 rows=631,362 loops=3)

  • Buffers: shared hit=7,627,866 read=15,785, temp written=48,400
11. 1,450.826 8,282.627 ↑ 1.8 631,362 3 / 3

Merge Join (cost=5.54..532,389.1 rows=1,154,470 width=162) (actual time=2.971..8,282.627 rows=631,362 loops=3)

  • Buffers: shared hit=7,627,866 read=15,785
12. 1,073.018 6,298.187 ↑ 1.4 591,712 3 / 3

Nested Loop (cost=0.86..476,381.58 rows=803,971 width=147) (actual time=1.569..6,298.187 rows=591,712 loops=3)

  • Buffers: shared hit=7,577,209 read=13,571
13. 818.568 818.568 ↑ 1.2 489,622 3 / 3

Index Scan using idx_hgp_par_id on holding_group_parcel hgp (cost=0.43..113,807.66 rows=610,475 width=70) (actual time=0.026..818.568 rows=489,622 loops=3)

  • Buffers: shared hit=1,397,793 read=4,227
14. 4,406.601 4,406.601 ↑ 1.0 1 1,468,867 / 3

Index Scan using idx_holding_holding_group_id on holding h (cost=0.43..0.58 rows=1 width=77) (actual time=0.008..0.009 rows=1 loops=1,468,867)

  • Index Cond: (h.holding_group_id = hgp.holding_group_id)
  • Buffers: shared hit=6,179,416 read=9,344
15. 533.614 533.614 ↓ 1.2 1,487,952 3 / 3

Index Only Scan using idx_vltn_prcl_srvyprcl_id on valuation_parcel vrp (cost=0.43..39,476.05 rows=1,283,975 width=15) (actual time=0.914..533.614 rows=1,487,952 loops=3)

  • Heap Fetches: 220,238
  • Buffers: shared hit=50,657 read=2,214
Planning time : 2.589 ms
Execution time : 20,540.4 ms