Live data from Hacker News

Riak 1.0

basho.com

21–30 of 40 posts

Re: Riak 1.0

#21
post #8
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...

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.)

Re: Riak 1.0

#22
Is anyone here paying for the Enterprise level Riak? I'd love to hear how they charge and whether you think it's worth it. Currently we're looking towards the Denali release later this year but Riak is looking more interesting by the day.

Re: Riak 1.0

#24

"Riak 1.0 will be available later this month." I can't stand pre-announcements like this.

I think when you've got your release candidate, you're basically done, barring any unexpected surprises. Given stable Riak has been during the beta period, I don't think they're really jumping the gun much.

Re: Riak 1.0

#25

LevelDB support! Would love to see how it compares to Bitcask in terms of speed.

Bitcask can guarantee one disk seek, whereas LevelDB will do one disk seek per level, so at least from that perspective, it can't be better. Level also has to look down the entire tree if a key is missing. This means inserts end up being more expensive than reads or updates (which are all just a hash lookup in Bitcask).

LevelDB is there as the replacement for those who are currently using Innostore as their backend and not for those who have a dataset that fits bitcask.

Re: Riak 1.0

#26

LevelDB support! Would love to see how it compares to Bitcask in terms of speed.

Bitcask can guarantee one disk seek, whereas LevelDB will do one disk seek per level, so at least from that perspective, it can't be better. Level also has to look down the entire tree if a key is missing. This means inserts end up being more expensive than reads or updates (which are all just a hash lookup in Bitcask).

"Bitcask can guarantee one disk seek, whereas LevelDB will do one disk seek per level, so at least from that perspective, it can't be better."

Yep, this is a standard tradeoff. When you want your data to be iterable, you have to take the hit. In practice (I oversee a large cassandra cluster), this hit happens about ~1% of the time, which is either a lot, or a little, depending on your constraints.

"Level also has to look down the entire tree if a key is missing."

This is why Cassandra has a bloom filter on top of a very similar data store.

Re: Riak 1.0

#27
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 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 representative.

I haven't heard from them, but they did put me on a mailing list—I got an email about this 'milestone release' today! Not quite what I wanted to know, though :)

Nirvana, or someone using their Enterprise offering, perhaps you could fill us all in on the price?

Re: Riak 1.0

#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 eventually put me off, is that I couldn't figure out how to maintain a clean secondary index. If you have a: SiteId, UserId, Data, and you want data to be accessible by SiteId or SiteId+UserId, I couldn't figure out a nice atomic way to maintain the secondary index. This is pretty basic stuff. I'm glad to see 1.0 will support native secondary indexes, but I think my inability to figure it out shows that their documentation is poor (or it could be that I suck).

Re: Riak 1.0

#29
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. PostgreSQL gives us ACID, Redis gives us fast in-memory access, and S3 gives us an infinite KV store. Is there some reason to use Riak? Would Riak just replace S3?

Re: Riak 1.0

#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.
Post reply on HN