explain.depesz.com

PostgreSQL's explain analyze made readable

Result: mgwp

Settings
# exclusive inclusive rows x rows loops node
1. 0.047 339.953 ↓ 2.3 144 1

Subquery Scan on a (cost=102,145.02..102,154.06 rows=63 width=120) (actual time=339.236..339.953 rows=144 loops=1)

2. 0.000 339.906 ↓ 2.3 144 1

Group (cost=102,145.02..102,153.43 rows=63 width=161) (actual time=339.235..339.906 rows=144 loops=1)

  • Group Key: valid_addresses_se.street, valid_addresses_se.street_number, valid_addresses_se.extra_number, valid_addresses_se.letter, valid_addresses_se.premise, valid_addresses_se.postalcode, valid_addresses_se.locality, valid_addresses_se.locality_ix, valid_addresses_se.address_type, valid_addresses_se.uuid, valid_addresses_se.municipality_area, valid_addresses_se.street_ix
3. 0.000 345.130 ↓ 2.8 144 1

Gather Merge (cost=102,145.02..102,151.87 rows=52 width=129) (actual time=339.234..345.130 rows=144 loops=1)

  • Workers Planned: 2
  • Workers Launched: 2
4. 0.153 1,001.484 ↓ 1.8 48 3

Group (cost=101,144.99..101,145.84 rows=26 width=129) (actual time=333.773..333.828 rows=48 loops=3)

  • Group Key: valid_addresses_se.street, valid_addresses_se.street_number, valid_addresses_se.extra_number, valid_addresses_se.letter, valid_addresses_se.premise, valid_addresses_se.postalcode, valid_addresses_se.locality, valid_addresses_se.locality_ix, valid_addresses_se.address_type, valid_addresses_se.uuid, valid_addresses_se.municipality_area, valid_addresses_se.street_ix
5. 0.603 1,001.331 ↓ 1.8 48 3

Sort (cost=101,144.99..101,145.06 rows=26 width=129) (actual time=333.772..333.777 rows=48 loops=3)

  • Sort Key: valid_addresses_se.street, valid_addresses_se.street_number, valid_addresses_se.extra_number, valid_addresses_se.letter, valid_addresses_se.premise, valid_addresses_se.postalcode, valid_addresses_se.locality, valid_addresses_se.locality_ix, valid_addresses_se.address_type, valid_addresses_se.uuid, valid_addresses_se.municipality_area, valid_addresses_se.street_ix
  • Sort Method: quicksort Memory: 32kB
6. 989.419 1,000.728 ↓ 1.8 48 3

Parallel Bitmap Heap Scan on valid_addresses_se (cost=855.53..101,144.38 rows=26 width=129) (actual time=35.096..333.576 rows=48 loops=3)

  • Recheck Cond: (((locality_ix)::text = 'umeaa'::text) OR ((postalcode)::text ~~ '903%'::text))
  • Filter: (((address_type = 'NA'::bpchar) OR (address_type = 'NB'::bpchar) OR (address_type = 'NC'::bpchar)) AND (((street_ix)::text = 'sandbeckav'::text) OR (((street)::text % 'Sandbeckav'::text) AND ((levenshtein('sandbeckav'::text, lower((street)::text), 1, 1, 2) <= 3) OR (similarity('sandbeckav'::text, lower((street)::text)) >= '0.5'::double precision))) OR ((street_ix)::text = 'sandbeckavaegen'::text) OR (((street)::text % 'Sandbeckavägen'::text) AND ((levenshtein('sandbeckavägen'::text, lower((street)::text), 1, 1, 2) <= 3) OR (similarity('sandbeckavägen'::text, lower((street)::text)) >= '0.5'::double precision))) OR ((street_ix)::text = 'sandbeckavaeg'::text) OR (((street)::text % 'Sandbeckaväg'::text) AND ((levenshtein('sandbeckaväg'::text, lower((street)::text), 1, 1, 2) <= 3) OR (similarity('sandbeckaväg'::text, lower((street)::text)) >= '0.5'::double precision)))))
  • Rows Removed by Filter: 9663
  • Heap Blocks: exact=8851
7. 0.002 11.309 ↓ 0.0 0 1

BitmapOr (cost=855.53..855.53 rows=51,075 width=0) (actual time=11.309..11.309 rows=0 loops=1)

8. 6.432 6.432 ↑ 1.0 29,133 1

Bitmap Index Scan on valid_addresses_se_locality_ix_like (cost=0.00..645.45 rows=30,536 width=0) (actual time=6.432..6.432 rows=29,133 loops=1)

  • Index Cond: ((locality_ix)::text = 'umeaa'::text)
9. 4.875 4.875 ↑ 2.5 8,070 1

Bitmap Index Scan on valid_addresses_se_postalcode_gin (cost=0.00..210.05 rows=20,540 width=0) (actual time=4.875..4.875 rows=8,070 loops=1)

  • Index Cond: ((postalcode)::text ~~ '903%'::text)
Planning time : 0.781 ms