Archi's Academy

BLACK FRIDAY

85% Discount for all November

clock-icon
00days
00hours
00minutes
00seconds
Get in touch

Software Development

  • NoSQL is the gen*eral name given to horizontally scalable systems that emerged as an alternative to relational database management systems (RDBMS), originally to store the increasing data of the internet and to meet the needs of high-traffic systems. No SQL systems are called "No SQL" because the SQL language used in RDBMS is not used.

    NoSQL systems are not dependent on fixed table definitions, while RDBMSs contain data in tables and defined columns row by row. In other words, new columns can be added later without any special action, and there may be column differences between records. For example, while there are columns a and b in the 1st row, there may be different columns in the 2nd row. This flexible structure provides us with ease of denormalization. If you don’t know what is denormalization don’t worry, read the note below.

Normalization is the process of dividing larger tables into smaller ones by reducing redundant data, while denormalization is the process of adding redundant data to optimize performance.

We can collect the NoSQL types in 4 groups:

1.Key-Value

A key-value database (sometimes called a key-value store) uses a simple key-value method to store the data.

Simple string (the key) => Large data field (Value)

As the name suggests, this type of NoSQL database implements a hash table to store unique keys along with the pointers to the corresponding data values. Value can be stored as an integer, a string, JSON or an array.

KEY VALUE

john 991745841

robin 994796632

Key-Value Database Use Cases:

a.Session information for a web application

b.Use profiles and preferences

c.Shopping card data for online stores

Examples :

riak.pngredis.png

2.Document

Data stored as documents (JSON, XML, BSON..). Documents are ordered sets of key-value pairs and hierarchical tree data structures. Here is an example:

{
 “bookID”: “978548512222”
  “title”: “The Linux Command Line”
 “author”: “William E. Shoots”
}

Document Database Use Cases:

a.Event logging

b.Blogs and other web applications

c.Operational and meta data for web/mobile applications

Examples:

mongoDB.pngibm.png

3.Column-Family

Column-family databases are spawned from an architecture that Google created called BigTable. Column families are similar to tables in a relational database. Rows in the same column family are not required to contain the same columns. Columns can be added to any or all rows in a column family.

Column-Family Use Cases:

a.Event logging

b.Blogs

c.Counters

d.Expiring Usage(TTL per column)

Examples:

cassandra.pnghibase.png

4.Graph

Data stored as entities and relationships. Entities are called nodes and relationships are the edges between nodes. You can use this database if your data is highly connected. It is relationship oriented and not aggregate oriented like the other NoSQL variations.

Graph Database Use Cases:

a.Connected data (e.g. social networking)

b.Routing and special applications

c.Recommendation engines

Examples:

ig.pngflockdb.png

archis-trainee

Seher Saylık

Thursday, Jun 24, 2021