Diving into Databases…

Databases are an organized collection of data stored and accessed electronically from a computer system and there are many types of databases such as Cloud database, Relational database, Object-oriented database, NoSQL database and more! Depending on the type, structure, data model, data store, and intended use-case of your data, different systems are likely to be better suited to your needs. In this blog we will focus on two major categories of Databases SQL and NoSQL.

What is even SQL? It stands for Structured Query Language and is the standard language for Relational Databases (RDBMS). A relational database defines relationships in the form of tables. SQL programming can be effectively used to insert, search, update, delete database records. SQL uses syntax and queries to analyze and get the data. Some examples of Relational databases are MySQL Database, Postgres, Oracle, Ms SQL Server, Sybase, etc.

NoSQL is a non-relational database or distributed database. NoSQL database is used for distributed data stores with very LARGE data storage needs (best for big data and real time web applications). A NoSQL database system encompasses a wide range of database technologies that can store structured, semi-structured, unstructured and polymorphic data. NoSQL databases can be document based, key-value pairs, graph databases and some examples are MongoDB, Redis, Neo4j, Cassandra, and Hbase.

Let’s get into the major differences between the two…

  • Query Language: NoSQL has no declarative query language while SQL is a structured query language.

One other difference is the model that both databases use. SQL uses the ACID which is a standard for RDBMS and BASE is used in many noSQL systems. An ACID model provides a consistent system while BASE provides high availability.

ACID stands for:

  • Atomicity — The database transaction must completely succeed or completely fail. Partial success is not allowed.

BASE stands for:

  • Basically Available — The system is guaranteed to be available for querying by all users. (No isolation here)

There are many strengths to each database type and depending on the company you work for (as well as the data you are working with) one type may suite your programming needs over the other!

I hope after reading this you have learned a little more about databases than this guy :)

Thanks for reading and connect with me via LinkedIn!

aspiring software engineer and bodycast artist. red wine addict. obsessed with vintage cars and jewelry.