<p dir="ltr">Btrees are good for storing data on disk. And something like postgres is an extremely efficient implementation of a btree supporting atomic updates and the like. I'd use that!</p>
<div class="gmail_quote">On 6 May 2016 21:29, "Mikhail Volkhov" <<a href="mailto:volhovm.cs@gmail.com">volhovm.cs@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi!<br>
<br>
I'm using ACID package as main database -- it's simple and... ACID<br>
(which is cool of course).<br>
<br>
So now I need to store up to ~30GB of data in a single data structure<br>
(!) that will be constantly updated (some kind of a huge tree set).<br>
Here's a question -- how to operate that big structure?<br>
1. It doesn't even fit in RAM<br>
2. It should be updated atomically and frequently (every 10 seconds up<br>
to 500 elements out of 10^7).<br>
3. What structures should I use? I'd like to store up to 10^6~10^7 some<br>
simple elements there too, that will be gigabytes of data. So it seems<br>
to me I can't use Data.Set.<br>
<br>
Thanks for any ideas!<br>
--<br>
Volkhov Mikhail<br>
M3#38 ITMO study group 17'<br>
Computer Technologies Department<br>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
</blockquote></div>