Skip to content

NoSQL

A NoSQL system propose a different architecture than the one based on tables, found in rdbms

It is used to propose solution to manage issues related to the big data and real-time web applications.

Main characteristics

  • Open-source
  • Design to work on cluster of machines.
  • Don’t rely on relational model, schema or structure
  • Not-Only SQL. Supports SQL-like languages, but usually relies on other ones.
  • Follow the BASE properties
  • Horizontal scalability (scale out)

Aggregate

An aggregate collection of related objects are treated as an unit

  • Suitable for clusters
  • Atomicity guaranteed
json
// User and products are related,
// the result of the query is merged
{
  "user": {
    "name": "Alice",
    "products": [
      {
        "id": 1,
        "name": "Laptop"
      },
      {
        "id": 2,
        "name": "Smartphone"
      }     
    ]
  }
}