This sort of thing is also the goal of Datacrypt & Hitchhiker trees 
(https://github.com/datacrypt-project/hitchhiker-tree), which are designed 
to be highly optimized for I/O.

We've been making progress on the GC and adding new backends--it would be 
awesome to be able add a CLJS port too :)

Best,
David

On Thursday, September 8, 2016 at 4:28:08 PM UTC-6, Christian Weilbach 
wrote:
>
> Hi, 
>
> I have started some explorations for durable persitent indices in a 
> cross-platform fashion, that I wanted to for quite some time now. There 
> are some other implementations of persistent datastructures with 
> synchronous IO on the JVM, but I would like to go a step further and 
> generalize over any key-value store like medium. I am primarily 
> interested in critique and references to other work or experience 
> implementing efficient indices on disk. In the longer run I want to use 
> these indices as a building block for databases in Clojure(Script). 
>
> https://github.com/replikativ/durable-persistence 
>
> From the README: 
>
> This repository is for exploration of persistent datastructures on a 
> durable medium. The durable medium is abstracted away by a minimalistic 
> key-value protocol providing atomic operations (ACID) on single keys. 
> This decouples the implementation of the persistent datastructure from 
> the host and backend store. 
>
> The repository contains an adaptation of the cookbook in-memory version 
> of a red black tree. Instead of keeping all fragments in memory we 
> introduce a Reference type to fragments in the store and dynamically 
> load and store fragments. The root can be assigned to a fixed key, 
> modelling a durable identity similar to a Clojure atom. 
>
> The long term motivation is to provide efficient indices as a building 
> block for datatype management independent of JVM IO libraries spanning 
> also to ClojureScript and the Browser. With konserve an IndexedDB 
> storage backend for the Browser already exists. For this reason IO 
> should happen asynchronously through core.async in konserve. A durable 
> Index for DataScript would be nice :). 
>
>
> Feedback is appreciated :), 
> Christian 
>
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to