How do you implement a parallel algorithm for a software which needs to
be streamed to tapes?
How do you ensure that you have the capability to be able to tune the
level of parallelism for varying input and output devices and varying
levels of load?
These were some of the questions that we needed to answer when we were
trying to implement multi-threading capability for MySQL Enterprise
The trivial way of achieving parallelism is by having the multiple
threads pick up the different files (in a file per table) scenario. But
this did not seem adequate because:
a) The sizes of these files (corresponding to the tables) could be
different and then one large file would limit the level of parallelism
since it would be processed by a single thread.
b) If you have to stream the backup how do you reconcile these [Read more...]