TMyDump restore database performance
Posted: Wed 27 Jun 2018 14:53
Hello,
I need to restore a lot (150000) of database backups, lookup a value and delete the database again. I'm using TMyDump.RestoreFromFile for this in multiple threads (each thread always having its own connection and TMyDump).
With 1 thread performing the restores, I can process 0.57 fps (files per second)
With 10 threads, I get 1.07 fps.
The cpu does not seem to be the bottleneck, neither the disk (SSD) or the network.
Then I tried using 5 different mysql servers (fysical different servers in our LAN) for 10 threads. That means each mysql server gets used by 2 different threads (connections) : I only get 0.94 fps.
I don't understand why I can't get the speed up this way. The processing (restore) now is getting done on 5 different servers, so why do I still get almost the same speed? It seems like there is a local bottleneck somewhere?
I need to restore a lot (150000) of database backups, lookup a value and delete the database again. I'm using TMyDump.RestoreFromFile for this in multiple threads (each thread always having its own connection and TMyDump).
With 1 thread performing the restores, I can process 0.57 fps (files per second)
With 10 threads, I get 1.07 fps.
The cpu does not seem to be the bottleneck, neither the disk (SSD) or the network.
Then I tried using 5 different mysql servers (fysical different servers in our LAN) for 10 threads. That means each mysql server gets used by 2 different threads (connections) : I only get 0.94 fps.
I don't understand why I can't get the speed up this way. The processing (restore) now is getting done on 5 different servers, so why do I still get almost the same speed? It seems like there is a local bottleneck somewhere?