explain.depesz.com

PostgreSQL's explain analyze made readable

Result: WZcD

Settings
# exclusive inclusive rows x rows loops node
1. 2,498.018 11,441.705 ↑ 1,112.6 8 1

GroupAggregate (cost=1,299,388.09..1,450,518.71 rows=8,901 width=232) (actual time=8,327.139..11,441.705 rows=8 loops=1)

  • Group Key: (date_trunc('day'::text, to_timestamp(date_part('epoch'::text, miner_stats."time"))))
2. 2,626.459 8,943.687 ↓ 1.0 4,067,545 1

Sort (cost=1,299,388.09..1,309,415.99 rows=4,011,161 width=37) (actual time=8,304.870..8,943.687 rows=4,067,545 loops=1)

  • Sort Key: (date_trunc('day'::text, to_timestamp(date_part('epoch'::text, miner_stats."time"))))
  • Sort Method: external merge Disk: 189824kB
3. 1,932.207 6,317.228 ↓ 1.0 4,067,545 1

Result (cost=107,020.77..640,086.21 rows=4,011,161 width=37) (actual time=448.744..6,317.228 rows=4,067,545 loops=1)

4. 355.475 4,385.021 ↓ 1.0 4,067,545 1

Append (cost=107,020.77..569,890.89 rows=4,011,161 width=37) (actual time=448.731..4,385.021 rows=4,067,545 loops=1)

5. 3,570.129 4,008.093 ↓ 1.0 4,030,549 1

Bitmap Heap Scan on miner_stats (cost=107,020.77..564,165.19 rows=3,974,221 width=37) (actual time=448.730..4,008.093 rows=4,030,549 loops=1)

  • Recheck Cond: ((address)::text = 'Foundry_Luxor'::text)
  • Rows Removed by Index Recheck: 6923359
  • Filter: ("time" > (now() - '7 days'::interval))
  • Heap Blocks: exact=34681 lossy=131706
6. 437.964 437.964 ↓ 1.0 4,030,549 1

Bitmap Index Scan on m_stat_address_idx (cost=0.00..106,027.22 rows=3,974,221 width=0) (actual time=437.964..437.964 rows=4,030,549 loops=1)

  • Index Cond: ((address)::text = 'Foundry_Luxor'::text)
7. 0.010 0.010 ↓ 0.0 0 1

Seq Scan on miner_stats_1hr (cost=0.00..0.00 rows=1 width=168) (actual time=0.010..0.010 rows=0 loops=1)

  • Filter: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
8. 0.003 0.003 ↓ 0.0 0 1

Seq Scan on miner_stats_1day (cost=0.00..0.00 rows=1 width=168) (actual time=0.003..0.003 rows=0 loops=1)

  • Filter: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
9. 0.023 0.023 ↓ 0.0 0 1

Index Scan using miner_stats_1hr_03072020_address_time_idx on miner_stats_1hr_03072020 (cost=0.13..8.15 rows=1 width=168) (actual time=0.023..0.023 rows=0 loops=1)

  • Index Cond: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
10. 0.011 0.011 ↓ 0.0 0 1

Index Scan using miner_stats_1hr_03082020_address_time_idx on miner_stats_1hr_03082020 (cost=0.13..8.15 rows=1 width=168) (actual time=0.011..0.011 rows=0 loops=1)

  • Index Cond: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
11. 0.004 0.004 ↓ 0.0 0 1

Seq Scan on miner_stats_1hr_03092020 (cost=0.00..11.00 rows=1 width=168) (actual time=0.004..0.004 rows=0 loops=1)

  • Filter: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
12. 0.003 0.003 ↓ 0.0 0 1

Seq Scan on miner_stats_1hr_03102020 (cost=0.00..11.00 rows=1 width=168) (actual time=0.003..0.003 rows=0 loops=1)

  • Filter: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
13. 0.003 0.003 ↓ 0.0 0 1

