4 ms·
Interestingly, the data storage seems similar to Rich Hickey's Datomic: "data is versioned, and each version is automatically timestamped with its commit time;
by lsb 14y ago
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."
- tdg 14y agoThat's exactly like BigTable[1]. It makes sense that they built on top of that. [1] http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/en/us/archive/bigtable-osdi06.pdf http://static.googleusercontent.com/external_content/untrust...
- akkartik 14y agoBut you can mutate bigtable cells. Datomic seems dramatically different in that respect.
- Evbn 14y agoCan you? Or do some apps just always ask for the latest timestamped version when they read?
- akkartik 14y agoYou 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.
- nnythm 14y agoMVCC has been around for at least thirty years, but it's interesting that we have seen more databases with this feature recently.
- linuxhansl 14y agoAlmost 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...
- sedachv 14y agoTimestamp versioning is one of the oldest (1978) ideas in distributed systems: http://patricklogan.blogspot.ca/2007/09/naming-and-synchronization-in.html http://patricklogan.blogspot.ca/2007/09/naming-and-synchroni...