28 lines
1.9 KiB
Markdown
28 lines
1.9 KiB
Markdown
![]() |
+++
|
||
|
noatcards = True
|
||
|
isdraft = False
|
||
![]() |
weight = 123
|
||
![]() |
+++
|
||
|
|
||
|
# Wide column store
|
||
|
|
||
|
## introduction
|
||
|
|
||
|

|
||
|
|
||
|
[Source: SQL & NoSQL, a brief history](http://blog.grio.com/2015/11/sql-nosql-a-brief-history.html)
|
||
|
|
||
|
> Abstraction: nested map `ColumnFamily<RowKey, Columns<ColKey, Value, Timestamp>>`
|
||
|
|
||
|
A wide column store's basic unit of data is a column (name/value pair) . A column can be grouped in column families (analogous to a SQL table) . Super column families further group column families. You can access each column independently with a row key, and columns with the same row key form a row. Each value contains a timestamp for versioning and for conflict resolution.
|
||
|
|
||
|
Google introduced [Bigtable](http://www.read.seas.harvard.edu/~kohler/class/cs239-w08/chang06bigtable.pdf) as the first wide column store, which influenced the open-source [HBase](https://www.mapr.com/blog/in-depth-look-hbase-architecture) often-used in the Hadoop ecosystem, and [Cassandra](http://docs.datastax.com/en/archived/cassandra/2.0/cassandra/architecture/architectureIntro_c.html) from Facebook. Stores such as BigTable, HBase, and Cassandra maintain keys in lexicographic order, allowing efficient retrieval of selective key ranges.
|
||
|
|
||
|
Wide column stores offer high availability and high scalability. They are often used for very large data sets.
|
||
|
|
||
|
## Source(s) and further reading: wide column store
|
||
|
|
||
|
- [SQL & NoSQL, a brief history](http://blog.grio.com/2015/11/sql-nosql-a-brief-history.html)
|
||
|
- [Bigtable architecture](http://www.read.seas.harvard.edu/~kohler/class/cs239-w08/chang06bigtable.pdf)
|
||
|
- [HBase architecture](https://www.mapr.com/blog/in-depth-look-hbase-architecture)
|
||
|
- [Cassandra architecture](http://docs.datastax.com/en/archived/cassandra/2.0/cassandra/architecture/architectureIntro_c.html)
|