explain.depesz.com

PostgreSQL's explain analyze made readable

Result: wPSa

Settings
# exclusive inclusive rows x rows loops node
1. 5,116.648 214,666.280 ↓ 3.4 13,696,707 1

Gather (cost=1,002.30..10,830,955.39 rows=4,044,650 width=386) (actual time=6.766..214,666.280 rows=13,696,707 loops=1)

  • Workers Planned: 4
  • Workers Launched: 4
2. 1,251.252 209,549.632 ↓ 2.7 2,739,341 5 / 5

Hash Join (cost=2.30..10,425,490.39 rows=1,011,162 width=386) (actual time=1.950..209,549.632 rows=2,739,341 loops=5)

  • Hash Cond: (plaza_transactions.service_provider_id = service_providers.id)
3. 2,940.008 208,298.346 ↓ 2.7 2,739,341 5 / 5

Nested Loop (cost=1.15..10,421,227.90 rows=1,011,162 width=386) (actual time=1.702..208,298.346 rows=2,739,341 loops=5)

4. 98,351.776 98,351.776 ↓ 1.9 2,743,758 5 / 5

Parallel Index Scan using idx_plaza_transactions_dt_id on plaza_transactions (cost=0.57..6,619,062.50 rows=1,421,703 width=386) (actual time=0.758..98,351.776 rows=2,743,758 loops=5)

  • Index Cond: ((dt >= '2019-10-31 21:00:00+00'::timestamp with time zone) AND (dt <= '2020-02-13 20:59:59+00'::timestamp with time zone) AND (id IS NOT NULL))
  • Filter: ((deleted_at IS NULL) AND (plaza_transaction_status_id <> ALL ('{10,11,12}'::integer[])) AND (vehicle_class_id = ANY ('{1,2,3}'::integer[])) AND (payment_type_id = ANY ('{2,5,6,7,17}'::integer[])) AND (plaza_transaction_status_id = ANY ('{1,2,4,3,5,7}'::integer[])))
  • Rows Removed by Filter: 1776356
5. 107,006.562 107,006.562 ↑ 1.0 1 13,718,790 / 5

Index Scan using plaza_raw_transactions_pkey on plaza_raw_transactions (cost=0.57..2.67 rows=1 width=8) (actual time=0.039..0.039 rows=1 loops=13,718,790)

  • Index Cond: (id = plaza_transactions.plaza_raw_transaction_id)
  • Filter: (vehicle_class = ANY ('{1,2,3}'::bigint[]))
  • Rows Removed by Filter: 0
6. 0.034 0.034 ↓ 1.1 8 5 / 5

Hash (cost=1.07..1.07 rows=7 width=2) (actual time=0.034..0.034 rows=8 loops=5)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB