explain.depesz.com

PostgreSQL's explain analyze made readable

Result: QIC2

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 26,726.287 ↑ 1.0 1 1

Finalize Aggregate (cost=6,715,071.85..6,715,071.86 rows=1 width=8) (actual time=26,726.286..26,726.287 rows=1 loops=1)

  • Output: count(*)
  • Buffers: shared hit=1,671,949 read=3,150,394, temp read=500,929 written=504,220
  • I/O Timings: read=5,998.643
2. 673.385 27,391.673 ↓ 1.5 3 1

Gather (cost=6,715,071.63..6,715,071.84 rows=2 width=8) (actual time=26,724.023..27,391.673 rows=3 loops=1)

  • Output: (PARTIAL count(*))
  • Workers Planned: 2
  • Workers Launched: 2
  • Buffers: shared hit=1,671,949 read=3,150,394, temp read=500,929 written=504,220
  • I/O Timings: read=5,998.643
3. 1,179.654 26,718.288 ↑ 1.0 1 3 / 3

Partial Aggregate (cost=6,714,071.63..6,714,071.64 rows=1 width=8) (actual time=26,718.288..26,718.288 rows=1 loops=3)

  • Output: PARTIAL count(*)
  • Buffers: shared hit=1,671,949 read=3,150,394, temp read=500,929 written=504,220
  • I/O Timings: read=5,998.643
  • Worker 0: actual time=26,714.892..26714.892 rows=1 loops=1
  • Buffers: shared hit=528,372 read=1,049,737, temp read=168,491 written=166,036
  • I/O Timings: read=1,996.481
  • Worker 1: actual time=26,716.514..26716.514 rows=1 loops=1
  • Buffers: shared hit=517,618 read=1,047,080, temp read=168,419 written=165,744
  • I/O Timings: read=1,995.798
4. 12,670.349 25,538.634 ↑ 1.3 28,411,014 3 / 3

Parallel Hash Join (cost=4,947,343.57..6,625,280.38 rows=35,516,500 width=0) (actual time=16,744.169..25,538.634 rows=28,411,014 loops=3)

  • Inner Unique: true
  • Hash Cond: (s.id_ref_parcel_fk = p.id)
  • Buffers: shared hit=1,671,949 read=3,150,394, temp read=500,929 written=504,220
  • I/O Timings: read=5,998.643
  • Worker 0: actual time=16,746.726..25550.196 rows=28,637,507 loops=1
  • Buffers: shared hit=528,372 read=1,049,737, temp read=168,491 written=166,036
  • I/O Timings: read=1,996.481
  • Worker 1: actual time=16,748.087..25553.465 rows=28,631,313 loops=1
  • Buffers: shared hit=517,618 read=1,047,080, temp read=168,419 written=165,744
  • I/O Timings: read=1,995.798
5. 3,070.581 3,070.581 ↑ 1.3 28,411,014 3 / 3

Parallel Seq Scan on public.parcel_surface s (cost=0.00..1,168,417.00 rows=35,516,500 width=4) (actual time=0.023..3,070.581 rows=28,411,014 loops=3)

  • Output: s.id_ref_parcel_fk
  • Buffers: shared hit=5,697 read=807,555
  • I/O Timings: read=1,591.423
  • Worker 0: actual time=0.023..3074.875 rows=28,356,492 loops=1
  • Buffers: shared hit=1,911 read=268,652
  • I/O Timings: read=529.403
  • Worker 1: actual time=0.023..3078.901 rows=28,346,077 loops=1
  • Buffers: shared hit=1,913 read=268,554
  • I/O Timings: read=530.441
6. 4,328.678 9,797.704 ↑ 1.3 28,411,014 3 / 3

Parallel Hash (cost=4,364,321.03..4,364,321.03 rows=35,536,603 width=4) (actual time=9,797.704..9,797.704 rows=28,411,014 loops=3)

  • Output: p.id
  • Buckets: 524,288 Batches: 512 Memory Usage: 10,656kB
  • Buffers: shared hit=1,666,116 read=2,342,839, temp written=251,876
  • I/O Timings: read=4,407.220
  • Worker 0: actual time=9,796.413..9796.413 rows=27,806,274 loops=1
  • Buffers: shared hit=526,393 read=781,085, temp written=82,024
  • I/O Timings: read=1,467.077
  • Worker 1: actual time=9,798.056..9798.056 rows=27,539,950 loops=1
  • Buffers: shared hit=515,637 read=778,526, temp written=81,752
  • I/O Timings: read=1,465.357
7. 5,469.026 5,469.026 ↑ 1.3 28,411,014 3 / 3

Parallel Seq Scan on public.parcel p (cost=0.00..4,364,321.03 rows=35,536,603 width=4) (actual time=0.028..5,469.026 rows=28,411,014 loops=3)

  • Output: p.id
  • Buffers: shared hit=1,666,116 read=2,342,839
  • I/O Timings: read=4,407.220
  • Worker 0: actual time=0.033..5536.452 rows=27,806,274 loops=1
  • Buffers: shared hit=526,393 read=781,085
  • I/O Timings: read=1,467.077
  • Worker 1: actual time=0.040..5551.103 rows=27,539,950 loops=1
  • Buffers: shared hit=515,637 read=778,526
  • I/O Timings: read=1,465.357
Planning time : 0.408 ms
Execution time : 27,391.897 ms