Seq Scan on miner_stats_1hr_03112020 (cost=0.00..11.00 rows=1 width=168) (actual time=0.003..0.003 rows=0 loops=1)

  • Filter: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
14. 0.003 0.003 ↓ 0.0 0 1

Seq Scan on miner_stats_1hr_03122020 (cost=0.00..11.00 rows=1 width=168) (actual time=0.002..0.003 rows=0 loops=1)

  • Filter: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
15. 0.002 0.002 ↓ 0.0 0 1

Seq Scan on miner_stats_1hr_03132020 (cost=0.00..11.00 rows=1 width=168) (actual time=0.002..0.002 rows=0 loops=1)

  • Filter: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
16. 0.017 0.017 ↓ 0.0 0 1

Index Scan using miner_stats_1hr_03142020_address_time_idx on miner_stats_1hr_03142020 (cost=0.42..8.44 rows=1 width=40) (actual time=0.017..0.017 rows=0 loops=1)

  • Index Cond: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
17. 0.014 0.014 ↓ 0.0 0 1

Index Scan using miner_stats_1hr_03152020_address_time_idx on miner_stats_1hr_03152020 (cost=0.42..11.99 rows=3 width=40) (actual time=0.014..0.014 rows=0 loops=1)

  • Index Cond: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
18. 0.013 0.013 ↓ 0.0 0 1

Index Scan using miner_stats_1hr_03162020_address_time_idx on miner_stats_1hr_03162020 (cost=0.42..11.99 rows=3 width=38) (actual time=0.013..0.013 rows=0 loops=1)

  • Index Cond: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
19. 0.013 0.013 ↓ 0.0 0 1

Index Scan using miner_stats_1hr_03172020_address_time_idx on miner_stats_1hr_03172020 (cost=0.42..12.01 rows=3 width=38) (actual time=0.013..0.013 rows=0 loops=1)

  • Index Cond: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
20. 0.012 0.012 ↓ 0.0 0 1

Index Scan using miner_stats_1hr_03182020_address_time_idx on miner_stats_1hr_03182020 (cost=0.42..12.01 rows=3 width=38) (actual time=0.012..0.012 rows=0 loops=1)

  • Index Cond: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
21. 6.608 11.795 ↓ 1.0 30,151 1

Bitmap Heap Scan on miner_stats_1hr_03192020 (cost=1,096.66..3,550.10 rows=30,072 width=38) (actual time=5.268..11.795 rows=30,151 loops=1)

  • Recheck Cond: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
  • Heap Blocks: exact=563
22. 5.187 5.187 ↓ 1.0 30,151 1

Bitmap Index Scan on miner_stats_1hr_03192020_address_time_idx (cost=0.00..1,089.14 rows=30,072 width=0) (actual time=5.187..5.187 rows=30,151 loops=1)

  • Index Cond: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
23. 1.464 2.654 ↑ 1.0 6,845 1

Bitmap Heap Scan on miner_stats_1hr_03202020 (cost=250.45..770.35 rows=6,845 width=38) (actual time=1.230..2.654 rows=6,845 loops=1)

  • Recheck Cond: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
  • Heap Blocks: exact=117
24. 1.190 1.190 ↑ 1.0 6,845 1

Bitmap Index Scan on miner_stats_1hr_03202020_address_time_idx (cost=0.00..248.74 rows=6,845 width=0) (actual time=1.190..1.190 rows=6,845 loops=1)

  • Index Cond: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
25. 6.873 6.873 ↓ 0.0 0 1

Seq Scan on miner_stats_1day_032020 (cost=0.00..1,277.50 rows=1 width=42) (actual time=6.873..6.873 rows=0 loops=1)

  • Filter: (((address)::text = 'Foundry_Luxor'::text) AND ("time" > (now() - '7 days'::interval)))
  • Rows Removed by Filter: 34675
Planning time : 1.143 ms
Execution time : 11,481.912 ms