Live data from Hacker News

Riak 1.0

basho.com

31–40 of 40 posts

Re: Riak 1.0

#31

I am increasingly interested in Riak, in part because a very vocal minority on HN seems to think it is the One True NoSQL solution. However, I still don't quite get it. What is Riak? It seems to be some sort of Dynamo implementation (like the ironically ill fated Cassandra), but apparently it has a workflow engine? What do people use it for? What is it best at? Right now we're using PostgreSQL, Redis, and S3. Postgre…

Ultimately it is a eventually consistent key-value store. They have map-reduce and a new meta-data thing that lets you query documents, but you really only want to use it if your data maps well to key/value (and lots of data does!). The really cool things are that it is truly horizontal scale - a new node brings read+write+map-reduce power, and that it will help you sleep better with its dynamo-ism.

Re: Riak 1.0

#32
post #7

Earlier quoted context omitted.

I imagine it won't be as fast? The cool thing about Bitcask is that all of the keys are in memory - I imagine that would also be beneficial with secondary indexes now supported... LevelDB seems mostly well suited for data that becomes (in terms of key size and number of keys) bigger than your RAM...

Secondary indexes are currently only supported on levelDB.

Interesting - well, that would get me to choose leveldb then!

Re: Riak 1.0

#33
post #28

I haven't used Riak, but I did look into it for a project short while back. One problem I had was that the documentation on their website is heavily focused on what Riak is, vs how to use it. It's great that you can get such a fundamental understanding of Riak as-a-dynamo-implementation, and they do a great job writing that stuff, but its completely out of touch with what I expected/needed. Technically, what eventual…

The secondary index stuff is actually very new, so it's entirely possible that it didn't exist when you last looked at Riak.

More info here http://blog.basho.com/2011/09/14/Secondary-Indexes-in-Riak/

Re: Riak 1.0

#34
post #20

Earlier quoted context omitted.

Riak is Open Source. It contains a very complete platform. Riak Core is a dynamo style distributed system platform (not database specific), Riak Pipe is workflows, Riak KV is a KV database, Riak Search is full text search over that database. And there's lot of other stuff I'm not even mentioning (like bitcask, the logging stuff, etc.) When you go to the Riak project on github, what you find is actually sort of a skel…

> I figure if I get big enough where I want to be running out of multiple data centers, I'll be big enough to afford Riak ES I was thinking along those exact same lines, but a big unknown was pricing on their enterprise offering. That information is unavailable on the web, and despite my skepticism in contact-us-for-the-price situations, I filled out their online form, which is a request to be contacted by a represen…

Hey neon...work for Basho so would like to research why you were not contacted...any details are greatly appreciated

Re: Riak 1.0

#35
post #30

I am increasingly interested in Riak, in part because a very vocal minority on HN seems to think it is the One True NoSQL solution. However, I still don't quite get it. What is Riak? It seems to be some sort of Dynamo implementation (like the ironically ill fated Cassandra), but apparently it has a workflow engine? What do people use it for? What is it best at? Right now we're using PostgreSQL, Redis, and S3. Postgre…

If your values are very small Riak is probably a good replacement for S3. If your values are large then S3 is probably better than Riak.

I'm not so certain. A value written to riak has something on the order of 450bytes of overhead (as of version 0.14, not entirely certain of the exact overhead in 1.0). Basically riak will write your value to disk with a bunch of other data that it uses internally to do its thing. Writing a stream of integers, one integer per riak key, would be a bad idea (tm), imho.

Re: Riak 1.0

#36

I am increasingly interested in Riak, in part because a very vocal minority on HN seems to think it is the One True NoSQL solution. However, I still don't quite get it. What is Riak? It seems to be some sort of Dynamo implementation (like the ironically ill fated Cassandra), but apparently it has a workflow engine? What do people use it for? What is it best at? Right now we're using PostgreSQL, Redis, and S3. Postgre…

Why do you say that Cassandra is ill-fated?

Re: Riak 1.0

#37
post #20
post #9

