explain.depesz.com

PostgreSQL's explain analyze made readable

Result: nkDB

Settings
# exclusive inclusive rows x rows loops node
1. 116.382 571,244.908 ↓ 2.3 461 1

HashAggregate (cost=1,322,031.65..1,322,033.65 rows=200 width=62) (actual time=571,244.763..571,244.908 rows=461 loops=1)

  • Group Key: s.last_location_fragment
  • Buffers: shared hit=5681693 read=919895 dirtied=22
2. 616.740 571,128.526 ↑ 1.2 297,073 1

HashAggregate (cost=1,312,933.80..1,316,572.94 rows=363,914 width=38) (actual time=571,013.570..571,128.526 rows=297,073 loops=1)

  • Group Key: s.last_location_fragment, o.person_id
  • Buffers: shared hit=5681693 read=919895 dirtied=22
3. 0.000 570,511.786 ↓ 1.8 656,370 1

Gather (cost=1,000.56..1,311,114.23 rows=363,914 width=38) (actual time=6.033..570,511.786 rows=656,370 loops=1)

  • Workers Planned: 4
  • Workers Launched: 4
  • Buffers: shared hit=5681693 read=919895 dirtied=22
4. 10,740.101 570,608.771 ↓ 1.4 131,274 5

Nested Loop Left Join (cost=0.56..1,273,722.83 rows=90,978 width=38) (actual time=12.877..570,608.771 rows=131,274 loops=5)

  • Buffers: shared hit=5681693 read=919895 dirtied=22
5. 65.316 559,868.590 ↓ 1.4 131,274 5

Append (cost=0.00..1,099,466.50 rows=90,980 width=38) (actual time=12.259..559,868.590 rows=131,274 loops=5)

  • Buffers: shared hit=13774 read=825240 dirtied=8
6. 0.002 0.002 ↓ 0.0 0 5

Parallel Seq Scan on event_page_ace8b421_634f_4060_9118_ffc36db704dc o (cost=0.00..0.00 rows=1 width=82) (actual time=0.002..0.002 rows=0 loops=5)

  • Filter: ((timestamp_ >= '2019-02-06 07:00:00'::timestamp without time zone) AND (timestamp_ <= '2019-04-08 05:59:59.999'::timestamp without time zone) AND ((location_host)::text ~~ '2018.hrblockonline.ca'::text) AND ((location_path)::text ~~ '/'::text) AND ((location_fragment)::text ~~ '/prepare/your-year/introduction'::text))
7. 162,620.888 162,620.888 ↓ 1.6 36,596 5

Parallel Index Only Scan using ep_ace8b421_634f_4060_9118_ffc36db704dc_2019_2_location on event_page_ace8b421_634f_4060_9118_ffc36db704dc_2019_2 o_1 (cost=0.81..297,434.63 rows=23,323 width=38) (actual time=12.256..162,620.888 rows=36,596 loops=5)

  • Index Cond: ((location_host = '2018.hrblockonline.ca'::text) AND (location_path = '/'::text) AND (location_fragment = '/prepare/your-year/introduction'::text) AND (timestamp_ >= '2019-02-06 07:00:00'::timestamp without time zone) AND (timestamp_ <= '2019-04-08 05:59:59.999'::timestamp without time zone))
  • Filter: (((location_host)::text ~~ '2018.hrblockonline.ca'::text) AND ((location_path)::text ~~ '/'::text) AND ((location_fragment)::text ~~ '/prepare/your-year/introduction'::text))
  • Heap Fetches: 94
  • Buffers: shared hit=2510 read=230675 dirtied=3
8. 321,830.510 321,830.510 ↓ 1.4 79,831 5

Parallel Index Only Scan using ep_ace8b421_634f_4060_9118_ffc36db704dc_2019_3_location on event_page_ace8b421_634f_4060_9118_ffc36db704dc_2019_3 o_2 (cost=0.81..646,934.70 rows=57,122 width=38) (actual time=7.128..321,830.510 rows=79,831 loops=5)

  • Index Cond: ((location_host = '2018.hrblockonline.ca'::text) AND (location_path = '/'::text) AND (location_fragment = '/prepare/your-year/introduction'::text) AND (timestamp_ >= '2019-02-06 07:00:00'::timestamp without time zone) AND (timestamp_ <= '2019-04-08 05:59:59.999'::timestamp without time zone))
  • Filter: (((location_host)::text ~~ '2018.hrblockonline.ca'::text) AND ((location_path)::text ~~ '/'::text) AND ((location_fragment)::text ~~ '/prepare/your-year/introduction'::text))
  • Heap Fetches: 245
  • Buffers: shared hit=7716 read=481693 dirtied=5
9. 75,351.874 75,351.874 ↓ 1.4 14,847 5

Parallel Index Only Scan using ep_ace8b421_634f_4060_9118_ffc36db704dc_2019_4_location on event_page_ace8b421_634f_4060_9118_ffc36db704dc_2019_4 o_3 (cost=0.81..155,097.18 rows=10,534 width=38) (actual time=9.566..75,351.874 rows=14,847 loops=5)

  • Index Cond: ((location_host = '2018.hrblockonline.ca'::text) AND (location_path = '/'::text) AND (location_fragment = '/prepare/your-year/introduction'::text) AND (timestamp_ >= '2019-02-06 07:00:00'::timestamp without time zone) AND (timestamp_ <= '2019-04-08 05:59:59.999'::timestamp without time zone))
  • Filter: (((location_host)::text ~~ '2018.hrblockonline.ca'::text) AND ((location_path)::text ~~ '/'::text) AND ((location_fragment)::text ~~ '/prepare/your-year/introduction'::text))
  • Heap Fetches: 25
  • Buffers: shared hit=3548 read=112872
10. 0.080 0.080 ↑ 1.0 1 656,370

Index Scan using session_ace8b421_634f_4060_9118_ffc36db704dc__pid_ts on session_ace8b421_634f_4060_9118_ffc36db704dc s (cost=0.56..1.91 rows=1 width=59) (actual time=0.077..0.080 rows=1 loops=656,370)

  • Index Cond: ((o.person_id = person_id) AND (first_seen >= '2019-02-06 07:00:00'::timestamp without time zone) AND (first_seen <= '2019-04-08 05:59:59.999'::timestamp without time zone))
  • Filter: ((o.session_id)::text = (session_id)::text)
  • Rows Removed by Filter: 4
  • Buffers: shared hit=5667919 read=94655 dirtied=14