Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Interestingly, the data storage seems similar to Rich Hickey's Datomic: "data is versioned, and each version is automatically timestamped with its commit time; old versions of data are subject to configurable garbage-collection policies; and applications can read data at old timestamps."


That's exactly like BigTable[1]. It makes sense that they built on top of that.

[1] http://static.googleusercontent.com/external_content/untrust...


But you can mutate bigtable cells. Datomic seems dramatically different in that respect.


Can you? Or do some apps just always ask for the latest timestamped version when they read?


You could but it's not enforced. In practice, teams at google seem to use the time axis in myriad ways, and seldom like datomic.

Also, always reading the most recent timestamp doesn't use time like datomic does. You aren't querying by time and so on.


Timestamp versioning is one of the oldest (1978) ideas in distributed systems: http://patricklogan.blogspot.ca/2007/09/naming-and-synchroni...


MVCC has been around for at least thirty years, but it's interesting that we have seen more databases with this feature recently.


Almost all databases use it in form or the other.

PostgreSQL uses it, Oracle uses it, MySQL (innodb) uses it, Apache HBase uses it, the list goes on and on...




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

Search: