[Linux-cluster] DB Clustering Question

gwood at dragonhold.org gwood at dragonhold.org
Fri Apr 15 13:33:48 UTC 2005


> What I really want to do is parallel processing with mySQL or
> Postgresql.
This needs support at the DB level.  MySQL has a version that requires the
DB to be smaller than the amount of available memory - since the DB gets
kept in RAM of all the clustered servers (not sure if it does more than 2,
I can't afford that much memory *grin*).  Not sure about postgresql,
you'll have to check their website for cluster options.  If you're willing
to spend money on applications, there is a 3rd party addon for MySQL that
does it, but it's been a while since I looked at it, so I don't know the
details.  From memory, it intercepts queries at the TCP/IP stack layer -
all the machines have the same MAC for a virtual server as well as sharing
state data (even to the TCP/IP layer), and therefore can take over any
existing connections for running servers.  It does mean that you have all
the machines handling all the incoming network traffic which is less than
ideal.

> If I can't do that, then simply having multiple SQL servers
> share the same DB files is the next option.  Can anyone push me in the
> right direction?
This won't work, at least not without application layer support.  In the
same way that you need GFS to get multiple machines to use the same
filesystem, you'd need a similar level of support for locking & caching
within the database.

I think that Oracle have it (for their RAC product) and probably some
others too, but I don't know of anything similar in MySQL at least.

If your usage is skewed to reads rather than writes, then you could
probably do something with replication, but there are details on that on
the various websites too.

Hope this helps some,

Graham




More information about the Linux-cluster mailing list