Getting Started with CockroachDB by Kishen Das Kondabagilu Rajanna
Author:Kishen Das Kondabagilu Rajanna [Rajanna, Kishen Das Kondabagilu]
Language: eng
Format: epub
Tags: high availability, database, database management, database administration, cloud native database
Publisher: Packt Publishing
Published: 2022-03-18T00:00:00+00:00
ACID from CockroachDBâs perspective
In this section, we will go over how each of the ACID properties is implemented in CockroachDB and what guarantees they provides. Like in the previous section, we will start with atomicity.
Atomicity
As we learned in the first section, atomicity ensures that all the statements in a given transaction are executed as a single unit â that is, either all of them succeed or all of them fail. This condition should be guaranteed irrespective of machine, network, and memory failures. This is essential to make sure multiple queries donât run into each other.
CockroachDB allows you to have ACID transactions that can span the entire cluster, touching multiple nodes and geographical locations. CockroachDB supports this using an atomic protocol called parallel commits.
In the previous chapter, we learned about transaction records and write intent. A transaction record keeps track of the current state of the transaction and is maintained in the range where the first write occurs. Whenever we are changing a value, they are not directly written to the storage layer. Instead, a value is written to an intermediate state known as write intent. Write intent acts an Multiversion concurrency control (MVCC) record, with a link to the transaction record. Write intent acts as a replicated lock, which houses a replicated provisional value.
Write intent has been shown in the following figure with a sample transaction with two writes:
Figure 3.3 â Transaction timeline without parallel commit Any transaction that comes across a write intent should also go through corresponding transaction records and, based on its state, decide how to treat the write intent. A commit flips the transaction record state to committed. Once the transaction is committed, write intents are cleaned up asynchronously.
Now, letâs take a look at how traditional atomic transactions worked in CockroachDB without parallel commits and later with parallel commits.
Download
Getting Started with CockroachDB by Kishen Das Kondabagilu Rajanna.epub
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.
Distributed Machine Learning with Python by Guanhua Wang(3388)
Getting Started with CockroachDB by Kishen Das Kondabagilu Rajanna(2556)
Exploratory Data Analysis with Python Cookbook by Ayodele Oluleye(1398)
R Web Scraping Quick Start Guide by Olgun Aydin(1065)
Getting Started With CockroachDB: A Guide to Using a Modern, Cloud-Native, and Distributed SQL Database for Your Data-Intensive Apps by Kishen Das Kondabagilu. Rajanna(1022)
PostgreSQL 13 Cookbook: Over 120 recipes to build high-performance and fault-tolerant PostgreSQL database solutions by Vallarapu Naga Avinash Kumar(992)
Mastering PostgreSQL 15 - Fifth Edition by Hans-Jürgen Schönig(664)
Apache Hadoop 3 Quick Start Guide by Hrishikesh Karambelkar(428)
Pandas for Everyone: Python Data Analysis, 2nd Edition by Daniel Y. Chen(422)
Learn SQL with MySQL: Retrieve and Manipulate Data Using SQL Commands with Ease by Ashwin Pajankar(373)
SQL Query Design Patterns and Best Practices by Steve Hughes & Dennis Neer & Dr. Ram Babu Singh & Shabbir H. Mala & Leslie Andrews & Chi Zhang(366)
Deploy Node.js on GCP: A comprehensive guide to deploying Node.js on Google Cloud Platform by Jonathan Lin(359)
Configuring Sales and Distribution in SAP ERP by Unknown(333)
Leveling Up with SQL by Mark Simon(306)
Learning Data Science by Sam Lau(301)
Intermediate Python by Oswald Campesato(300)
Data Engineering with AWS: A Comprehensive Guide to Building Robust Data Pipelines by Paul Brian(271)
Pandas Basics by Oswald Campesato(269)
The Definitive Guide to Data Integration by Pierre-Yves BONNEFOY Emeric CHAIZE Raphaël MANSUY Mehdi TAZI(263)
