I have some information that I don't understand:

Bigtable may be understood a sparse table. Most cells contain nullvalues - too sparse to store it as in relational database systems.Bigtable rather implements a multi-dimensional sparse map.

Is it a special property and what is the difference between a table and a sparse table?

1

Best Answer


Answer recommended by Google CloudCollective

A sparse table is one that does not need to store an entry in every (row, column) intersection, which may be referred to as a "cell"; instead, it only stores the ones that are explicitly written to.

For example, if you have a table with 500 rows and 30 columns, where every row only has an entry in one of the columns, instead of storing 500 × 30 = 15000 cells, most of which are the empty string or null, you only need to store 500 × 1 = 500 cells, which provides significant savings.

Since a Bigtable table may have billions, trillions, or more rows and hundreds or thousands of columns, this provides significant savings in storage.

See also other related sparse data structures:

  • Sparse matrix
  • Sparse array