explain.depesz.com

PostgreSQL's explain analyze made readable

Result: hkFfd

Settings
# exclusive inclusive rows x rows loops node
1. 37.562 171.018 ↑ 1.0 1 1

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

2. 10.107 133.456 ↓ 5.8 69,129 1

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

  • Workers Planned: 1
  • Workers Launched: 1
3. 10.791 123.349 ↓ 4.9 34,564 2 / 2

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

  • Hash Cond: ((api_rule.id = ah.rule_id) AND (api_currentreport.system_uuid = ah.system_uuid))
4. 26.839 112.477 ↓ 4.9 34,564 2 / 2

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

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

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

6. 4.227 4.227 ↓ 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.043..4.227 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.207 1.782 ↑ 1.1 696 2 / 2

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

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

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

  • Hash Cond: (api_rule.id = api_ack.rule_id)
10. 0.882 0.882 ↑ 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.882 rows=1,018 loops=2)

  • Filter: active
  • Rows Removed by Filter: 259
11. 0.095 0.350 ↑ 1.0 351 2 / 2

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

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

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

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

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

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

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

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