#
Cloud Bigtable
This tutorial explains what is a Cloud Bigtable in GCP.
Cloud Bigtable is a sparsely populated table that can scale to billions of rows and thousands of columns, enabling you
to store terabytes or even petabytes of data. A single value in each row is indexed; this value is known as the row key
.
Bigtable is ideal for storing large amounts of single-keyed data with low latency.
Things to retain:
A Bigtable is managed by an
instance
. A Bigtable instance is a container for data.The Instances have one or more clusters (we cannot have 2 clusters in the same zone).
Each cluster has at least 1 node.
A Table belongs to an instance and not to the cluster or node.
Storage Type dictates where the data is stored i.e. SSD or HDD. Choice of SSD or HDD storage for the instance is permanent.
Clusters handle the requests sent to a single Bigtable instance.
Each cluster belongs to a single Bigtable instance, and an instance can have up to 4 clusters.
Bigtable instances with only 1 cluster do not use replication.
If multiple clusters within an instance, Bigtable automatically starts replicating the data by keeping separate copies of the data in each of the clusters’ zones and synchronizing updates between the copies.
Each cluster in an instance has 1 or more nodes, which are the compute resources that Bigtable uses to manage the data.
Each node in the cluster handles a subset of the requests to the cluster.
Bigtable separates the Compute from the Storage. Data is never stored in nodes themselves.
Behind the scenes, Bigtable splits all the data in a table into separate
tablets
. Tablets are stored on disk, separate from the nodes but in the same zone as the nodes. A tablet is associated with a single node.A Bigtable cluster can be scaled by adding nodes which would increase
- the number of simultaneous requests that the cluster can handle
- the maximum throughput of the cluster.