Wiki Article

Wide-column store

Nguồn dữ liệu từ Wikipedia, hiển thị bởi DefZone.Net

A wide-column store (or extensible record store) is a type of NoSQL database.[1] It uses tables, rows, and columns, but unlike a relational database, the names and format of the columns can vary from row to row in the same table. A wide-column store can be interpreted as a two-dimensional key–value store.[1] Google's Bigtable is one of the prototypical examples of a wide-column store.[2]

Definition

[edit]

The name column-store historicaly referred to databases like C-Store, which was a column-oriented relational database. It eventually came to refer to Bigtable, Apache Cassandra, and similar systems, which also store groups of columns ("column families") together, but ditch the relational model.[3]

A wide-column store is a 2-level structure where each value is identified by 2 keys: the first key acts as a row identifier and the second acts as a column identifier. Columns are grouped together into column-families, which are physically stored together on disk.[4][3] The top-level structure of a wide-column store is called a keyspace, and column families are contained within this structure.[4] A wide-column database may also have supercolumns, which contain a map to other columns, this creating a nest column.[3][4]

The column families of a row may not necessarily be stored together on disk, but the columns within a column family are stored together.[4] A row is made up of a set of keys and values, which may span several column families, a column family is often likened to a table in a relational database.[4][3]

Versus document databases

[edit]

Compared to a document databases, wide-column databases divide each record into column families that the database recognizes as separate units. This additional structure allows the database to organize into a two-dimensional structure, whereas document databases generally treat the entire document as the unit of storage and optimization despite allowing queries and partial retrievals of individual fields.[3]

Versus relational databases

[edit]

Besides being denormalized, a wide-column database's structure is not as fixed as relational database, allowing dynamically adding columns, as well as allowing rows to have varying columns.[4]

Notable examples

[edit]

Notable wide-column stores [5] include:

References

[edit]
  1. ^ a b Wide Column Stores Archived 2018-11-30 at the Wayback Machine. DB-Engines Encyclopedia.
  2. ^ Chang, et al. (2006). Bigtable: A Distributed Storage System for Structured Data.
  3. ^ a b c d e Sadalage, Pramod J.; Fowler, Martin (8 August 2012). NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence. Addison-Wesley. pp. 20–24. ISBN 978-0-13-303612-1. Retrieved 16 July 2026.
  4. ^ a b c d e f Kale, Vivek (25 November 2016). Big Data Computing: A Guide for Business and Technology Managers. CRC Press. pp. 256–261. ISBN 978-1-4987-1534-8. Retrieved 16 July 2026.
  5. ^ DB-Engines Ranking of Wide Column Stores Archived 2024-10-07 at the Wayback Machine.