Super column

A super column is a tuple (a pair) with a binary super column name and a value that maps it to many columns.[1] They consist of a key–value pairs, where the values are columns. Theoretically speaking, super columns are (sorted) associative array of columns.[2] Similar to a regular column family where a row is a sorted map of column names and column values, a row in a super column family is a sorted map of super column names that maps to column names and column values.

The super column consists of a (unique) super column name, and a number of columns.

A super column is part of a keyspace together with other super columns and column families, and columns.

Code example

Written in the JSON-like syntax, a super column definition can be like this:

{
  "databases": {
    "Cassandra": {
      "age": 20,
      "name": {
        "firstName": "Cassandra",
        "lastName": "apache"
      }
    },
    "HBase": {
      "age": 20,
      "address": {
        "city": "Seoul",
        "postcode": "1234"
      }
    }
  }
}

Where:

"databases" are keyspace;

"Cassandra" and "HBase" are rowKeys;

"name" and "address" are super column names;

"firstName", "city", "age", etc. are column names.

See also

References

  1. Sarkissian, Arin (September 1, 2009). "WTF is a SuperColumn". arin.me. Retrieved October 28, 2017. A SuperColumn is a tuple w/ a binary name & a value which is a map containing an unbounded number of Columns - keyed by the Column's name.
  2. Ellis, Jonathan (August 15, 2016). "Data Model". Apache Cassandra Wiki. Retrieved October 28, 2017.


This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.