explain.depesz.com

PostgreSQL's explain analyze made readable

Result: imwi

Settings
# exclusive inclusive rows x rows loops node
1. 10.585 1,980.122 ↓ 85.0 3,400 1

Sort (cost=8,884.10..8,884.20 rows=40 width=1,337) (actual time=1,979.961..1,980.122 rows=3,400 loops=1)

  • Sort Key: cr.combination_id, sr.slider_id
  • Sort Method: quicksort Memory: 1000kB
  • Buffers: shared hit=56987
2. 7.090 1,969.537 ↓ 85.0 3,400 1

Nested Loop Left Join (cost=36.03..8,883.04 rows=40 width=1,337) (actual time=45.585..1,969.537 rows=3,400 loops=1)

  • Join Filter: ((p.period_id = sr.period_id) AND ((sl.id)::numeric = cs.slider_id) AND ((sl.file_id)::numeric = cs.file_id))
  • Buffers: shared hit=56984
3. 2.171 1,959.047 ↓ 85.0 3,400 1

Nested Loop Left Join (cost=36.03..7,513.43 rows=40 width=1,249) (actual time=41.291..1,959.047 rows=3,400 loops=1)

  • Join Filter: ((dch.file_id = di.file_id) AND (dch.combination_id = (cr.combination_id)::numeric))
  • Buffers: shared hit=56648
4. 1,014.206 1,916.076 ↓ 85.0 3,400 1

Nested Loop Left Join (cost=36.03..2,587.23 rows=40 width=1,233) (actual time=1.037..1,916.076 rows=3,400 loops=1)

  • Join Filter: ((cs.combination_id = (cr.combination_id)::numeric) AND (cs.slider_id = (sr.slider_id)::numeric))
  • Rows Removed by Join Filter: 4035800
  • Buffers: shared hit=54437
5. 3.218 4.270 ↓ 85.0 3,400 1

Hash Right Join (cost=35.61..212.21 rows=40 width=1,215) (actual time=0.364..4.270 rows=3,400 loops=1)

  • Hash Cond: ((sr.analysis_id = a.id) AND (sr.combination_id = cr.combination_id))
  • Buffers: shared hit=37
6. 0.757 0.757 ↓ 1.2 680 1

Index Scan using idx_slider_result_a_id on slider_result sr (cost=0.42..162.57 rows=562 width=31) (actual time=0.058..0.757 rows=680 loops=1)

  • Index Cond: (analysis_id = 1349)
  • Buffers: shared hit=21
7. 0.027 0.295 ↓ 2.5 20 1

Hash (cost=35.07..35.07 rows=8 width=1,188) (actual time=0.295..0.295 rows=20 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 12kB
  • Buffers: shared hit=16
8. 0.013 0.268 ↓ 2.5 20 1

Nested Loop Left Join (cost=15.04..35.07 rows=8 width=1,188) (actual time=0.249..0.268 rows=20 loops=1)

  • Join Filter: (a.id = cr.analysis_id)
  • Buffers: shared hit=16
9. 0.056 0.203 ↑ 1.0 1 1

Hash Right Join (cost=14.76..18.22 rows=1 width=642) (actual time=0.194..0.203 rows=1 loops=1)

  • Hash Cond: ((di.id)::numeric = d.label_id)
  • Buffers: shared hit=13
10. 0.018 0.018 ↑ 1.0 97 1

Seq Scan on dictionary_import di (cost=0.00..2.97 rows=97 width=23) (actual time=0.007..0.018 rows=97 loops=1)

  • Buffers: shared hit=2
11. 0.006 0.129 ↑ 1.0 1 1

Hash (cost=14.74..14.74 rows=1 width=623) (actual time=0.129..0.129 rows=1 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
  • Buffers: shared hit=8
12. 0.033 0.123 ↑ 1.0 1 1

Hash Right Join (cost=8.30..14.74 rows=1 width=623) (actual time=0.118..0.123 rows=1 loops=1)

  • Hash Cond: (d.id = a.dataset_id)
  • Buffers: shared hit=8
13. 0.036 0.036 ↓ 1.0 109 1

Seq Scan on dictionary_dataset d (cost=0.00..6.04 rows=104 width=525) (actual time=0.017..0.036 rows=109 loops=1)

  • Buffers: shared hit=5
14. 0.006 0.054 ↑ 1.0 1 1

Hash (cost=8.29..8.29 rows=1 width=102) (actual time=0.054..0.054 rows=1 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
  • Buffers: shared hit=3
15. 0.048 0.048 ↑ 1.0 1 1

Index Scan using idx_analysis_id on analysis a (cost=0.28..8.29 rows=1 width=102) (actual time=0.047..0.048 rows=1 loops=1)

  • Index Cond: (id = 1349)
  • Buffers: shared hit=3
16. 0.052 0.052 ↓ 2.5 20 1

Index Scan using idx_comb_result_a_id on combination_result cr (cost=0.29..16.75 rows=8 width=550) (actual time=0.049..0.052 rows=20 loops=1)

  • Index Cond: (analysis_id = 1349)
  • Buffers: shared hit=3
17. 897.600 897.600 ↓ 1.6 1,188 3,400

Index Scan using idx_dict_comb_slider_file_id on dictionary_combination_slider cs (cost=0.42..44.30 rows=754 width=24) (actual time=0.012..0.264 rows=1,188 loops=3,400)

  • Index Cond: (di.file_id = file_id)
  • Buffers: shared hit=54400
18. 0.564 40.800 ↓ 0.0 0 3,400

Materialize (cost=0.00..4,925.40 rows=1 width=26) (actual time=0.012..0.012 rows=0 loops=3,400)

  • Buffers: shared hit=2211
19. 40.236 40.236 ↓ 0.0 0 1

Seq Scan on dictionary_combination_headers dch (cost=0.00..4,925.40 rows=1 width=26) (actual time=40.236..40.236 rows=0 loops=1)

  • Filter: (language_id = 1)
  • Rows Removed by Filter: 217152
  • Buffers: shared hit=2211
20. 0.000 3.400 ↓ 0.0 0 3,400

Materialize (cost=0.00..1,368.31 rows=1 width=110) (actual time=0.001..0.001 rows=0 loops=3,400)

  • Buffers: shared hit=336
21. 0.002 4.241 ↓ 0.0 0 1

Nested Loop (cost=0.00..1,368.31 rows=1 width=110) (actual time=4.241..4.241 rows=0 loops=1)

  • Join Filter: ((sl.file_id = p.file_id) AND (sl.granulation_type_id = p.type_id))
  • Buffers: shared hit=336
22. 0.000 4.239 ↓ 0.0 0 1

Nested Loop (cost=0.00..572.20 rows=1 width=115) (actual time=4.239..4.239 rows=0 loops=1)

  • Join Filter: ((sl.file_id)::numeric = ff.file_id)
  • Buffers: shared hit=336
23. 4.239 4.239 ↓ 0.0 0 1

Seq Scan on dictionary_slider sl (cost=0.00..568.98 rows=1 width=115) (actual time=4.239..4.239 rows=0 loops=1)

  • Filter: (language_id = 1)
  • Rows Removed by Filter: 18619
  • Buffers: shared hit=336
24. 0.000 0.000 ↓ 0.0 0

Seq Scan on dictionary_import ff (cost=0.00..3.21 rows=1 width=5) (never executed)

  • Filter: (id = 123)
25. 0.000 0.000 ↓ 0.0 0

Seq Scan on dictionary_period p (cost=0.00..796.09 rows=1 width=17) (never executed)