<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<br>
<div class="moz-cite-prefix">On 11/09/2014 12:56 PM, T Ty wrote:<br>
</div>
<blockquote
cite="mid:CAJw6s2EVeePTjxvhgMaqMLyZ1nqqrOKgsT3OiWYCdcZaFXjrhA@mail.gmail.com"
type="cite">
<div dir="ltr">I usually advocate using Mnesia because any schema
you come up with you will later want some form of fault
tolerance and as Joe Armstrong keeps harping, you can't do fault
tolerance with one node.
<div><br>
</div>
<div>That said, Mnesia does not automatically split data between
tables. You have to explicitly setup fragmented tables for
it. </div>
<div><br>
</div>
<div>To control how often Mnesia dumps from RAM to disc see:</div>
<div>
<p class=""><span class="">-mnesia dc_dump_limit Number</span>.
Controls how often <span class="">disc_copies</span> tables
are dumped from memory. Tables are dumped when <span
class="">filesize(Log) > (filesize(Tab)/Dc_dump_limit)</span>.
Lower values reduces cpu overhead but increases disk space
and startup times. The default is 4.</p>
<p class=""><br>
</p>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Sun, Nov 9, 2014 at 8:00 PM, Charles
Hixson <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:charleshixsn@earthlink.net" target="_blank">charleshixsn@earthlink.net</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">I'm going
to be running on a single node, at least for the foreseeable
future, if that matters.<br>
<br>
I expect the data to grow to be too large to fit into RAM,
OTOH, only a small subset will be needed at any one time.
Also I expect active items to have frequent updates, but
most items to rarely be updated (only when a purge is
contemplated). There doesn't seem to be any way to control
the frequency with which Mnesia synchronizes to disk...but I
also don't see any information about how often it does so.
Once every few minutes wouldn't be a problem, but on every
change would be prohibitive. On the plus side, Mnesia will
automatically handle splitting the data between tables (when
the data grows too large to fit into one dets file).<br>
<br>
One way of handling the problem is to operate out of an ets
database which pulls in data as needed from various dets
files and occasionally synchronizes with them. This starts
looking complex, and Mnesia is clearly intended to solve
problems *like* this. I just can't determine that it will
handle *this* problem. If I could set the rate of
synchronization between RAM and disk, it would be the clear
best approach...but I haven't even found any documentation
on that.<br>
<br>
OTOH, I'm quite new to Erlang (I've just written one
successful program) so I could easily be missing something
that's extremely obvious to someone more experienced.<br>
<br>
Any comments or suggestions?<br>
_______________________________________________<br>
erlang-questions mailing list<br>
<a moz-do-not-send="true"
href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a><br>
<a moz-do-not-send="true"
href="http://erlang.org/mailman/listinfo/erlang-questions"
target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</body>
</html>