explain.depesz.com

PostgreSQL's explain analyze made readable

Result: TB8f

Settings
# exclusive inclusive rows x rows loops node
1. 1.983 394.554 ↑ 11.0 796 1

Sort (cost=24,858.12..24,880.03 rows=8,763 width=204) (actual time=394.498..394.554 rows=796 loops=1)

  • Sort Key: ('all'::text), (((jsonb_each_text(contexts.features))).key), (((jsonb_each_text(contexts.features))).value)
  • Sort Method: quicksort Memory: 152kB
2. 50.719 392.571 ↑ 11.0 796 1

HashAggregate (cost=24,021.37..24,196.63 rows=8,763 width=204) (actual time=391.910..392.571 rows=796 loops=1)

  • Group Key: ('all'::text), (((jsonb_each_text(contexts.features))).key), (((jsonb_each_text(contexts.features))).value)
3. 0.000 341.852 ↓ 9.7 85,105 1

Gather (cost=5,036.08..23,889.93 rows=8,763 width=102) (actual time=56.465..341.852 rows=85,105 loops=1)

  • Workers Planned: 2
  • Workers Launched: 2
4. 5.910 356.396 ↑ 12.9 28,368 3

Result (cost=4,036.08..22,013.63 rows=365,100 width=102) (actual time=49.797..356.396 rows=28,368 loops=3)

5. 29.751 350.486 ↑ 12.9 28,368 3

ProjectSet (cost=4,036.08..16,537.13 rows=365,100 width=38) (actual time=49.793..350.486 rows=28,368 loops=3)

6. 139.306 320.735 ↑ 1.2 3,029 3

Nested Loop (cost=4,036.08..14,684.25 rows=3,651 width=249) (actual time=49.761..320.735 rows=3,029 loops=3)

7. 17.966 181.384 ↑ 1.7 3,029 3

Hash Join (cost=4,035.66..10,075.53 rows=5,058 width=82) (actual time=49.399..181.384 rows=3,029 loops=3)

  • Hash Cond: (events.guid = events_1.guid)
8. 114.176 114.176 ↑ 1.2 71,239 3

Parallel Seq Scan on events (cost=0.00..5,806.31 rows=88,971 width=44) (actual time=0.016..114.176 rows=71,239 loops=3)

  • Filter: (event = 'install'::text)
  • Rows Removed by Filter: 9453
9. 5.356 49.242 ↓ 1.0 9,087 3

Hash (cost=3,926.06..3,926.06 rows=8,768 width=38) (actual time=49.242..49.242 rows=9,087 loops=3)

  • Buckets: 16384 Batches: 1 Memory Usage: 780kB
10. 5.654 43.886 ↓ 1.0 9,087 3

HashAggregate (cost=3,750.70..3,838.38 rows=8,768 width=38) (actual time=41.873..43.886 rows=9,087 loops=3)

  • Group Key: events_1.guid
11. 38.232 38.232 ↓ 1.0 9,087 3

Index Only Scan using idx_events_filter on events events_1 (cost=0.42..3,728.54 rows=8,861 width=38) (actual time=0.232..38.232 rows=9,087 loops=3)

  • Index Cond: ((event = 'install'::text) AND (date >= '2019-11-30 03:00:00+00'::timestamp with time zone) AND (date < '2019-12-26 12:36:23+00'::timestamp with time zone))
  • Heap Fetches: 25082
12. 0.045 0.045 ↑ 1.0 1 9,087

Index Scan using contexts_pkey on contexts (cost=0.42..0.91 rows=1 width=281) (actual time=0.045..0.045 rows=1 loops=9,087)

  • Index Cond: (guid = events.guid)
Planning time : 2.268 ms
Execution time : 400.355 ms