Skip to content

Comment on RethinkDB (YC S09) Raises $1.2 Million For Its Database For Solid-State Drivesparent

Comments

Lock-free != data corruption. You just use atomic builtins[1] as primitives, instead of mutexes and semaphores.

[1] http://gcc.gnu.org/onlinedocs/gcc-4.1.2/gcc/Atomic-Builtins....

Are we talking about low-level or high-level locking? I am talking about high-level locking semantics, like transactions.

At least as they've announced it so far, RethinkDB is a back-end for MySQL; so you should still have all of MySQL's transactional functionality.

(I'm sure Slava will correct me if I'm wrong here...)

I read over their page more carefully, and I think I see what they mean by "no locks". It means that the database stays internally consistent regardless of read or write order. When you start a transaction, you see the data in the log before you started, but you don't see any changes after you start. Fine.

You can get more isolation that this, and you need to to really keep your data consistent, but all DBs except Berkeley seem to have this off by default. So I am not too bothered by this, but I would be interested in seeing how well Rethink handles concurrent OLTP applications that actually care about data integrity. Caring about data integrity is slow, and Rethink might not speed this up all that much. Or it might :)

Oracle doesn't even support repeatable read (which seems weird to me). Read Commited should be doable in their system.

Oracle is marketing, not software :)

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.