explain.depesz.com

PostgreSQL's explain analyze made readable

Result: gEDOo

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 7,912.628 ↑ 1.0 100 1

Limit (cost=1,001.01..3,612.65 rows=100 width=216) (actual time=7,889.532..7,912.628 rows=100 loops=1)

2. 13.583 7,919.360 ↑ 1,051.7 100 1

Gather Merge (cost=1,001.01..2,747,686.77 rows=105,171 width=216) (actual time=7,889.531..7,919.360 rows=100 loops=1)

  • Workers Planned: 2
  • Workers Launched: 2
3. 144.954 7,905.777 ↑ 1,252.0 35 3 / 3

Nested Loop Semi Join (cost=0.99..2,734,547.40 rows=43,821 width=216) (actual time=7,846.385..7,905.777 rows=35 loops=3)

4. 473.493 473.493 ↑ 3.1 809,703 3 / 3

Parallel Index Scan using entity_created_idx on entity (cost=0.43..901,138.18 rows=2,478,498 width=216) (actual time=0.185..473.493 rows=809,703 loops=3)

  • Filter: ((type_string)::text = 'FACTUAL_REPORT'::text)
  • Rows Removed by Filter: 12,150
5. 7,287.330 7,287.330 ↓ 0.0 0 2,429,110 / 3

Index Scan using entity_category_entity_id_idx on entity_category (cost=0.56..0.74 rows=1 width=25) (actual time=0.009..0.009 rows=0 loops=2,429,110)

  • Index Cond: ((entity_id)::text = (entity.id)::text)
  • Filter: ((category_id)::text = ANY ('{5a6889a6ca1a696a3caa2a40,5ed776a6b6c7257a148a5669}'::text[]))
  • Rows Removed by Filter: 1