Re: SELECT INTO large FKyed table is slow
От | Mark Kirkwood |
---|---|
Тема | Re: SELECT INTO large FKyed table is slow |
Дата | |
Msg-id | 4CF3522B.2050203@catalyst.net.nz обсуждение исходный текст |
Ответ на | SELECT INTO large FKyed table is slow (Mario Splivalo <mario.splivalo@megafon.hr>) |
Ответы |
Re: SELECT INTO large FKyed table is slow
|
Список | pgsql-performance |
On 29/11/10 00:46, Mario Splivalo wrote: > > This is the slow part: > INSERT INTO drones_history (sample_id, drone_id, drone_log_notice, > drone_temperature, drone_pressure) > SELECT * FROM tmpUpdate; > > For 100 rows this takes around 2 seconds. For 1000 rows this takes > around 40 seconds. For 5000 rows this takes around 5 minutes. > For 50k rows this takes around 30 minutes! Now this is where I start > lag because I get new CSV every 10 minutes or so. Have you created indexes on drones_history(sample_id) and drones_history(drone_id)? That would probably help speed up your INSERT quite a bit if you have not done so. Also it would be worthwhile for you to post the output of: EXPLAIN ANALYZE INSERT INTO drones_history (sample_id, drone_id, drone_log_notice, drone_temperature, drone_pressure) SELECT * FROM tmpUpdate; to the list, so we can see what is taking the time. Cheers Mark
В списке pgsql-performance по дате отправления: