explain.depesz.com

PostgreSQL's explain analyze made readable

Result: XIBgO : Sub-query

Settings

Optimization(s) for this plan:

# exclusive inclusive rows x rows loops node
1. 84,961.586 171,061.817 ↓ 0.0 0 1

Update on stuff.interface_events (cost=0.00..69,058,074.84 rows=30,000,144 width=14) (actual time=171,061.817..171,061.817 rows=0 loops=1)

  • Buffers: shared hit=150605610 read=220907 dirtied=264349 written=3321
  • I/O Timings: read=1202.075 write=49.570
2. 26,100.231 86,100.231 ↑ 1.0 30,000,000 1

Seq Scan on stuff.interface_events (cost=0.00..69,058,074.84 rows=30,000,144 width=14) (actual time=0.078..86,100.231 rows=30,000,000 loops=1)

  • Output: interface_events.device_id, (SubPlan 1), interface_events.ctid
  • Buffers: shared hit=90207403 read=88131 written=2386
  • I/O Timings: read=1201.680 write=36.850
3.          

SubPlan (forSeq Scan)

4. 60,000.000 60,000.000 ↑ 1.0 1 30,000,000

Index Scan using device_pkey on stuff.device (cost=0.29..2.30 rows=1 width=4) (actual time=0.002..0.002 rows=1 loops=30,000,000)

  • Output: device.interface_id
  • Index Cond: (device.id = interface_events.device_id)
  • Buffers: shared hit=90162696 read=94
  • I/O Timings: read=0.822
Planning time : 0.077 ms
Execution time : 171,061.848 ms