News for hackers. Stuff that matters.
Re:Spanner: Google's Globally-Distributed Database by Locke1689 on Saturday September 15, 2012 @06:16PM (#4527481)
No, I think it's critical. I worked on one of the first services to ever use Spanner when I was an intern. Lock-free read transactions is a game changer. Short answer -- if your database system can't do lock-free reads, your database is broken. That one feature allows one to do some incredible performance optimizations.
Re:Spanner: Google's Globally-Distributed Database by zwischenzug on Sunday September 16, 2012 @08:02AM (#4529005)
What _exactly_ is a lock-free read transaction? Is it different to reading in a MVCC system?
Re:Spanner: Google's Globally-Distributed Database by linuxhansl on Saturday September 15, 2012 @07:42PM (#4527660)
>if your database system can't do lock-free reads, your database is broken

Yep.

Re:Spanner: Google's Globally-Distributed Database by rdtsc on Saturday September 15, 2012 @10:44PM (#4528066)
I know CouchDB doesn't do read locking. What are other ones out there?
Re:Spanner: Google's Globally-Distributed Database by coolestuk on Sunday September 16, 2012 @04:42AM (#4528688)
Not doing read locking is not a game-changer.

Firebird doesn't do read locking. Neither does Lotus Notes. Both have been around about 20 years.

Re:Spanner: Google's Globally-Distributed Database by Locke1689 on Sunday September 16, 2012 @03:48PM (#4530126)
Not doing read locking alone. Combine it with a planet-scale data storage system...
Re:Spanner: Google's Globally-Distributed Database by pdog on Sunday September 16, 2012 @03:06AM (#4528551)
Postgres and Oracle?
Re:Spanner: Google's Globally-Distributed Database by mace on Sunday September 16, 2012 @03:57AM (#4528617)
PostgreSQL uses MVCC to ensure ACID compliance without read locks. Uncommitted concurrent transactions are isolated from each other.
Re:Spanner: Google's Globally-Distributed Database by jackowayed on Sunday September 16, 2012 @02:47AM (#4528513)
Datomic.
Re:Spanner: Google's Globally-Distributed Database by eluos on Saturday September 15, 2012 @11:14PM (#4528124)
"non-blocking reads in the past"

Sounds like google's finally invented time travel.

Re:Spanner: Google's Globally-Distributed Database by vital_sol on Sunday September 16, 2012 @03:04AM (#4528549)
Actually, this is exactly how transactions in Oracle work. The difference is - one db server (Oracle) vs. distributed system (Google)
Re:Spanner: Google's Globally-Distributed Database by pdog on Sunday September 16, 2012 @03:09AM (#4528555)
Oracle doesn't have to be one DB server. Check out Oracle RAC for instance.
Re:Spanner: Google's Globally-Distributed Database by bgentry on Saturday September 15, 2012 @07:59PM (#4527698)
I would also be interested in a longer, elaborated answer.
Re:Spanner: Google's Globally-Distributed Database by Locke1689 on Saturday September 15, 2012 @08:04PM (#4527708)
The lessons are pretty much the same as the ones functional programming have been trying to teach us for years: immutability and caching.

Beyond that I would rather not elaborate for reasons of confidentiality.

Re:Spanner: Google's Globally-Distributed Database by eternalban on Saturday September 15, 2012 @09:47PM (#4527973)
Value addressing. MVCC.
Re:Spanner: Google's Globally-Distributed Database by sedachv on Saturday September 15, 2012 @10:07PM (#4528008)
What is "value addressing"? That's the first time I've seen that term and google doesn't bring anything relevant up.
Re:Spanner: Google's Globally-Distributed Database by arnarbi on Saturday September 15, 2012 @10:39PM (#4528061)
This is a wild guess, but I guess it might be a synonym for content addressing

http://en.wikipedia.org/wiki/Content-addressable_storage#Con...

Re:Spanner: Google's Globally-Distributed Database by eternalban on Sunday September 16, 2012 @09:41AM (#4529126)
+1. Neologism of an autodidact. IMHO it is more correct, regardless.
Re:Spanner: Google's Globally-Distributed Database by theotherone on Saturday September 15, 2012 @07:26PM (#4527629)
Elaborate?