Step 2 in my quest to run camlistore in AWS Lambda: a key/value store based 
on DynamoDB:

https://github.com/raff/camlistore/commit/1cc9fd2b4f63b915919643d536c2d54c3e7c37b4

It seems to work (I was just able to re-index my blobs, I'll have to try 
starting from scratch) but it's a big hack, since DynamoDB doesn't support 
arbitrary "finds" (to implement the "Find(start, end)" method.

So, this implementation "knows" that blobs are named 
"sha1-{hexadecimal-string} and that some keys are prefixed with 
"something:" and "something|".

I guess I could have made it a little simpler by limiting the number of 
"partitions keys" to either the camlistore key prefix (something: or 
something|) or "sha1-", but to get a better spread of keys between the 
shards I also add the first "digit" in the hex string (that means that the 
Find method needs to do multiple queries if the starting key is in one 
shard (i.e. xxx:sha1-axxxxxxx") and the ending key is in a different shard 
(i.e. xxx:sha1-fxxxxxx).

Anyway, at some point I can try the simplified version, but for now this 
should be good enough to move to "step 3" (actually run camlistored or a 
simplified version in AWS Lambda)

-- Raffaele 

-- 
You received this message because you are subscribed to the Google Groups 
"Camlistore" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to