[erlang-questions] 1000+ users; 30+ data tables/user

Lloyd R. Prentice <>
Wed Nov 5 03:49:31 CET 2014


Hello,

This is a naive question reflecting my inexperience with databases.

I'm planning to offer my users a set of management/planning tools. Each user would be storing/retrieving user-specific data involving as many as 30 data tables.

--- Data fits well into Erlang records. 
--- We're not talking huge volumes of data per user.  
--- Nor do I expect much data analysis. 
---  Data integrity and availability are essential. 
--- Users may, however, wish to bundle up their data a some point and migrate to a different system.

I'm attracted to mnesia because of it's it's tight integration with Erlang and it's replication features. I'm also considering riak.

My first thought was that every user would own his/her own database. But this seems to rule out   
mnesia since:

"Mnesia is a truly distributed DBMS and the schema is a system table that is replicated on all nodes in a Mnesia system. The function will fail if a schema is already present on any of the nodes in NodeList."
http://www.erlang.org/doc/apps/mnesia/Mnesia_chap3.html

An option would be to store data for all users in each of the 30 tables. But is there a better solution altogether?

I'd much appreciate suggestions and guidance from wiser heads.

Many thanks.

LRP

Sent from my iPad


More information about the erlang-questions mailing list