[erlang-questions] REST interface to mnesia

Juan Jose Comellas <>
Wed Aug 31 19:54:34 CEST 2011


If you want something simple and restricted to a single node then I'd
use CouchDB. It may not be very strong on items (3) and (4), but it
does fulfill the other ones. If you end up using it I'd recommend
reading CouchDB's performance guide here:
http://guide.couchdb.org/draft/performance.html (hint: monotonic
document IDs and bulk inserts when possible will improve the
performance and used space a lot).


On Wed, Aug 31, 2011 at 1:58 PM, Joe Armstrong <> wrote:
>
> On Wed, Aug 31, 2011 at 4:09 PM, Kevin Smith <> wrote:
> > How important is queryability? Would you want to use qlc, SQL, MapReduce, or something else to write the queries?
>
> Not really. My order of priorities is:
>
> 1) Ease of install
>    "working out of the box" and "a few files" is important
>    I don't want lot's of files scattered all over the place
>    Entire database in one blob is nice (like SQLite)
>    should run forever on my machine without bothering me once installed
> 2) Easy management
>    "it just works" - nice to have a web interface.
> 3) Low storage overhead - don't be too profligate with storage
> 4) Fast (ish) key-value storage. over 5K reads/writes/sec is fine
> 5) Crash resiliant
> 6) Can be controlled via a socket interface
> 7) indexing or secondary keys
> 8) full-text indexing
> 9) Relational queries less important - I'm kind of used to Key-Value queries
>    and designing data structures round them
>
> /Joe
>
>
> >
> > --Kevin
> > On Aug 31, 2011, at 4:35 AM, Joe Armstrong wrote:
> >
> >> I want a resident Erlang database that always runs on my machine.
> >> When I boot the system it's always running (like mySQL etc.)
> >>
> >> I want to be able to access it from any programming language.
> >>
> >> What I'd like
> >>
> >>   1) You install X
> >>        X might be erlang + mnesia + REST interface to mnesia
> >>   2) X runs forever
> >>   3) You manage X create tables etc via a web interface
> >>        or via REST commands or through a native-erlang interface
> >>   4) You populate the tables via REST commands
> >>        or through a native-erlang interface
> >>
> >> /Joe
> >> _______________________________________________
> >> erlang-questions mailing list
> >> 
> >> http://erlang.org/mailman/listinfo/erlang-questions
> >
> >
> _______________________________________________
> erlang-questions mailing list
> 
> http://erlang.org/mailman/listinfo/erlang-questions



More information about the erlang-questions mailing list