"The hows and whys of a distributed SQL database" by Alex Robinson
Vložit
- čas přidán 21. 07. 2024
- Until recently, developers have had to deal with some serious tradeoffs when picking a database technology. One could pick a SQL database and deal with their eventual scaling problems or pick a NoSQL database and have to work around their lack of transactions, strong consistency, and/or secondary indexes. However, a new class of distributed database engines is emerging that combines the transactional consistency guarantees of traditional relational databases with the horizontal scalability and high availability of popular NoSQL databases.
In this talk, we'll examine the history of databases to see how we got here, covering the motivations for this new class of systems and why developers should care about them. We'll then take a deep dive into the key design choices behind one open source distributed SQL database, CockroachDB, that enable it to offer such properties and compare them to past SQL and NoSQL designs. We will look specifically at how to achieve the easy deployment and management of a scalable, self-healing, strongly-consistent database with techniques such as dynamic sharding and rebalancing, consensus protocols, lock-free transactions, and more.
Alex Robinson
COCKROACH LABS
Alex Robinson is a member of the technical staff at Cockroach Labs, the startup leading the development of the fully open source (Apache-licensed) CockroachDB project. Previously, he was a senior software engineer at Google, where he spent his last two years as a core developer of both Kubernetes and Container Engine. Prior to that, he worked on Google's cloud logging and monitoring infrastructure and improved the efficiency of privacy checks at Facebook. - Věda a technologie
This is an outstanding talk. I appreciate the historical context/comparison of the architectural approaches.
Great talk; I appreciated the technical details, while remaining high level.
I suggest using "database systems" when talking about systems, and "databases" when talking about an instance.
I also think it's safe to describe NoSQL systems as equivalent to the storage layer of SQL systems. NoSQL = distributed storage system
SQL = storage system plus query processor
NewSQL = distributed storage system plus query processor
Must watch for anyone trying understand distributed databases. Great talk and one of the best.
Thanks for giving an comprehensive information about db from 1960s to now.
Very interesting,
thanks Alex for a great talk & thanks for sharing strangeloop.
very nice presentation with lots of detailed information and the rational of the distributed datastores
I agree with previous comments, this talk was very concise and informative.
great talk! it includes all the pros and cons of all types of databases.
Great talk! Thanks for sharing.
awesome talk
I hate cockroaches 😂. More seriously this was a pretty insightful talk, I have worked across many layers of the stack data, compute, frontend, orchestration etc. But databases are like the foundations of a building. Always super interesting.
Can DB use both: MVCC and locks. MVCC for reading and locks for writing?
Yes. Spanner uses MVCC for read-only transactions and 2PL for write.