explain.depesz.com

PostgreSQL's explain analyze made readable

Result: W26mr

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 0.000 ↓ 0.0

XN HashAggregate (cost=1,029,997,745,938.18..1,029,997,745,938.20 rows=1 width=650) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

XN Subquery Scan outer_q (cost=1,029,997,745,936.96..1,029,997,745,938.16 rows=1 width=650) (actual rows= loops=)

  • Filter: (rn = 1)
3. 0.000 0.000 ↓ 0.0

XN Window (cost=1,029,997,745,936.96..1,029,997,745,937.86 rows=24 width=155) (actual rows= loops=)

  • Partition: dim_ab_customers.amazon_account_skey, dim_ab_customers.marketplace_id
  • Order: dim_ab_customers.business_registration_date
4. 0.000 0.000 ↓ 0.0

XN Sort (cost=1,029,997,745,936.96..1,029,997,745,937.02 rows=24 width=155) (actual rows= loops=)

  • Sort Key: dim_ab_customers.amazon_account_skey, dim_ab_customers.marketplace_id, dim_ab_customers.business_registration_date
5. 0.000 0.000 ↓ 0.0

XN Network (cost=28,830,836,091.39..29,997,745,936.41 rows=24 width=155) (actual rows= loops=)

  • Distribute
6. 0.000 0.000 ↓ 0.0

XN Hash Join DS_BCAST_INNER (cost=28,830,836,091.39..29,997,745,936.41 rows=24 width=155) (actual rows= loops=)

  • Hash Cond: (("outer".amazon_account_skey = ("inner".customer_id)::numeric) AND ("outer".marketplace_id = "inner".marketplace_skey))
  • Join Filter: (("inner".comm_creation_day_lcl_skey <= (to_char("outer".effective_end_date, 'YYYYMMDD'::text))::integer) AND ("inner".comm_creation_day_lcl_skey >= (to_char("outer".effective_start_date, 'YYYYMMDD'::text))::integer) AND ("inner".comm_creation_day_utc >= trunc("outer".business_registration_date)))
7. 0.000 0.000 ↓ 0.0

XN Seq Scan on dim_ab_customers (cost=0.00..486,311.96 rows=9,610,568 width=41) (actual rows= loops=)

  • Filter: (((is_active_now)::text = 'Y'::text) AND (marketplace_id = 1) AND ((is_business_account_active)::text = 'Y'::text) AND (is_internal_business_account = 0))
8. 0.000 0.000 ↓ 0.0

XN Hash (cost=28,830,836,087.72..28,830,836,087.72 rows=734 width=146) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

XN Hash Join DS_DIST_BOTH (cost=33,355,452.39..28,830,836,087.72 rows=734 width=146) (actual rows= loops=)

  • Outer Dist Key: "outer".routing_skill_skey
  • Inner Dist Key: dcrs.routing_skill_skey
  • Hash Cond: (("outer".routing_skill_skey = "inner".routing_skill_skey) AND ("outer".marketplace_skey = "inner".marketplace_skey))
10. 0.000 0.000 ↓ 0.0

XN Hash Join DS_BCAST_INNER (cost=33,354,891.59..28,681,391,594.76 rows=3,885 width=117) (actual rows= loops=)

  • Hash Cond: ("outer".comm_id = "inner".comm_id)
11. 0.000 0.000 ↓ 0.0

XN Seq Scan on fact_hmd_na hmd (cost=0.00..3,603,291.86 rows=96,121,147 width=61) (actual rows= loops=)

  • Filter: ((comm_creation_day_utc >= '2019-01-01 00:00:00'::timestamp without time zone) AND (customer_id > 1) AND (marketplace_skey = 1) AND ((owner_agent_login)::text <> 'drone'::text) AND ((owner_agent_login)::text <> 'cs-arf'::text))
12. 0.000 0.000 ↓ 0.0

XN Hash (cost=33,354,811.68..33,354,811.68 rows=31,964 width=72) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

XN Subquery Scan ct (cost=33,354,332.22..33,354,811.68 rows=31,964 width=72) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

XN HashAggregate (cost=33,354,332.22..33,354,492.04 rows=31,964 width=24) (actual rows= loops=)

15. 0.000 0.000 ↓ 0.0

XN Seq Scan on fact_contact_skill_na (cost=0.00..32,041,757.44 rows=175,009,970 width=24) (actual rows= loops=)

  • Filter: ((comm_creation_day >= '2019-01-01 00:00:00'::timestamp without time zone) AND (customer_id > 1) AND ((direction)::text = 'Inbound'::text))
16. 0.000 0.000 ↓ 0.0

XN Hash (cost=516.65..516.65 rows=8,830 width=41) (actual rows= loops=)

17. 0.000 0.000 ↓ 0.0

XN Seq Scan on dim_cs_routing_skills dcrs (cost=0.00..516.65 rows=8,830 width=41) (actual rows= loops=)

  • Filter: ((marketplace_skey = 1) AND (cs_managed_name IS NOT NULL))