[erlang-questions] MySQL cluster - MnesiaXXL

Yariv Sadan <>
Mon Oct 23 18:44:16 CEST 2006

On 10/22/06, Pat e <> wrote:
> After all is it wise to gamble (i know all of you will say it isn't :)
> a site reputation and speed when all Mnesia sh#t blows up into your
> face... but we need real time, and that is where Mnesia it seems
> shines!
> Why real time... well lets say you want AJAX tech implemented for all
> future 5 million users, with all of them contacting each other RT, and
> not have single glitch in delivery time and reliability (well
> something like big phone switch operator), and also have for the ease
> of use (LOL :) have user data on Mnesia disk tables ;)

I disagree :)

I know what you're thinking:

MySQL = database
Mnesia = database
MySQL + Mnesia = 2 databases = SCARY

However, this changes greatly when you change your thinking so that

Mnesia = cache
MySQL + Mnesia = database + cache = "easy, and everyone is doing it"

(in fact, I believe I've heard of some popular hack called memcachd, no ? :) )

To build your app, all you need besides MySQL is one Mnesia table that
holds {Node, UserId} tuples. When user A send tries to send a message
to user B, you look up the tuple where UserId == B and then you go

Node ! {msg, A, B, Msg}

That's it. If you want to render HTML pages that display large amounts
of data such as user profiles, etc, you user ErlyDB to write the
horriby complex expression


That's all there is to it.

At least, that's my take on the problem (without knowing much about
what the problem is) :)

> I know I'm boring, and that you talked about it many times, but if you
> don't try - you don't fly (and if you fly, you can also dive easily
> :=).

And if you are going to fly, use a plane instead of hacking yourself a
pair of wings :)


More information about the erlang-questions mailing list