explain.depesz.com

PostgreSQL's explain analyze made readable

Result: swfj

Settings
# exclusive inclusive rows x rows loops node
1. 34.692 167.416 ↑ 1.0 1 1

Aggregate (cost=22,576.63..22,576.64 rows=1 width=8) (actual time=167.416..167.416 rows=1 loops=1)

2. 10.327 132.724 ↓ 5.8 69,129 1

Gather (cost=1,281.61..22,546.80 rows=11,934 width=16) (actual time=2.189..132.724 rows=69,129 loops=1)

  • Workers Planned: 1
  • Workers Launched: 1
3. 10.687 122.397 ↓ 4.9 34,564 2 / 2

Hash Anti Join (cost=281.61..20,353.40 rows=7,020 width=16) (actual time=1.707..122.397 rows=34,564 loops=2)

  • Hash Cond: ((api_rule.id = u0.rule_id) AND (api_currentreport.system_uuid = u0.system_uuid))
4. 26.833 111.657 ↓ 4.9 34,564 2 / 2

Hash Join (cost=274.90..20,239.62 rows=7,020 width=20) (actual time=1.612..111.657 rows=34,564 loops=2)

  • Hash Cond: (api_currentreport.rule_id = api_rule.id)
5. 20.826 83.340 ↓ 9.3 113,064 2 / 2

Nested Loop (cost=0.86..19,849.87 rows=12,144 width=20) (actual time=0.063..83.340 rows=113,064 loops=2)

6. 4.152 4.152 ↓ 2.2 9,727 2 / 2

Parallel Index Only Scan using api_host_account_system_uuid_stale_warn_at_index on api_host (cost=0.43..1,019.93 rows=4,346 width=16) (actual time=0.039..4.152 rows=9,727 loops=2)

  • Index Cond: ((account = '729650'::text) AND (stale_warn_at > '2020-05-16 16:16:47.586377+00'::timestamp with time zone))
  • Heap Fetches: 0
7. 58.362 58.362 ↑ 1.3 12 19,454 / 2

Index Only Scan using curreport_system_uuid_rule_id on api_currentreport (cost=0.43..4.17 rows=16 width=20) (actual time=0.004..0.006 rows=12 loops=19,454)

  • Index Cond: (system_uuid = api_host.system_uuid)
  • Heap Fetches: 0
8. 0.176 1.484 ↑ 1.1 696 2 / 2

Hash (cost=264.81..264.81 rows=738 width=4) (actual time=1.484..1.484 rows=696 loops=2)

  • Buckets: 1024 Batches: 1 Memory Usage: 33kB
9. 0.288 1.308 ↑ 1.1 696 2 / 2

Hash Anti Join (cost=28.18..264.81 rows=738 width=4) (actual time=0.277..1.308 rows=696 loops=2)

  • Hash Cond: (api_rule.id = api_ack.rule_id)
10. 0.764 0.764 ↑ 1.0 1,018 2 / 2

Seq Scan on api_rule (cost=0.00..215.77 rows=1,018 width=4) (actual time=0.014..0.764 rows=1,018 loops=2)

  • Filter: active
  • Rows Removed by Filter: 259
11. 0.065 0.256 ↑ 1.0 351 2 / 2

Hash (cost=23.79..23.79 rows=351 width=4) (actual time=0.256..0.256 rows=351 loops=2)

  • Buckets: 1024 Batches: 1 Memory Usage: 21kB
12. 0.191 0.191 ↑ 1.0 351 2 / 2

Seq Scan on api_ack (cost=0.00..23.79 rows=351 width=4) (actual time=0.008..0.191 rows=351 loops=2)

  • Filter: ((account)::text = '729650'::text)
  • Rows Removed by Filter: 752
13. 0.000 0.053 ↓ 0.0 0 2 / 2

Hash (cost=6.69..6.69 rows=2 width=20) (actual time=0.053..0.053 rows=0 loops=2)

  • Buckets: 1024 Batches: 1 Memory Usage: 8kB
14. 0.053 0.053 ↓ 0.0 0 2 / 2

Seq Scan on api_hostack u0 (cost=0.00..6.69 rows=2 width=20) (actual time=0.053..0.053 rows=0 loops=2)

  • Filter: ((account)::text = '729650'::text)
  • Rows Removed by Filter: 215
Planning time : 1.967 ms
Execution time : 167.560 ms