It struck me today; there is an easy way to describe MySQL's
Binary Log group commit improvements from MySQL 5.0-5.7 by using
the example of a single ferry trying to ship passengers from
point A to point B:
MySQL 5.0 Behaviour
In MySQL 5.0, the ferry will pick up the next passenger in line
from point A, and transfer them to point B. The trip between A
and B takes about 10 minutes return trip, so it's possible that
several new passengers will arrive while the ferry is in transit.
That doesn't matter; when the ferry arrives back at point A, it
will only pick up the very next passenger in line.
MySQL 5.6 Behaviour
In MySQL 5.6, the ferry will pick up all passengers from the line
at point A, and then transfer them to point B. Each time it
returns to point A to pick up new passengers, it will collect
everyone who is …[Read more]