A bit tangential to this particular announcement - but i've been musing about using Riak, though so far put off by their (seemingly) open-core, rather than open-source implementation. Are the paid, enterprise functions stuff you eventually need in most use cases? the lack of multi-site replication in particular is curious; would this mean I can replicate between nodes on the cluster, as long as they are in the same d…

Riak is Open Source. It contains a very complete platform. Riak Core is a dynamo style distributed system platform (not database specific), Riak Pipe is workflows, Riak KV is a KV database, Riak Search is full text search over that database. And there's lot of other stuff I'm not even mentioning (like bitcask, the logging stuff, etc.) When you go to the Riak project on github, what you find is actually sort of a skel…

I guess what he mean was this: "Open core (a.k.a. proprietary relicensing[1]) is a business model where an open source product is also made available commercially with non-open-source additions" [1]

I cant speak to Riak, but generally this model can create a conflict of interest between the "enterprise features" on the one hand and open source commitments on the other. For example if someone submits code to the opensource version that duplicates/overlaps an "enterprise feature"

1: http://en.wikipedia.org/wiki/Open_core

Re: Riak 1.0

#38

I am increasingly interested in Riak, in part because a very vocal minority on HN seems to think it is the One True NoSQL solution. However, I still don't quite get it. What is Riak? It seems to be some sort of Dynamo implementation (like the ironically ill fated Cassandra), but apparently it has a workflow engine? What do people use it for? What is it best at? Right now we're using PostgreSQL, Redis, and S3. Postgre…

Why do you say that Cassandra is ill-fated?

NoSQL seems to me to be a scene as much driven by hype as logic. (For better or worse, practitioners using and programming NoSQL systems tend to have little understanding of the 30+ years of relevant RDBMS academic literature, and 20+ years of distributed RDBMS academic literature.)

Given that, NoSQL adoption often appears driven by success stories. But Cassandra seems to have the opposite: numerous failure stories. Facebook, Digg, Reddit and a number of others have all tried Cassandra in production, and have either had serious complaints or moved off to either SQL or other solutions like HBase.

Of course, these failure stories are anecdotes, and numerous unrelated factors (like bad interactions between Cassandra and Amazon's EC2) could be at fault. But I'm not sure it matters.

Has anyone on HN had a really good experience with Cassandra? (This may be the wrong thread to ask for obvious reasons.)

Re: Riak 1.0

#39

Earlier quoted context omitted.

Why do you say that Cassandra is ill-fated?

NoSQL seems to me to be a scene as much driven by hype as logic. (For better or worse, practitioners using and programming NoSQL systems tend to have little understanding of the 30+ years of relevant RDBMS academic literature, and 20+ years of distributed RDBMS academic literature.) Given that, NoSQL adoption often appears driven by success stories. But Cassandra seems to have the opposite: numerous failure stories.…

Riak users have had quite the opposite results based on talks given at conferences and videos put online. Yammer, Voxer, Formspring, Bump are all riak customers and all have a video out there somewhere talking about how much the like riak. Yes riak and cassandra share a little bit of technology (being dynamo inspired), but most of cassandra woes seem to come from operational difficulties and not the technology theory. Riak has more of a focus on operational friendliness out of the box.

There are videos and talks out there from several customers listed on Basho's site, just take a look.

Re: Riak 1.0

#40
post #21
post #8

Earlier quoted context omitted.

I think it will be a welcome change for anyone who runs a decent sized Riak deployment. We are currently adding machines simply to increase available RAM in the cluster.

Why not bring a node down, and then replace it with a node that has more RAM? Are you exceeding the size of a node you can supply (in terms of RAM) for your cluster? I'd be very curious to know a bit about the character of your data, the size of your cluster, etc. (I've only run test clusters at this point, so hearing from someone doing production work would be informative.)

Replacement vs. addition is a situational trade-off, but ultimately the problem remains that you need to bring more RAM to the party.

My biggest RAM consumer stores historical data for a goods trading platform. Each trade is a unique key, with all the trade data being the value. Access speed is important, but not as critical as the other goodies I get from Riak (replication and automated rebalancing). Metadata is stored separately, but I hope to change that with Riak 1.0 secondary indexes.

Post reply on HN