Neptune's Data Model

Neptune is a sparse, distributed, persistent multidimensional sorted map(from Bigtable's data model).

neptune data model
  • Table: All datas are stored in logical data storage called "Table". Table is identified by table name and a table name must be unique in a neptune cluster.
  • Column: A table has multiple columns. A columns has same meaning RDBMS's column. Column must be defined when table is created or can be added with "add column" instrunction.
  • Row: A table consists of numerous rows. 
  • Row.Key: Each row has unique identifier, "rowkey".  Neptune automatically creates rowkey, while user explicitly specifies row key column in a relational database. Data is sorted by Row.Key. Row-Key is String type.
  • Cell: Cell is a intersection of row and column. Cell can have many key-value pairs(Cell.Key-Cell,Value).
  • Cell.Key: Datas in a cell identified by Cell.Key and sored by Cell.Key. Cell.Key is String type.
  • Cell.Value: A Cell.Value has multiple versions and sorted by timestamp in descending order. Each version stores byte array. 
row cell