explain.depesz.com

PostgreSQL's explain analyze made readable

Result: CamZ

Settings
# exclusive inclusive rows x rows loops node
1. 52.878 14,653.110 ↓ 5,000.0 5,000 1

Limit (cost=989,915.44..989,915.45 rows=1 width=52) (actual time=14,579.248..14,653.110 rows=5,000 loops=1)

2. 3.808 14,600.232 ↓ 5,000.0 5,000 1

Unique (cost=989,915.44..989,915.45 rows=1 width=52) (actual time=14,579.247..14,600.232 rows=5,000 loops=1)

3. 11,169.963 14,596.424 ↓ 42,698.0 42,698 1

Sort (cost=989,915.44..989,915.44 rows=1 width=52) (actual time=14,579.246..14,596.424 rows=42,698 loops=1)

  • Sort Key: st.session_id
  • Sort Method: external merge Disk: 211,784kB
4. 426.007 3,426.461 ↓ 3,485,026.0 3,485,026 1

Gather (cost=5,804.48..989,915.43 rows=1 width=52) (actual time=2,349.613..3,426.461 rows=3,485,026 loops=1)

  • Workers Planned: 2
  • Workers Launched: 2
5. 1,329.470 3,000.454 ↓ 1,161,675.0 1,161,675 3 / 3

Parallel Hash Left Join (cost=4,804.48..988,915.33 rows=1 width=52) (actual time=2,339.441..3,000.454 rows=1,161,675 loops=3)

  • Hash Cond: (st.session_id = (ch.channel_name)::text)
  • Filter: (ch.cv_channel_id IS NULL)
  • Rows Removed by Filter: 432,654
6. 1,633.238 1,633.238 ↑ 1.3 1,582,190 3 / 3

Parallel Seq Scan on session_tracking st (cost=0.00..896,505.80 rows=1,984,038 width=52) (actual time=0.008..1,633.238 rows=1,582,190 loops=3)

  • Filter: (session_id IS NOT NULL)
  • Rows Removed by Filter: 122,694
7. 24.374 37.746 ↑ 1.8 44,047 3 / 3

Parallel Hash (cost=3,079.74..3,079.74 rows=77,419 width=52) (actual time=37.745..37.746 rows=44,047 loops=3)

  • Buckets: 65,536 Batches: 4 Memory Usage: 3,392kB
8. 13.372 13.372 ↑ 1.8 44,047 3 / 3

Parallel Seq Scan on cv_channel ch (cost=0.00..3,079.74 rows=77,419 width=52) (actual time=0.006..13.372 rows=44,047 loops=3)

  • Filter: ((channel_type)::text = 'device'::text)
Planning time : 0.894 ms
Execution time : 14,680.560 ms