5 ms·
Sorry if this should be obvious but what is/are the killer feature/s of RethinkDB, what differentiates it from something like Redis or even CockroachDB?
by hd4 10y ago
Sorry if this should be obvious but what is/are the killer feature/s of RethinkDB, what differentiates it from something like Redis or even CockroachDB?
- mglukhovsky 10y agoThis might be a useful read: https://rethinkdb.com/faq/ https://rethinkdb.com/faq/ It explains RethinkDB's ideal use cases, explains how to compare it to other databases, and details some of the differentiating features.
- hmottestad 10y agoRethinkDB has passed jepsen testing. *Fixed typo
- mglukhovsky 10y agoI think you might mean the Jepsen tests: https://aphyr.com/posts/329-jepsen-rethinkdb-2-1-5 https://aphyr.com/posts/329-jepsen-rethinkdb-2-1-5
- deleted 10y ago[deleted]
- jwr 10y agoOnly RethinkDB gets you a) working changefeeds, where you can receive real-time changefeed updates to your queries, b) a well-implemented and Jepsen-proven distributed database. As far as I know, there is no other solution which gets both things right. I use it in PartsBox (https://partsbox.io/ https://partsbox.io/), a solution for keeping track of electronic components. I am surprised more people aren't interested in changefeeds — the way I see it, it's the only way to implement multi-user webapps which update in real-time (as in: a change is made in one session and all other open sessions get the update immediately).
- pmalynin 10y agoWell a) is provided by Mongo and is literally the reason why Meteor can do exactly what you described: multi-user webapps which update in real-time.
- hmottestad 10y agoI couldn't find any documentation on change feeds for Mongo after a quick google search. Could you post a link please?
- koolba 10y agoIt's call the "oplog": https://docs.mongodb.com/manual/core/replica-set-oplog/ https://docs.mongodb.com/manual/core/replica-set-oplog/
- swsieber 10y agoWhile the oplog does provide some semblance of RethinkDB's changefeed, it's not nearly as powerful. With Rethink, you say you want a query, and rethink will let you know about changes to that query. Mongo just says "hey, here are operations that were done", and leaves the reconstruction to you". So I guess Mongo+Meteor match up with RethinkDB... sort of.
- mglukhovsky 10y agoIt's also worth noting that changefeeds are highly scalable: you can run tens of thousands of them on a single node, and scale them out linearly from there (even as they're scoped to specific queries.) Obviously the performance characteristics will be impacted by the volume of changes that arrive to the database, but the architecture to support this is highly parallelized (all the way down to cores on the CPU.)
- deleted 10y ago[deleted]
- 10y ago
- tracker1 10y agoRethinkDB is just a great document-centric database. It has guarantees similar to SQL, including server-side joins, while having a great replication/redundancy pattern (similar to C). It's probably best in a use case where you are planning on 3-15 servers for a cluster. If you need more than that C may be better. I like to think of it as MongoDB done right. Above and beyond better consistency models and a broader, more well thought out API, they have an admin interface that is second to none (well SQL Management Studio might be slightly better). It's definitely better than any other "NoSQL" database. A couple years ago, I had been considering it for a project, at the time it was missing a required feature for the project (geolocation indexes), so I wasn't able to use it then... but I followed the development of the feature, and prerequisites for that and the automatic master failover and the engineering discipline and planning was far better than pretty much any project I'd been exposed to ... The team(s) and their energies were not wasted, and I really appreciate what they have done. I was sad to see the company shutter, but very happy to see the project under LF, and hope that it really takes off from here. It would be a pretty natural fit as an RDS service under Amazon and there are a few hosted options. Horizon also looks interesting compared to firebase. This is another feature over competitors is that streaming updates is in the box, and not bolted on to oplog processing like competitors.