On Tue, Mar 23, 2010 at 8:49 AM, MARK CALLAGHAN <mdcal...@gmail.com> wrote:

> On Tue, Mar 23, 2010 at 8:15 AM, Jeremy Zawodny <jer...@zawodny.com>
> wrote:
> > Mark,
> >
>
> Facebook changes are described in
> http://www.facebook.com/note.php?note_id=23844338919. Alas it doesn't
> use a generic memcache interface internally so it won't be useful to
> others.
>

Gotcha.  The theory I like anyway.  We have too many processes the have to
fetch the ids of recently changed rows from the database.  In reality we
need a queuing system.  In practice that's harder than I'd like to get in
place, so the DB is the source of truth for too many things.


> >> Are your slaves IO bound? If so, have you tried mk-slave-prefetch? I
> >> think it can fix the replication lag problems for IO bound slaves. It
> >> needs more people to test and use it. It can be used right now.
> >
> > I actually did use mk-slave-prefetch a year or so ago but ended up
> proving
> > to myself that we were not I/O bound in the worst case.  We were then
> (and
> > still currently are, pending a few ALTER TABLEs) bound on index updates
> for
> > over-indexed tables in InnoDB.
>
> Is the bottleneck for those index updates CPU or IO? mk-slave-prefetch
> has recent changes to fetch in parallel and to fetch for all indexes
> on a table. For IO bound loads both of these are significant
> improvements over what it used to do.
>

It appears not to be I/O but it also doesn't appear to be CPU in many
cases.  I have not dug deeper other than to prove that as I remove the
unused and bulky indexes, the problem mostly goes away.


> >
> > I'm still trying to fix the over-indexing nightmare that pre-dates me.  I
> > should show slides at a conference sometime to illustrate the effects of
> > heavily indexed tables on replication (or general update) throughput.
> The
> > numbers shocked me at first.
>
> Off topic but do you use the Percona patch for SHOW INDEX_STATISTICS?
>

Nope.  I think this pre-dates that work to some degree.  Most of what I know
about our problem is the result of some testing and code inspection.  We
actually have a pretty good idea which indexes are used and useless.
Everytime a query fires up trying to use a useless one, things really slow
down.

As our SSD deployment continues, some of this goes away, but it's still far
from optimal.

Jeremy
_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : drizzle-discuss@lists.launchpad.net
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to