Hacker News new | past | comments | ask | show | jobs | submit login
Riak JS Lib, with implementations for Node.js & jQuery (riakjs.org)
50 points by roder on July 23, 2010 | hide | past | favorite | 12 comments



Is Riak actually gathering steam in terms of real world production use, or is it just on gathering steam on HN!?

Serious question actually.

What's the real world use-case for this? How is security handled? If my browser was able to talk directly to my Riak cluster, all my data would be open?


Mozilla posted an article about their decision to use Riak for an analytics program.

http://blog.mozilla.com/data/2010/05/18/riak-and-cassandra-a...

In it they discuss security issues addressing riak, cassandra, and hbase.

One poster mentioned the http interface, but also there are hooks within webmachine that would allow for some authentication as well - mentioned in the article.


We use Riak and are launching a limited beta soon. Not only is the product good, but the company is fantastic. They'll call you up to chat about anything you want even if you're not a paying customer. They recently opened an office in San Francisco and in the announcement on their blog said that you can literally stop by any time to chat about Riak, or anything else interesting. Too bad we're not in SF.

Riak doesn't have authentication or authorization built-in. It is on their radar. We have a light-weight backend for that stuff which doesn't know about most of our data. It obviously has to know about users, but other than that it just serves and stores JSON.



The nice thing is that riak has an http api. If you need security you can add a proxy in front of it to do basic auth, digest, ssl... You name it.


http://en.mochimedia.com/ => they use Riak


yes, don't let your browser talk directly to the riak cluster. put riak behind nginx or something like that.


Riak.. sounds good! Is this just an implementation of Chord (http://pdos.csail.mit.edu/chord/) with a REST API?


similar ideas but afaik riak draws it's lineage directly from amazon's dynamo paper, http://en.wikipedia.org/wiki/Dynamo_(storage_system).


It does much more.

It integrates distributed MapReduce and has a sort of graph api on top of it. You can link objects together and walk the graph.


db.get('flights', 'KLM-5034')(function(flight, meta) { ... });

Is this a typo? Shouldn't it be:

db.get('flights', 'KLM-5034', function(flight, meta) { ... });


No, db.get() returns an anonymous function that takes a callback. The advantage to this type of api vs the one you mentioned, is db.get() can get more or fewer arguments, and callback is always last.

db.get() is a bad example, I'm not sure why you'd want to pass anything other than bucket/key to get an object. In this exact case, I imagine it's just for consistency with the rest of the API.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: