Re: MogileFS limits...

2008-04-12 Thread mike
On 4/12/08, dormando [EMAIL PROTECTED] wrote:

 The trackers support internally using memcached to cache paths, but most
 folks use external patch caching:

 1) cache paths returned from the tracker in memcached, fetch from app (don't
 have to talk to tracker at all for a cache hit)

That'd be even easier... the app level should go to the
perlbal/reverse proxy box, NOT directly to the mogstored server,
right? and I'm just caching the path, and the proxy is the frontend to
the mogstoreds?

 You need something with reverse proxy redirection (I guess nginx does this?)
 in front of your whole kit. So your app/whatever returns paths to
 perlbal/nginx/whatever and will serve up the actual file from mogilefs.

The reverse proxy is meant to be the layer of abstraction in front of
all the individual mogstored's, right? and the bonus of perlbal is it
will retry the backend(s) until it finds one and was designed to
return a file hopefully no matter what is down...

If that's not right I think I'm missing a key concept here. Doesn't
help I'm running all of this on the same machine at home to test :)

  i am looking into suggesting and trying to get development started (if
  it makes sense) for a mogilefs-aware plugin to nginx. something like
  the X-Sendfile header  in Lighty (or X-Accel-Redirect in nginx
  already) but you can give it a mogilefs key instead... feed the file
  directly to the webserver and release PHP/etc. from it (just like
  X-Sendfile stuff does for normal files...)

 Yup, same idea as the default perlbal stuff. Kinda.

Is there a C api for mogilefs? Probably quite simple, I guess I only
need a GET style request for it. I don't know what is required (is it
up to the client to first ask the tracker, get the location, then
contact the location...?)

Just looking to get the C code for MogileFS access so I can try to pay
someone (read: motivate) to get the nginx module going. I don't know C
well enough, I would try to hack it but I would have no idea if it was
even done right, and I don't know enough to debug it properly :)


Re: MogileFS limits...

2008-04-12 Thread mike
On 4/12/08, Nathan Schmidt [EMAIL PROTECTED] wrote:
 Dormando,

 The most intense performance hits for us have come from losing storage
 nodes and the resulting rebalance operations putting a lot of
 read/write load on the tables. Worst case we've seen was almost 20
 hours of thrashing. Not really user-affecting but it did peg a lot of
 ops charts.

 We're far from optimal - using UTF-8 collations/charsets which seems
 to unconditionally add a great deal of overhead to index sizes. Our

maybe i'm missing something - why do we need utf-8 if none of the
filenames are going to be utf-8? that could be a decent savings right
there.

 initial bring-up was on a clean debian box so we went with MyISAM,
 which does have its problems - index corruption, O(n) repairs, ugh.
 Functional but non-optimal. Good point about the optimize table
 routine, we probably haven't done that for a while.

I wonder how CouchDB or something like that would work as a backend.
It might possibly be able to replace MogileFS completely, if I
understood a presentation correctly. They said it could store
documents of any size but I have no clue how efficient etc. I just
like CouchDB because it was designed from the beginning for automatic
replication, self-healing, etc.