<div dir="ltr">Would you mind sharing the result of your research with the mailing list once you're done?</div><br><div class="gmail_quote"><div dir="ltr">On Sat, Dec 24, 2016 at 4:50 PM Ovidiu Deac <<a href="mailto:ovidiudeac@gmail.com">ovidiudeac@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg"><div class="gmail_msg"></div><div class="gmail_msg">I'll do some research to evaluate my options. So far I have:<br class="gmail_msg"><br class="gmail_msg">Homegrown implementation on top of some DB (Riak/Postgres/Mongo...)<br class="gmail_msg"><a href="https://github.com/agentm/project-m36" class="gmail_msg" target="_blank">https://github.com/agentm/project-m36</a><br class="gmail_msg"><a href="https://hackage.haskell.org/package/filestore" class="gmail_msg" target="_blank">https://hackage.haskell.org/package/filestore</a><br class="gmail_msg"></div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_extra gmail_msg"><div class="gmail_quote gmail_msg">Thanks for the answers!</div></div></div><div dir="ltr" class="gmail_msg"><div class="gmail_extra gmail_msg"><div class="gmail_quote gmail_msg"><br class="gmail_msg"><br class="gmail_msg">On Fri, Dec 23, 2016 at 8:07 PM, Ertugrul Söylemez <span dir="ltr" class="gmail_msg"><<a href="mailto:esz@posteo.de" class="gmail_msg" target="_blank">esz@posteo.de</a>></span> wrote:<br class="gmail_msg"></div></div></div><div dir="ltr" class="gmail_msg"><div class="gmail_extra gmail_msg"><div class="gmail_quote gmail_msg"><blockquote class="gmail_quote gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="gmail_msg">>> * Another option is to run an insertion-only relational model on<br class="gmail_msg">
>> really any database system you want like PostgreSQL. There is<br class="gmail_msg">
>> nothing about preserving history that needs special handling to be<br class="gmail_msg">
>> efficient.<br class="gmail_msg">
><br class="gmail_msg">
> I assume that some sort of structural sharing is needed once the<br class="gmail_msg">
> collections grow above a certain size. Also some support for caching<br class="gmail_msg">
> would be nice.<br class="gmail_msg">
<br class="gmail_msg">
</span></blockquote></div></div></div><div dir="ltr" class="gmail_msg"><div class="gmail_extra gmail_msg"><div class="gmail_quote gmail_msg"><blockquote class="gmail_quote gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="gmail_msg"></span>Yeah, sharing could improve disk usage and cache utilisation. I'm not<br class="gmail_msg">
aware of any DBMS-side sharing features in systems I have used<br class="gmail_msg">
(PostgreSQL and SQLite mainly). The usual way to get sharing in<br class="gmail_msg">
relational systems is to normalise the schema. That also allows you to<br class="gmail_msg">
use domain-specific knowledge to get even better sharing.<br class="gmail_msg">
<br class="gmail_msg">
Caching is of course supported, at least by PostgreSQL. It aims to keep<br class="gmail_msg">
as much of the database in memory as possible (or as you tell it to).<br class="gmail_msg">
</blockquote></div><br class="gmail_msg"></div></div>
_______________________________________________<br class="gmail_msg">
Haskell-Cafe mailing list<br class="gmail_msg">
To (un)subscribe, modify options or view archives go to:<br class="gmail_msg">
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer" class="gmail_msg" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br class="gmail_msg">
Only members subscribed via the mailman list are allowed to post.</blockquote></div>