[erlang-questions] Need advice on how to design a tagging web service

Ulf Wiger ulf@REDACTED
Thu Sep 14 17:24:05 CEST 2006


Den 2006-09-14 15:56:37 skrev Christian S <chsu79@REDACTED>:

> No one-to-one mapping of erlang types to database types and no
> distribution of the database across several nodes (well, ihear mysql has  
> (read only?) replication).

MySQL Cluster has more than read-only replication. It may
well be the fastest cluster database out there.

I don't know of anyone who's used MySQL Cluster together
with Erlang. It uses the standard MySQL Server front-end,
so it shouldn't be _that_ difficult.

The tight integration with Erlang is of course the
main advantage with Mnesia. You can also get really
fast access times with simple reads and writes on
ram-based tables. Mnesia transactions start at around
2-300 usec on a modern machine. I can't imagine that
you can get even close to that if you have to travel
by socket or pipe through an SQL parser in order to
get to an external database. Also, with mnesia, you
can "cheat" and use dirty reads (and even 'ets' reads).
This will give you access to data within tens of
microseconds - which is impossible to match with
any storage solution outside of erlang (at least in
a UNIX or Win32 environment).

Where an external DBMS beats mnesia hands-down is
(1) really large datasets, (2) ad-hoc queries,
(3) making the data available also to non-Erlang
apps (like Excel), and (4) ubiquity.

BR,
Ulf W
-- 
Ulf Wiger



More information about the erlang-questions mailing list