Does anyone have any experience they'd like to share on data sharding?

In particular working with a gem like this:

My concerns are:

1. This doesn't appear to use SQL level replication so I assume it's
doing some type of a "call-back" after the initial commit. How do those
call-backs get queued? Is the rails process going to be freed up after
all these callbacks are done or before? What happens under extremely
large volumes?

2. It's not clear to from reading the documentation if/how this can be
used for failover. In other words if the master for a particular shard
goes down does that mean that that shard becomes read-only?

3. Their readme says "When marked as replicated, all write and
transactional operations for the model go to the master, whereas read
operations go to the slave. " Which slave? Is this a good idea? what
if your slave is in Europe and your master is in NA.