[Haskell-cafe] Amazon AWS storage best to use with Haskell?
rrnewton at gmail.com
Mon Oct 31 22:07:21 CET 2011
For distributed execution you can look at the recent work on "CloudHaskell":
As for a programming model -- Philip Trinder et. al have a version of
monad-par that works in a distributed way over CloudHaskell, likewise
CloudHaskell itself provides a simple "Task" layer.
For a NOSQL layer -- I'm looking for the answer to that same question
myself! We've been experimenting with Cassandra (used via the hscassandra
package based in turn on cassandra-thrift). Already it's clear that there
are many areas that need work. The Haskell code generated by Thrift itself
has a lot of room for improvement (for the intrepid hacker: cycles there
would be well-spent).
We haven't tried CouchDB yet. Please keep us posted on what you find.
I don't know if any one has a clean way for hooking a simple Haskell-ish
interface (e.g. Data.Map) up to a persistence layer. But it seems like
there have been a bunch of papers on "database supported haskell" and the
like. One of them must have solved this!
On Mon, Oct 31, 2011 at 4:53 PM, dokondr <dokondr at gmail.com> wrote:
> On Mon, Oct 31, 2011 at 6:50 PM, John Lenz <lenz at math.uic.edu> wrote:
>> CouchDB works great, although I decided to go with SimpleDB since then it
>> is amazon's problem to scale and allocate disk and so forth, which I like
>> better. For couchdb, you can use my package couchdb-enumerator on hackage.
>> Regarding CouchDB. So far I have my records keyed by Id and stored in
> Data.Map which I serialize to text file. Using Data.Map functions I do
> many operations with these records including mapping functions over keys
> and values, accumulation, lookup, intersection, union etc.
> When I move this data to CouchDB and start using couchdb-enumerator to
> work with it, how natural will it be to implement all these functions that
> I use from Data.Map?
> Or maybe it makes more sense to store my serialized Data.Map as a blob in
> CouchDB? And do not use views or similar CouchDB / SimpleDB interfaces at
> all? Just retrieve necessary blob and deserialize it to Data.Map, update
> and then store modified blob to CouchDB again?
> It would be great if somebody had time to implement Data.List, Data.Map,
> etc on top of generic NoSQL DB interface with specific instances for
> CouchDB, SimpleDB, etc.
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe